Hi everybody,
Sorry for mi English, I'm a french student and I'm not very good for write in English ... :smileysilly:
I'm trying to Cross compile Android on MCIMX6DL-SDP and I don't want to flood my computer with all branches of Android repository.
So, my question is : Is it necessary to make a repo sync command for acquire all branches of Android git ?
In the User guide documentation there are two parts which are discussing about this mistake. In effect, in the lollipop 5.1.1 doc package, The part 3.1 in Android_User's_guide.pdf explain which is possible to take Android sources in the first paragraph (page 2) and it's possible to make a Freescal git to take source of Android in the second (page 3). This is a little bit trouble to understand this part for me ... I have to execute this 2 parts or can I choose just one of this 2 solutions ?
And if this 2 parts are nedded, are there an alternative to make a repo sync for just take Android lollipop branch ?
Thank you so much !
解決済! 解決策の投稿を見る。
Yes you can do that although creating your own kernel might require to build some modules that must be located in system.img.
Also, the kernel is concatenated with the ramdisk into a boot.img, you can have a look at the following link to learn how to put those pieces apart and then back together:
http://forum.xda-developers.com/showthread.php?t=915808
Please mark this thread marked as resolved since the building issue has been addressed.
Regards,
Gary
Hi,
Well although you're sure to be in the right folder, this isn't the correct one ;-) You need to be in the folder where you've issued the repo init and repo sync commands (~/myandroid) where kernel_imx is the kernel folder only (~/myandroid/kernel_imx).
As for the imx_L5.1.1_2.1.0-ga folder name it is a typo indeed.
Regards,
Gary
Thanks Gary !
So, if I understand correctly, the repo/sync commands are use to take all sources of Andoird. The Freescale git part is just use to take the kernel compatible with Android and finally applying patches part is use to configure the kernel for the good board ?
None of these parts is optional, all are necessary ?
Hi,
Not exactly:
- repo init/sync: get AOSP standard release
- git clone kernel_imx: clones the Android-specific kernel
- c_patch: patches the AOSP source code to add i.MX support
Regards,
Gary
Ok perfect !
Thank you very much because it is not very clear in docs.
So, if I just want to create my own kernel, I can build it with kernel_imx and use system.img image to have the Android files system ?
Yes you can do that although creating your own kernel might require to build some modules that must be located in system.img.
Also, the kernel is concatenated with the ramdisk into a boot.img, you can have a look at the following link to learn how to put those pieces apart and then back together:
http://forum.xda-developers.com/showthread.php?t=915808
Please mark this thread marked as resolved since the building issue has been addressed.
Regards,
Gary
Hi Gay,
I'm sorry but I still have a problem :smileyconfused:.
When I want to execute the c_patch function to apply all Freescale patches on kernel (section 3.2 on Android_user's_guide.pdf in Android 5.1.1 doc package), I have this error message :
"Error ! can't locate top dir of repo tree."
So were is this "top dir of repo tree" ? Because I'm sure to be in the good folder (folder : kernel_imx created with the Freescale git) and I make the "source" command before.
I have a second question.
In 3.2 section in the same Android_user's_guide, Freescale say to use this folder to apply patches
android_L5.1.1_2.1.0-ga_core_source/code/L5.1.1_2.1.0-ga/imx_L5.1.1_2.1.0-ga
But I have not this folder, when I take the source package on NXP web site*, I just have this :
android_L5.1.1_2.1.0-ga_core_source/code/L5.1.1_2.1.0-ga/
* I took this NXP source package : https://www.nxp.com/webapp/sps/download/license.jsp?colCode=IMX6_L5.1_2.1.0_AND_SOURCE_BSP&appType=f...
Thanks a lot :smileygrin:
Hi Alexandre,
Yes if you look at the repo sync help you will see that one option exists to fetch only the current branch declared in the manifest.xml:
$ repo sync -c
Regards,
Gary
Hi Gary,
Thank you very much, I will try it today !
Regards.