[Q] Building CM from source problem (lunch not found) - Android Q&A, Help & Troubleshooting

I'm trying to port CM10 to my Pipo M8 RK3066 tablet.
I have followed alot of guides but I need some help: (I will edit the thread with all the problem I encounter).
Kubuntu 12.10 x64 running on VM
Here is what I did so far:
Android-SDK is installed in /opt/...
Code:
$ mkdir -p ~/bin
$ mkdir -p ~/android/system
$ curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
$ chmod a+x ~/bin/repo
export PATH=${PATH}:~/bin
$ cd ~/android/system/
$ repo init -u git://github.com/CyanogenMod/android.git -b jellybean
$ repo sync -j4
$ cd ~/android/system/vendor/cm
$ ./get-prebuilts
$ make -j4 otatools
+Extract boot.img from running device with dump_image
$ build/tools/device/mkvendor.sh pipo m8 /your/path/to/my/boot.img
lunch was not found, fixed with:
Code:
$ . build/envsetup.sh
New problem:
Code:
Construct recovery from boot
mkdir -p /home/mexus/android/system/out/target/product/m8/obj/PACKAGING/recovery_patch_intermediates/
target Jar: bouncycastle (/home/mexus/android/system/out/target/common/obj/JAVA_LIBRARIES/bouncycastle_intermediates/javalib.jar)
PATH=/home/mexus/android/system/out/host/linux-x86/bin:$PATH /home/mexus/android/system/out/host/linux-x86/bin/imgdiff /home/mexus/android/system/out/target/product/m8/boot.img /home/mexus/android/system/out/target/product/m8/recovery.img /home/mexus/android/system/out/target/product/m8/obj/PACKAGING/recovery_patch_intermediates/recovery_from_boot.p
target SharedLib: libutils (/home/mexus/android/system/out/target/product/m8/obj/SHARED_LIBRARIES/libutils_intermediates/LINKED/libutils.so)
[COLOR="Red"]Error: footer size 2130427508 != decompressed size 71179
failed to break apart source image[/COLOR]
make: *** [/home/mexus/android/system/out/target/product/m8/obj/PACKAGING/recovery_patch_intermediates/recovery_from_boot.p] Error 1
make: *** Waiting for unfinished jobs....
'/home/mexus/android/system/out/target/common/obj/JAVA_LIBRARIES/bouncycastle_intermediates/classes.dex' as 'classes.dex'...
[email protected]:~/android/system$

If it is asking you to install python then I would do so because python is one of the required packages for building Android. Make sure you use python version 2.6.x-2.7.x not python version 3 because it is not compatible with the current build system. Also can you post a log of the error message your getting?
Sent from my SCH-I535 using xda premium

shimp208 said:
If it is asking you to install python then I would do so because python is one of the required packages for building Android. Make sure you use python version 2.6.x-2.7.x not python version 3 because it is not compatible with the current build system. Also can you post a log of the error message your getting?
Sent from my SCH-I535 using xda premium
Click to expand...
Click to collapse
python is installed. I'm talking about python-lunch (it's nowhere mentioned in the guides)

mexusbg said:
python is installed. I'm talking about python-lunch (it's nowhere mentioned in the guides)
Click to expand...
Click to collapse
You should install it anyway.
Sent with my Sonic Screwdriver

Wolf Pup said:
You should install it anyway.
Sent with my Sonic Screwdriver
Click to expand...
Click to collapse
After python-lunch is installed:
Code:
mexu[email protected]:~/android/system$ build/tools/device/mkvendor.sh pipo m8 /home/mexus/boot.img
Arguments: pipo m8 /home/mexus/boot.img
Output will be in /home/mexus/android/system/device/pipo/m8
7908 blocks
Done!
Use the following command to set up your build environment:
lunch full_m8-eng
And use the follwowing command to build a recovery:
. build/tools/device/makerecoveries.sh full_m8-eng
[U][COLOR="Red"][email protected]:~/android/system$ lunch full_m8-eng
No such file: full_m8-eng[/COLOR][/U]
[email protected]:~/android/system$

lunch was not found, fixed with:
Code:
$ . build/envsetup.sh
New problem:
Code:
Construct recovery from boot
mkdir -p /home/mexus/android/system/out/target/product/m8/obj/PACKAGING/recovery_patch_intermediates/
target Jar: bouncycastle (/home/mexus/android/system/out/target/common/obj/JAVA_LIBRARIES/bouncycastle_intermediates/javalib.jar)
PATH=/home/mexus/android/system/out/host/linux-x86/bin:$PATH /home/mexus/android/system/out/host/linux-x86/bin/imgdiff /home/mexus/android/system/out/target/product/m8/boot.img /home/mexus/android/system/out/target/product/m8/recovery.img /home/mexus/android/system/out/target/product/m8/obj/PACKAGING/recovery_patch_intermediates/recovery_from_boot.p
target SharedLib: libutils (/home/mexus/android/system/out/target/product/m8/obj/SHARED_LIBRARIES/libutils_intermediates/LINKED/libutils.so)
[COLOR="Red"]Error: footer size 2130427508 != decompressed size 71179
failed to break apart source image[/COLOR]
make: *** [/home/mexus/android/system/out/target/product/m8/obj/PACKAGING/recovery_patch_intermediates/recovery_from_boot.p] Error 1
make: *** Waiting for unfinished jobs....
'/home/mexus/android/system/out/target/common/obj/JAVA_LIBRARIES/bouncycastle_intermediates/classes.dex' as 'classes.dex'...
[email protected]:~/android/system$

mexusbg said:
lunch was not found, fixed with:
Code:
$ . build/envsetup.sh
New problem:
Code:
Construct recovery from boot
mkdir -p /home/mexus/android/system/out/target/product/m8/obj/PACKAGING/recovery_patch_intermediates/
target Jar: bouncycastle (/home/mexus/android/system/out/target/common/obj/JAVA_LIBRARIES/bouncycastle_intermediates/javalib.jar)
PATH=/home/mexus/android/system/out/host/linux-x86/bin:$PATH /home/mexus/android/system/out/host/linux-x86/bin/imgdiff /home/mexus/android/system/out/target/product/m8/boot.img /home/mexus/android/system/out/target/product/m8/recovery.img /home/mexus/android/system/out/target/product/m8/obj/PACKAGING/recovery_patch_intermediates/recovery_from_boot.p
target SharedLib: libutils (/home/mexus/android/system/out/target/product/m8/obj/SHARED_LIBRARIES/libutils_intermediates/LINKED/libutils.so)
[COLOR="Red"]Error: footer size 2130427508 != decompressed size 71179
failed to break apart source image[/COLOR]
make: *** [/home/mexus/android/system/out/target/product/m8/obj/PACKAGING/recovery_patch_intermediates/recovery_from_boot.p] Error 1
make: *** Waiting for unfinished jobs....
'/home/mexus/android/system/out/target/common/obj/JAVA_LIBRARIES/bouncycastle_intermediates/classes.dex' as 'classes.dex'...
[email protected]:~/android/system$
Click to expand...
Click to collapse
hi
could you resolve above error
if yes then how

Related

[Q][Solved] error: JSUint8ClampedArray.h: No such file or directory

When I compile CM ics, I got this issue:
out/target/product/u8860/obj/STATIC_LIBRARIES/libwebcore_intermediates/Source/WebCore/page/JSDOMWindow.cpp:314:33: error: JSUint8ClampedArray.h: No such file or directory
make: *** [out/target/product/u8860/obj/STATIC_LIBRARIES/libwebcore_intermediates/Source/WebCore/page/JSDOMWindow.o] Error 1
How to resolve this issue? Any suggestion is appreciated.
*EDIT 20130715*
it has been solved by:
$ cd external/webkit
$ git checkout de10df3f
"export JS_ENGING=jsc" does not make help.
no matter JS_ENGING=jsc or JS_ENGING=v8 will occur this error.
it has been solved by:
$ cd external/webkit
$ git checkout de10df3f
JSUint8ClampedArray.h error not used git tool
hejian said:
it has been solved by:
$ cd external/webkit
$ git checkout de10df3f
Click to expand...
Click to collapse
i am also have the same issue.but not used the git tool.
just i use the cyanogenmode souce code.
Kindly help me to resolve the issue.
Thank you

Help with zImage kernel compilation

This is my first time trying to compile my own kernel, i am dealing some problems and need help
i get these messages when executing the commang "make"
CHK include/linux/version.h
SYMLINK include/asm -> include/asm-arm
make[1]: `include/asm-arm/mach-types.h' is up to date.
CHK include/linux/utsrelease.h
CC kernel/bounds.s
CC scripts/mod/empty.o
arm-linux-gnueabi-gcc: error trying to exec 'cc1': execvp: No such file or directory
arm-linux-gnueabi-gcc: error trying to exec 'cc1make[1]: *** [kernel/bounds.s] Error 1
': execvp: make: *** [prepare0] Error 2
make: No such file or directory
*** Waiting for unfinished jobs....make[2]:
*** [scripts/mod/empty.o] Error 1
make[1]: *** [scripts/mod] Error 2
make: *** [scripts] Error 2
i red quite many webpages and i follow this guides
http://lanrat.com/how-to-compile-a-linux-kernel-for-android/
http://hertaville.com/2012/09/28/development-environment-raspberry-pi-cross-compiler/
i am running ubuntu 14.04 lts 64 bit. i am trying to compile kernel 2.6.32 for s3c6410. old chipset but even if brick it i do not care much
any help ?
spkraul said:
This is my first time trying to compile my own kernel, i am dealing some problems and need help
i get these messages when executing the commang "make"
CHK include/linux/version.h
SYMLINK include/asm -> include/asm-arm
make[1]: `include/asm-arm/mach-types.h' is up to date.
CHK include/linux/utsrelease.h
CC kernel/bounds.s
CC scripts/mod/empty.o
arm-linux-gnueabi-gcc: error trying to exec 'cc1': execvp: No such file or directory
arm-linux-gnueabi-gcc: error trying to exec 'cc1make[1]: *** [kernel/bounds.s] Error 1
': execvp: make: *** [prepare0] Error 2
make: No such file or directory
*** Waiting for unfinished jobs....make[2]:
*** [scripts/mod/empty.o] Error 1
make[1]: *** [scripts/mod] Error 2
make: *** [scripts] Error 2
i red quite many webpages and i follow this guides
http://lanrat.com/how-to-compile-a-linux-kernel-for-android/
http://hertaville.com/2012/09/28/development-environment-raspberry-pi-cross-compiler/
i am running ubuntu 14.04 lts 64 bit. i am trying to compile kernel 2.6.32 for s3c6410. old chipset but even if brick it i do not care much
any help ?
Click to expand...
Click to collapse
Which toolchain and version of the toolchain are you using? I would recommend checking out this information on someone who ran into the same problem as you and how they fixed it. Let me know if you still have questions.
i execute <<cd linux>>, <<make mrproper>>, <<make V=1 all>> and i get the following messages
[email protected]:~$ cd linux
bash: cd: linux: No such file or directory
[email protected]:~$ make mrproper
make: *** No rule to make target `mrproper'. Stop.
[email protected]:~$ cd /home/alex/o2droid/kern_2.6.32
[email protected]:~/o2droid/kern_2.6.32$ make prproper
make: *** No rule to make target `prproper'. Stop.
[email protected]:~/o2droid/kern_2.6.32$ make V=1 all
set -e; : ' CHK include/linux/version.h'; mkdir -p include/linux/; (echo \#define LINUX_VERSION_CODE 132640; echo '#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))' < /home/alex/o2droid/kern_2.6.32/Makefile > include/linux/version.h.tmp; if [ -r include/linux/version.h ] && cmp -s include/linux/version.h include/linux/version.h.tmp; then rm -f include/linux/version.h.tmp; else : ' UPD include/linux/version.h'; mv -f include/linux/version.h.tmp include/linux/version.h; fi
make -f scripts/Makefile.build obj=arch/arm/tools include/asm-arm/mach-types.h
make[1]: `include/asm-arm/mach-types.h' is up to date.
rm -f include/config/kernel.release
echo 2.6.32.9-00163-g4c4becf-dirty > include/config/kernel.release
set -e; : ' CHK include/linux/utsrelease.h'; mkdir -p include/linux/; if [ `echo -n "2.6.32.9-00163-g4c4becf-dirty" | wc -c ` -gt 64 ]; then echo '"2.6.32.9-00163-g4c4becf-dirty" exceeds 64 characters' >&2; exit 1; fi; (echo \#define UTS_RELEASE \"2.6.32.9-00163-g4c4becf-dirty\" < include/config/kernel.release > include/linux/utsrelease.h.tmp; if [ -r include/linux/utsrelease.h ] && cmp -s include/linux/utsrelease.h include/linux/utsrelease.h.tmp; then rm -f include/linux/utsrelease.h.tmp; else : ' UPD include/linux/utsrelease.h'; mv -f include/linux/utsrelease.h.tmp include/linux/utsrelease.h; fi
set -e; if [ -L include/asm ]; then asmlink=`readlink include/asm | cut -d '-' -f 2`; if [ "$asmlink" != "arm" ]; then echo "ERROR: the symlink include/asm points to asm-$asmlink but asm-arm was expected"; echo " set ARCH or save .config and run 'make mrproper' to fix it"; exit 1; fi; test -e $asmlink || rm include/asm; elif [ -d include/asm ]; then echo "ERROR: include/asm is a directory but a symlink was expected"; exit 1; fi
if [ ! -L include/asm ]; then : ' SYMLINK include/asm -> include/asm-arm'; if [ ! -d include/asm-arm ]; then mkdir -p include/asm-arm; fi; ln -fsn asm-arm include/asm; fi
mkdir -p .tmp_versions ; rm -f .tmp_versions/*
make -f scripts/Makefile.build obj=scripts/basic
(cat /dev/null; ) > scripts/basic/modules.order
make -f scripts/Makefile.build obj=.
(cat /dev/null; ) > modules.order
mkdir -p kernel/
/opt/cross/bin/arm-linux-gnueabi-gcc -Wp,-MD,kernel/.bounds.s.d -nostdinc -isystem include -Iinclude -I/home/alex/o2droid/kern_2.6.32/arch/arm/include -include include/linux/autoconf.h -D__KERNEL__ -mlittle-endian -Iarch/arm/mach-s3c6400/include -Iarch/arm/mach-s3c6410/include -Iarch/arm/plat-s3c64xx/include -Iarch/arm/plat-s3c/include -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -Os -mabi=aapcs-linux -mno-thumb-interwork -funwind-tables -msoft-float -Uarm -fomit-frame-pointer -g -O3 -marm -march=armv6zk -mfpu=vfp -mtune=arm1176jzf-s -mtune=arm1136j-s -mfloat-abi=softfp -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(bounds)" -D"KBUILD_MODNAME=KBUILD_STR(bounds)" -fverbose-asm -S -o kernel/bounds.s kernel/bounds.c
arm-linux-gnueabi-gcc: error trying to exec 'cc1': execvp: No such file or directory
make[1]: *** [kernel/bounds.s] Error 1
make: *** [prepare0] Error 2
i am using toolchain arm-eabi 4.6
i red the documentation
i have nothing like <<cc1>> under usr/bin
I don't have a /usr/local/libexec directory
i installed anything about cc1 from package manager and still nothing changed.
i did something wrong with <<make menuconfig>> or else ?
i also follow this guide https://github.com/argentinos/o2droid/tree/i8000/kern_2.6.32
i use the wrong toolchain ?
spkraul said:
i am using toolchain arm-eabi 4.6
i red the documentation
i have nothing like <<cc1>> under usr/bin
I don't have a /usr/local/libexec directory
i installed anything about cc1 from package manager and still nothing changed.
i did something wrong with <<make menuconfig>> or else ?
i also follow this guide https://github.com/argentinos/o2droid/tree/i8000/kern_2.6.32
i use the wrong toolchain ?
Click to expand...
Click to collapse
If you follow the guide in the repository that is meant for a pure Linux kernel, what def config under arch/arm/configs did you use?
Try using a procedure similar to the following:
Code:
export TOP= [where you installed the toolchain or top of android AOSP code base]
export PATH=$TOP/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin:$PATH (use corresponding arm-eabi bin path)
export ARCH=arm
export SUBARCH=arm
export CROSS_COMPILE=arm-eabi-
make NAMEOFDEVICE_defconfig
make -jx (Where x is the number of jobs you want -j4 is a safe option)
i followed your commands and no result yet. same problems
i checked this guide http://ubuntuforums.org/showthread.php?t=2213325
and got the following
[email protected]:~$ arm-none-linux-gnueabi-gcc -print-prog-name=cc1
arm-none-linux-gnueabi-gcc: command not found
[email protected]:~$ arm-linux-gnueabi-gcc -print-prog-name=cc1
/usr/lib/gcc-cross/arm-linux-gnueabi/4.7/cc1
[email protected]:~$ arm-linux-gnueabihf-gcc -print-prog-name=cc1
The program 'arm-linux-gnueabihf-gcc' is currently not installed. You can install it by typing:
sudo apt-get install gcc-arm-linux-gnueabihf
[email protected]:~$ dpkg -l | grep '\<gcc'
ii gcc 4:4.8.2-1ubuntu6 amd64 GNU C compiler
ii gcc-4.6 4.6.4-6ubuntu2 amd64 GNU C compiler
ii gcc-4.6-base:amd64 4.6.4-6ubuntu2 amd64 GCC, the GNU Compiler Collection (base package)
ii gcc-4.6-base:i386 4.6.4-6ubuntu2 i386 GCC, the GNU Compiler Collection (base package)
ii gcc-4.6-multilib 4.6.4-6ubuntu2 amd64 GNU C compiler (multilib files)
ii gcc-4.7-arm-linux-gnueabi 4.7.3-12ubuntu1cross1.85 amd64 GNU C compiler
ii gcc-4.7-arm-linux-gnueabi-base 4.7.3-12ubuntu1cross1.85 amd64 GCC, the GNU Compiler Collection (base package)
ii gcc-4.8 4.8.2-19ubuntu1 amd64 GNU C compiler
ii gcc-4.8-arm-linux-gnueabihf-base 4.8.2-16ubuntu4cross0.11 amd64 GCC, the GNU Compiler Collection (base package)
ii gcc-4.8-base:amd64 4.8.2-19ubuntu1 amd64 GCC, the GNU Compiler Collection (base package)
ii gcc-4.8-base:i386 4.8.2-19ubuntu1 i386 GCC, the GNU Compiler Collection (base package)
ii gcc-4.8-multilib 4.8.2-19ubuntu1 amd64 GNU C compiler (multilib files)
ii gcc-4.9-base:amd64 4.9-20140406-0ubuntu1 amd64 GCC, the GNU Compiler Collection (base package)
ii gcc-4.9-base:i386 4.9-20140406-0ubuntu1 i386 GCC, the GNU Compiler Collection (base package)
ii gcc-arm-linux-gnueabi 4:4.7.2-1 amd64 The GNU C compiler for armel architecture
ii gcc-multilib 4:4.8.2-1ubuntu6 amd64 GNU C compiler (multilib files)
i am using omniaII_defconfig
upd... i am searching and testing possible solutions, but nothing is working. i stuck on this mistake. cc1 exists on my pc and is executable. i also tried another toolchain 4.4.3 which is considered more compatible, but stuck on the same error again. really driving me crazy. i have too much job to do on the kernel improvement, but if i will never be able to compile it it doasn't worth trying. i appreciate your help. any ideas ?
spkraul said:
upd... i am searching and testing possible solutions, but nothing is working. i stuck on this mistake. cc1 exists on my pc and is executable. i also tried another toolchain 4.4.3 which is considered more compatible, but stuck on the same error again. really driving me crazy. i have too much job to do on the kernel improvement, but if i will never be able to compile it it doasn't worth trying. i appreciate your help. any ideas ?
Click to expand...
Click to collapse
After looking more into it I noticed there is a script included in the files for building the kernel called make_kernel, you should be able to build the kernel running the script, "./make_kernel -k" with the -k option being defined by the script to make the kernel. You may have to tweak the script to suite your build environment.
thanks a lot. i did run the script many times, with many ways. i see some compilation being done, but i always after a few minutes i end with the message "Error ... kernel not compiled!"
i guess some code errors cause it, but how to locate them and fix them under millions of programming lines ?
i red that before being able to compile a kernel and before this kernle is funtional you must fix many errors and deal many problems, but i am not sure how difficult this is going to be in my case.
i always get messages of this type " warning: variable ‘*’ set but not used [-Wunused-but-set-variable]
"
you follow any specific procedure to deal with these errors ?
spkraul said:
thanks a lot. i did run the script many times, with many ways. i see some compilation being done, but i always after a few minutes i end with the message "Error ... kernel not compiled!"
i guess some code errors cause it, but how to locate them and fix them under millions of programming lines ?
i red that before being able to compile a kernel and before this kernle is funtional you must fix many errors and deal many problems, but i am not sure how difficult this is going to be in my case.
i always get messages of this type " warning: variable ‘*’ set but not used [-Wunused-but-set-variable]
"
you follow any specific procedure to deal with these errors ?
Click to expand...
Click to collapse
In the error messages you will see what file the error is in and which line the error occurs going to that file and line(s) the error occurred at is the best place to start. Instead of using the script take the commands in the script and do them manually in the order the script would execute them in, until you get an error you can troubleshoot or it compiles successfully.

Establishing Android Build Enviroment under openSuse Leap

Tutorial how set up Android Build Enviroment on openSUSE Leap
If this help's u hit Thanks!
1) If you don’t have fresh installed openSUSE Leap first you need remove all Java installation, many people might have the wrong version of Java installed.
Code:
sudo zypper remove openjdk-* icedtea-* icedtea6-*
Follow the on-screen instructions to remove any stray Java versions. Otherwise, move on to the next step.
2) Install the main build tools with this command:
Code:
sudo zypper install bison curl flex git gnupg gperf libesd-devel liblz4-1_4 ncurses-devel libSDL-devel python-wxWi dgets-devel libxml2-2 libxml2-tools lzop java-1.7.0-openjdk java-1.7.0-openjdk-devel schedtool squashfs libxslt1 zip zlib-devel make gcc-c++
Appendx A to 2:
To setup maven which is needed for building:
1. Download maven:
wget http://mirrors.ibiblio.org/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz
2. Extract the file
tar -xvzf apache-maven-3.3.9-bin.tar.gz /tmp
3. Move to /opt/ folder
sudo mv /tmp/apache-maven-3.3.9 /opt/
4. Update environment, cd to home directory
cd ~
nano .bashrc
5. Append the path
export PATH=$PATH:/opt/apache-maven-3.3.9/bin
6. Reload
source .bashrc
7. Verify maven
mvn --version
Appendix B to 2:
For 64-bit system also install:
sudo zypper install glibc-devel-32bit ncurses-devel-32bit readline-devel-32bit libz1-32bit
>> build-essential << is Ubuntu meta package which in openSUSE is devel_basis
And u can install it by command
sudo zypper install --type pattern devel_basis
Select y to what it is offering to install.
3) Repo install...
mkdir ~/bin && curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo && chmod a+x ~/bin/repo
Appendix to 3:
To fix repo sync u will need install this:
sudo zypper install libpth20-32bit
maybe this to:
sudo zypper install openjdk-8-devel
4) Use your favorite text editor to open ~/.bashrc - I like nano:
Code:
nano ~/.bashrc
By default nano is not installed so install it by command:
sudo zypper install nano
5) At the very bottom (use the Page Down key) paste this code to a new line:
Code:
export PATH=~/bin:$PATH
export USE_CCACHE=1
6) Save it. In nano that would be Ctrl-O and then Enter. Then Ctrl-X to exit back to a prompt. Restart bash:
Code:
source ~/.bashrc
7) In the terminal, navigate to where you would like to download the Android source code. The commands below will make it in your home folder.
Code:
mkdir ~/android
cd ~/android
8) Now you're going to initialize the repo. This is where you decide the flavor of Android you want to build, i.e. AOKP, CyanogenMod, AOSP etc.
For the purposes of this tutorial, here's the command for Cyanogenmod 13 (Marshmallow) :
Code:
repo init -u https://github.com/CyanogenMod/android.git -b cm-13.0
9) Time to get the source, many gigabytes of downloading await.
Don't worry, it's automated. It's the last one!
Code:
repo sync
Check back periodically every hour or so. It all depends on how fast your connection is.
That's it! Everything should be ready to go.
Thanks for the guide
In Tumbleweed, the package is liblz4-1_7
There is a typo, it should be python-wxWidgets-devel
Also, the link to repo should be complete:
Code:
http://commondatastorage.googleapis.com/git-repo-downloads/repo
Thanks
does it worth to have a separate user for builds?
Android Build Enviroment for openSUSE tumbleweed early 2019
Sorry for necromancing this old thread, but I've recently switched to openSUSE and these are the dependencies that I've used to successfully build LineageOS-16.0.:
Code:
sudo zypper install --type pattern devel_basis
sudo zypper install bison java-1_8_0-openjdk java-1_8_0-openjdk-devel SDL-devel python-wxWidgets-devel lzop schedtool squashfs glibc-devel-32bit ncurses-devel-32bit ncurses5-devel-32bit readline-devel-32bit ccache libz1-32bit python-xml bc
You can find maven here:
https://software.opensuse.org/package/maven
and android-tools here:
https://software.opensuse.org/package/android-tools
Dependencies already included by default in my system (not included in "devel_basis") that may you don't have but you need:
Code:
gpg2 liblz4-1 libxml2-2 libxml2-tools libxslt-tools zip
Just sharing because this post will (probably) save some time to someone in the same situation in early 2019.
_mone said:
Sorry for necromancing this old thread, but I've recently switched to openSUSE and these are the dependencies that I've used to successfully build LineageOS-16.0.:
Code:
sudo zypper install --type pattern devel_basis
sudo zypper install bison java-1_8_0-openjdk java-1_8_0-openjdk-devel SDL-devel python-wxWidgets-devel lzop schedtool squashfs glibc-devel-32bit ncurses-devel-32bit ncurses5-devel-32bit readline-devel-32bit ccache libz1-32bit python-xml bc
You can find maven here:
https://software.opensuse.org/package/maven
and android-tools here:
https://software.opensuse.org/package/android-tools
Dependencies already included by default in my system (not included in "devel_basis") that may you don't have but you need:
Code:
gpg2 liblz4-1 libxml2-2 libxml2-tools libxslt-tools zip
Just sharing because this post will (probably) save some time to someone in the same situation in early 2019.
Click to expand...
Click to collapse
Thanks for this. I'm still getting an error and wondering what SSL packages you have installed? I'm obviously missing one below.
EDIT: i kept installing SSL packages until it worked, can't remember which one did the trick but it seems it's chugging along now
/run/media/david/4d58d760-2359-46fb-b95b-1b374cb34428/android/lineage/kernel/oneplus/sdm845/scripts/extract-cert.c:21:10: fatal error: openssl/bio.h: No such file or directory
#include <openssl/bio.h>
^~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [scripts/Makefile.host:101: scripts/extract-cert] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [/run/media/david/4d58d760-2359-46fb-b95b-1b374cb34428/android/lineage/kernel/oneplus/sdm845/Makefile:558: scripts] Error 2
make[1]: Leaving directory '/run/media/david/4d58d760-2359-46fb-b95b-1b374cb34428/android/lineage/out/target/product/fajita/obj/KERNEL_OBJ'
make: *** [Makefile:152: sub-make] Error 2
make: Leaving directory '/run/media/david/4d58d760-2359-46fb-b95b-1b374cb34428/android/lineage/kernel/oneplus/sdm845'
[ 0% 70/94167] //external/protobuf:aprotoc clang++ src/google/protobuf/compiler/javanano/javanano_extension.cc [linux_glibc]
ninja: build stopped: subcommand failed.
12:41:48 ninja failed with: exit status 1

[Help] Building from source issue (CopperheadOS)

Host Machine: MacBook Pro Retina 16GB Ram, 2.8GHz processor with 4 cores
Virtual Machine: 8 vCPUs, 30GB RAM, Ubuntu 16.04.1 LTS (Google Cloud Platform) using THIS guide.
I am attempting to build CopperheadOS from source so I can apply a signature spoofing patch and utilize MicroG. I originally tried this on Ubuntu 14.04 VM via Virtualbox but ran into the same error below. I've listed my terminal commands at the bottom of this post for reference as well.
Makefile:130: recipe for target 'sub-make' failed
make: *** [sub-make] Error 2
make: Leaving directory '/home/"user.name"/copperheados-N4F26J.2017.01.04.05.44.59/kernel/huawei/angler'
[ 11% 5247/44926] Building with Jack: out/target/common/...LIBRARIES/framework_intermediates/with-local/classes.dex
ninja: build stopped: subcommand failed.
build/core/ninja.mk:148: recipe for target 'ninja_wrapper' failed
make: *** [ninja_wrapper] Error 1
#### make failed to build some targets (15:32 (mm:ss)) ####
Click to expand...
Click to collapse
I read online that this is a Jack issue, and tried the following:
Code:
export JACK_SERVER_VM_ARGUMENTS="-Dfile.encoding=UTF-8 -
XX:+TieredCompilation -Xmx30g"
./prebuilts/sdk/tools/jack-admin kill-server
./prebuilts/sdk/tools/jack-admin start-server
The same error output again.
Setup Build Environment & Download Source Files
Code:
sudo -s
sudo apt-get update
sudo apt-get install openjdk-8-jdk
sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-mul tilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip
mkdir ~/bin
PATH=~/bin:$PATH
curl https://storage.googleapis.com/git-repo-downloads/repo chmod a+x ~/bin/repo
git config --global user.name “firstname”
git config --global user.email “[email protected]”
mkdir copperheados-N4F26J.2017.01.04.05.44.59
cd copperheados-N4F26J.2017.01.04.05.44.59
repo init -u https://github.com/CopperheadOS/platform_ma
nifest.git -b refs/tags/N4F26J.2017.01.04.05.44.59
repo sync -j16
Download and apply MicroG Patch
Code:
curl -o android_frameworks_base-N.patch https://raw.githubusercontent.com/microg/android_pac
kages_apps_GmsCore/master/patches/android_frameworks_base-N.patch
mv android_frameworks_base-N.patch spoof.patch
mv spoof.patch ~/copperheados N4F26J.2017.01.04.05.44.59/frameworks/base
cd ~/copperheadosN4F26J.2017.01.04.05.44.59/frameworks/base
git apply spoof.patch
Build
Code:
cd ~/copperheados-N4F26J.2017.01.04.05.44.59
source build/envsetup.sh
export LANG=C
unset _JAVA_OPTIONS
export BUILD_NUMBER=$(date --utc +%Y.%m.%d.%H.%M.%S)
export DISPLAY_BUILD_NUMBER=true
chrt -b -p 0 $$
choosecombo release aosp_angler user
make target-files-package -j20
ERROR (listed in beginning of post) outputs.
Code:
export JACK_SERVER_VM_ARGUMENTS="-Dfile.encoding=UTF-8 -
XX:+TieredCompilation -Xmx30g"
./prebuilts/sdk/tools/jack-admin kill-server
./prebuilts/sdk/tools/jack-admin start-server
ERROR outputs again.
I tried all the steps above again with
Code:
make target-files-package -j16
wondering if I was trying to use too many parallels processes, but I received the same error.
I had the same problem when I setup Ubuntu in VirtualBox with 10GB RAM and 3 cores (I even did -j3 since I didn't know how high I should go).

Kernel compile failes

I have installed Linux Mint 19.3 Cinnamon (Kernel 5.3.0-40-generic) with 8 GB ram and an i5-8265U. But i also got the same error on my PC at home that's running on Ubuntu 19.10 with an Ryzen 5 3600 and 16 GB ram.
As toolchain have i installed on both machines the android nougat-aarch64 toolchain version 4.9 (android googlesource com/platform/prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/+archive/nougat-release.tar.gz)
I want to compile the kernel for the Wiko View. So i downloaded the source code, of the Wiko View 32GB, from wiko's site (wikogeek com) and i followed the instructions of the BUILD-INSTRUCTIONS-WORKINGPROGRESS.txt, which is located inside the archive.
The BUILD-INSTRUCTIONS-WORKINGPROGRESS.txt content
Code:
These are the instructions to rebuilding the source code for the Lenny 3 device.
In the archive you will find sources for:
* Linux kernel
* platform
* toolchain
First of all, install Ubuntu 12.04 (64 bit)
It is recommended to use the prebuilt toolchain from Google, which can be downloaded from:
https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/+archive/master.tar.gz
Create a directory (for example: /tmp/toolchain ) and unpack the prebuilt toolchain:
1. Rebuilding kernel:
Create a directory (for example: /tmp/toolchain ) and unpack the prebuilt toolchain:
$ mkdir -p /tmp/toolchain
$ wget 'https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/+archive/master.tar.gz'
$ tar -zxvf aarch64-linux-android-4.9-master.tar.gz -C /tmp/toolchain
unpack kernel for rebuild
Must keep the kernel-3.18 and vendor in the same dir
$ tar -zxvf kernel-3.18.tar.gz
$ cd kernel/msm-3.18
$ gedit Makefile
Then modify the top level Makefile to set the right prefix for the cross compiler. Specifically, change
CROSS_COMPILE ?= $(CONFIG_CROSS_COMPILE:"%"=%)
to
CROSS_COMPILE ?= /tmp/toolchain/aarch64-linux-android-4.9-master/bin/aarch64-linux-android-
(or wherever your toolchain is located)
$ export TARGET_BUILD_VARIANT=user
$ export ARCH=arm64
$ mkdir out
$ make O=out TARGET_ARCH=arm64 v12bnlite-perf_defconfig
$ make O=out TARGET_ARCH=arm64
Output files:
Kernel: out/arch/arm64/boot/Image.gz or Image.gz-dtb
module: out/drivers/*/*.ko
How to clean
$ make clean
2. Rebuilding Mobule for Platform
It is only for modules are needed to using Android build system.
Please check its own install information under its folder for other module.
First install build envirment
$ sudo apt-get install git gnupg flex bison gperf build-essential \
zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \
libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \
libgl1-mesa-dev g++-multilib mingw32 tofrodos \
python-markdown libxml2-utils xsltproc zlib1g-dev:i386
$ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so
install JDK 1.8
$ sudo apt-get update
$ sudo apt-get install openjdk-8-jdk
install repo
$ mkdir ~/bin
$ PATH=~/bin:$PATH
$ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
$ chmod a+x ~/bin/repo
Get android open source: version info - Android 7.1.0
$ mkdir WORKING_DIRECTORY
$ cd WORKING_DIRECTORY
$ git config --global user.name "Your Name"
$ git config --global user.email "[email protected]"
$ repo init -u https://android.googlesource.com/platform/manifest -b android-7.1.0_r1
$ repo sync
Copy module that you want to build - to original android open source
If same module exist in android open source, you should replace it. (no overwrite)
Use the android build method to rebuild every module
$ cd WORKING_DIRECTORY
$ source build/envsetup.sh
$ lunch aosp_arm-user
$ make -j4
3.Rebuilding the toolchain
To rebuild the toolchain please follow the instructions as provided by Google.
Everything worked, but when i execute the last command (make O=out TARGET_ARCH=arm64) it failes with missing separator in the Makefile
Log:
Code:
mika ~ mika-HP-Laptop-15-da1xxx ~ Documents > code > view-source > kernel > msm-3.18 > $ make O=out TARGET_ARCH=arm64
. . .
LD drivers/idle/built-in.o
../drivers/input/Makefile:34: --singyue-user----CONFIG_TINNO_FINGERPRINT2_N--------------y--
../drivers/input/Makefile:36: --singyue-user------------------Fingerprint2-N---
/home/mika/Documents/code/view-source/kernel/msm-3.18/vendor/tinno/Fingerprint2-N/kernel_macro_cfg:14: -- v12bnlite -- wik_fr -- msm8937 -- elan_96sa silead_6163 --
CC drivers/input/input.o
CC drivers/input/input-compat.o
CC drivers/input/input-mt.o
CC drivers/input/ff-core.o
LD drivers/input/input-core.o
CC drivers/input/mousedev.o
CC drivers/input/evdev.o
../drivers/input/../../../../vendor/tinno/Fingerprint2-N/KERNEL/qcom/kernel-3.18/drivers/input/fingerprint/Makefile:11: ---------------fingerprint_supprot--elan_96sa silead_6163--------------
CC drivers/input/../../../../vendor/tinno/Fingerprint2-N/KERNEL/qcom/kernel-3.18/drivers/input/fingerprint/elan_96sa/elan_fp_qsee.o
LD drivers/input/../../../../vendor/tinno/Fingerprint2-N/KERNEL/qcom/kernel-3.18/drivers/input/fingerprint/elan_96sa/built-in.o
CC drivers/input/../../../../vendor/tinno/Fingerprint2-N/KERNEL/qcom/kernel-3.18/drivers/input/fingerprint/fp_drv/fp_drv.o
LD drivers/input/../../../../vendor/tinno/Fingerprint2-N/KERNEL/qcom/kernel-3.18/drivers/input/fingerprint/fp_drv/built-in.o
CC drivers/input/../../../../vendor/tinno/Fingerprint2-N/KERNEL/qcom/kernel-3.18/drivers/input/fingerprint/silead_6163/slspi_qsee.o
LD drivers/input/../../../../vendor/tinno/Fingerprint2-N/KERNEL/qcom/kernel-3.18/drivers/input/fingerprint/silead_6163/built-in.o
LD drivers/input/../../../../vendor/tinno/Fingerprint2-N/KERNEL/qcom/kernel-3.18/drivers/input/fingerprint/built-in.o
CC drivers/input/joystick/xpad.o
LD drivers/input/joystick/built-in.o
CC drivers/input/keyboard/atkbd.o
CC drivers/input/keyboard/gpio_keys.o
LD drivers/input/keyboard/built-in.o
CC drivers/input/misc/gpio_event.o
CC drivers/input/misc/gpio_matrix.o
CC drivers/input/misc/gpio_input.o
CC drivers/input/misc/gpio_output.o
CC drivers/input/misc/gpio_axis.o
CC drivers/input/misc/keychord.o
CC drivers/input/misc/uinput.o
CC drivers/input/misc/hall_sensor.o
LD drivers/input/misc/built-in.o
LD drivers/input/tablet/built-in.o
CC drivers/input/touchscreen/of_touchscreen.o
CC drivers/input/touchscreen/gen_vkeys.o
../drivers/input/touchscreen/ft5364i/Makefile:11: *** missing separator. Stop.
../scripts/Makefile.build:402: recipe for target 'drivers/input/touchscreen/ft5364i' failed
make[4]: *** [drivers/input/touchscreen/ft5364i] Error 2
../scripts/Makefile.build:402: recipe for target 'drivers/input/touchscreen' failed
make[3]: *** [drivers/input/touchscreen] Error 2
../scripts/Makefile.build:402: recipe for target 'drivers/input' failed
make[2]: *** [drivers/input] Error 2
/home/mika/Documents/code/view-source/kernel/msm-3.18/Makefile:946: recipe for target 'drivers' failed
make[1]: *** [drivers] Error 2
make[1]: Leaving directory '/home/mika/Documents/code/view-source/kernel/msm-3.18/out'
Makefile:145: recipe for target 'sub-make' failed
make: *** [sub-make] Error 2
So i changed the "drivers/input/touchscreen/ft5364i/Makefile" from:
Code:
#
# Makefile for the input core drivers.
#
# Each configuration option enables a list of files.
obj-$(CONFIG_TOUCHSCREEN_FT5364I) += fts_ts.o
#obj-y += fts_ts.o
fts_ts-y += focaltech_core.o focaltech_ctl.o focaltech_ex_fun.o focaltech_gesture.o focaltech_flash.o
extlibs :=$(PWD)/drivers/input/touchscreen/ft5364i/ft_gesture_64bit_lib_v1.0_20140820.a
ldflagobj-y += fts_ts.o
obj-y s-y +=--whole-archive $(extlibs) --no-whole-archive
to:
Code:
#
# Makefile for the input core drivers.
#
# Each configuration option enables a list of files.
all:
[TAB]obj-$(CONFIG_TOUCHSCREEN_FT5364I) += fts_ts.o
[TAB]#obj-y += fts_ts.o
[TAB]fts_ts-y += focaltech_core.o focaltech_ctl.o focaltech_ex_fun.o focaltech_gesture.o focaltech_flash.o
[TAB]extlibs :=$(PWD)/drivers/input/touchscreen/ft5364i/ft_gesture_64bit_lib_v1.0_20140820.a
[TAB]ldflagobj-y += fts_ts.o
[TAB]obj-y s-y +=--whole-archive $(extlibs) --no-whole-archive
But now i get an error, that he can't find an file, but i don't know why the file will not be compiled.
Log:
Code:
mika ~ mika-HP-Laptop-15-da1xxx ~ Documents > code > view-source > kernel > msm-3.18 > $ make O=out TARGET_ARCH=arm64
make[1]: Entering directory '/home/mika/Documents/code/view-source/kernel/msm-3.18/out'
CHK include/config/kernel.release
Using .. as source for kernel
GEN ./Makefile
CHK include/generated/uapi/linux/version.h
CHK include/generated/utsrelease.h
CALL ../scripts/checksyscalls.sh
CHK include/generated/compile.h
CHK kernel/config_data.h
../drivers/input/Makefile:34: --singyue-user----CONFIG_TINNO_FINGERPRINT2_N--------------y--
../drivers/input/Makefile:36: --singyue-user------------------Fingerprint2-N---
/home/mika/Documents/code/view-source/kernel/msm-3.18/vendor/tinno/Fingerprint2-N/kernel_macro_cfg:14: -- v12bnlite -- wik_fr -- msm8937 -- elan_96sa silead_6163 --
../drivers/input/../../../../vendor/tinno/Fingerprint2-N/KERNEL/qcom/kernel-3.18/drivers/input/fingerprint/Makefile:11: ---------------fingerprint_supprot--elan_96sa silead_6163--------------
CC drivers/input/touchscreen/tgesture/tgesture.o
LD drivers/input/touchscreen/tgesture/built-in.o
CC drivers/input/touchscreen/high_sensitive.o
LD drivers/input/touchscreen/built-in.o
/home/mika/aarch64-nougat-build-tools/bin/aarch64-linux-android-ld: cannot find drivers/input/touchscreen/ft5364i/built-in.o: No such file or directory
../scripts/Makefile.build:336: recipe for target 'drivers/input/touchscreen/built-in.o' failed
make[4]: *** [drivers/input/touchscreen/built-in.o] Error 1
../scripts/Makefile.build:402: recipe for target 'drivers/input/touchscreen' failed
make[3]: *** [drivers/input/touchscreen] Error 2
../scripts/Makefile.build:402: recipe for target 'drivers/input' failed
make[2]: *** [drivers/input] Error 2
/home/mika/Documents/code/view-source/kernel/msm-3.18/Makefile:946: recipe for target 'drivers' failed
make[1]: *** [drivers] Error 2
make[1]: Leaving directory '/home/mika/Documents/code/view-source/kernel/msm-3.18/out'
Makefile:145: recipe for target 'sub-make' failed
make: *** [sub-make] Error 2
Dose someone know why the error occurs.

Categories

Resources