Build from source

196 views
Skip to first unread message

Daniel Monteiro

unread,
Mar 30, 2020, 11:44:27 PM3/30/20
to Android-x86
Trying to build the last days from source q-x86 / pie-x86 and it always fails!
Tried on clean Linux under ubuntu 18.04 / 20.04 with only build env setup, and it fails always in same line.
Also the intruction on packager over the website its wrong, it points to install xmllin, this package does not exist in ubunto 18.04 or other distro, this binary is found under the package libxml2-utils .
The error that keep me stoping of building:

[ 98% 529/538] build /media/tugapower/RomBuild/android-x86/target/product/x86_64/obj/kernel/arch/x86_64/boot/bzImage
FAILED: /media/tugapower/RomBuild/android-x86/target/product/x86_64/obj/kernel/arch/x86_64/boot/bzImage
/bin/bash -c "(mkdir -p /media/tugapower/RomBuild/android-x86/.path; ln -sf ../../prebuilts/clang/host/linux-x86/clang-r353983c1/bin/llvm-ar /media/tugapower/RomBuild/android-x86/.path/ar; ln -sf ../../prebuilts/clang/host/linux-x86/clang-r353983c1/bin/ld.lld /media/tugapower/RomBuild/android-x86/.path/ld ) && (prebuilts/build-tools/linux-x86/bin/make -j12 -l\$((12+2)) -C kernel O=/media/tugapower/RomBuild/android-x86/target/product/x86_64/obj/kernel ARCH=x86_64 CROSS_COMPILE=\"/usr/local/bin/ccache /home/tugapower/android-x86/prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.11-4.6/bin/x86_64-linux-\"  YACC=/home/tugapower/android-x86/prebuilts/build-tools/linux-x86/bin/bison LEX=/home/tugapower/android-x86/prebuilts/build-tools/linux-x86/bin/flex HOSTCC=/home/tugapower/android-x86/prebuilts/clang/host/linux-x86/clang-r353983c1/bin/clang olddefconfig ) && (prebuilts/build-tools/linux-x86/bin/make -j12 -l\$((12+2)) -C kernel O=/media/tugapower/RomBuild/android-x86/target/product/x86_64/obj/kernel ARCH=x86_64 CROSS_COMPILE=\"/usr/local/bin/ccache /home/tugapower/android-x86/prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.11-4.6/bin/x86_64-linux-\"  YACC=/home/tugapower/android-x86/prebuilts/build-tools/linux-x86/bin/bison LEX=/home/tugapower/android-x86/prebuilts/build-tools/linux-x86/bin/flex HOSTCC=/home/tugapower/android-x86/prebuilts/clang/host/linux-x86/clang-r353983c1/bin/clang bzImage modules )"
make: Entering directory '/home/tugapower/android-x86/kernel'
make[1]: Entering directory '/media/tugapower/RomBuild/android-x86/target/product/x86_64/obj/kernel'
  HOSTCC  scripts/basic/fixdep
  GEN     ./Makefile
clang-9: error: unable to execute command: Executable "ld" doesn't exist!
clang-9: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [scripts/Makefile.host:90: scripts/basic/fixdep] Error 1
make[1]: *** [/home/tugapower/android-x86/kernel/Makefile:467: scripts_basic] Error 2
make[1]: Leaving directory '/media/tugapower/RomBuild/android-x86/target/product/x86_64/obj/kernel'
make: *** [Makefile:146: sub-make] Error 2
make: Leaving directory '/home/tugapower/android-x86/kernel'
[ 98% 530/538] Downloading hybrid-v35_64-nodebug-pcoem-6_30_223_271.tar.gz...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 2859k  100 2859k    0     0  1462k      0  0:00:01  0:00:01 --:--:-- 1461k
05:37:21 ninja failed with: exit status 1

#### failed to build some targets (01:29 (mm:ss)) ####

Someone can point me what could be? Tried all that can remenber and searched with no avail.

Chih-Wei Huang

unread,
Mar 31, 2020, 12:11:06 AM3/31/20
to Android-x86
Daniel Monteiro <danie...@gmail.com> 於 2020年3月31日 週二 上午11:44寫道:
>
> Trying to build the last days from source q-x86 / pie-x86 and it always fails!
> Tried on clean Linux under ubuntu 18.04 / 20.04 with only build env setup, and it fails always in same line.
> Also the intruction on packager over the website its wrong, it points to install xmllin, this package does not exist in ubunto 18.04 or other distro, this binary is found under the package libxml2-utils .

Will correct that. Thank you!

> The error that keep me stoping of building:

According to the log, your OUT_DIR is just empty.
That's very strange... It's the root cause of the error.

Did you follow the build instructions exactly?
Please show the 'printconfig' result after you issued the lunch command.

> [ 98% 529/538] build /media/tugapower/RomBuild/android-x86/target/product/x86_64/obj/kernel/arch/x86_64/boot/bzImage
> FAILED: /media/tugapower/RomBuild/android-x86/target/product/x86_64/obj/kernel/arch/x86_64/boot/bzImage
> /bin/bash -c "(mkdir -p /media/tugapower/RomBuild/android-x86/.path; ln -sf ../../prebuilts/clang/host/linux-x86/clang-r353983c1/bin/llvm-ar /media/tugapower/RomBuild/android-x86/.path/ar; ln -sf ../../prebuilts/clang/host/linux-x86/clang-r353983c1/bin/ld.lld /media/tugapower/RomBuild/android-x86/.path/ld ) && (prebuilts/build-tools/linux-x86/bin/make -j12 -l\$((12+2)) -C kernel O=/media/tugapower/RomBuild/android-x86/target/product/x86_64/obj/kernel ARCH=x86_64 CROSS_COMPILE=\"/usr/local/bin/ccache /home/tugapower/android-x86/prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.11-4.6/bin/x86_64-linux-\" YACC=/home/tugapower/android-x86/prebuilts/build-tools/linux-x86/bin/bison LEX=/home/tugapower/android-x86/prebuilts/build-tools/linux-x86/bin/flex HOSTCC=/home/tugapower/android-x86/prebuilts/clang/host/linux-x86/clang-r353983c1/bin/clang olddefconfig ) && (prebuilts/build-tools/linux-x86/bin/make -j12 -l\$((12+2)) -C kernel O=/media/tugapower/RomBuild/android-x86/target/product/x86_64/obj/kernel ARCH=x86_64 CROSS_COMPILE=\"/usr/local/bin/ccache /home/tugapower/android-x86/prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.11-4.6/bin/x86_64-linux-\" YACC=/home/tugapower/android-x86/prebuilts/build-tools/linux-x86/bin/bison LEX=/home/tugapower/android-x86/prebuilts/build-tools/linux-x86/bin/flex HOSTCC=/home/tugapower/android-x86/prebuilts/clang/host/linux-x86/clang-r353983c1/bin/clang bzImage modules )"
> make: Entering directory '/home/tugapower/android-x86/kernel'
> make[1]: Entering directory '/media/tugapower/RomBuild/android-x86/target/product/x86_64/obj/kernel'
> HOSTCC scripts/basic/fixdep
> GEN ./Makefile
> clang-9: error: unable to execute command: Executable "ld" doesn't exist!
> clang-9: error: linker command failed with exit code 1 (use -v to see invocation)
> make[2]: *** [scripts/Makefile.host:90: scripts/basic/fixdep] Error 1
> make[1]: *** [/home/tugapower/android-x86/kernel/Makefile:467: scripts_basic] Error 2
> make[1]: Leaving directory '/media/tugapower/RomBuild/android-x86/target/product/x86_64/obj/kernel'
> make: *** [Makefile:146: sub-make] Error 2
> make: Leaving directory '/home/tugapower/android-x86/kernel'


--
Chih-Wei
Android-x86 project
http://www.android-x86.org

Daniel Monteiro

unread,
Mar 31, 2020, 12:54:01 AM3/31/20
to Android-x86
I feel so dummy, the OUT_DIR its not empty, altough the issue is that, the location of the OUT_DIR, been building android for some time now and you can export the variable of the OUT_DIR as
OUT_DIR_COMMON_BASE use other disk to storage the build files ) and build will follow that location!
It seems android-x86 build process does not follow this across all building, because the variable its indeed picked up from the build, but then it fails during some files building.

Taken from Android Establishing a Build Environment


This have been implemented since Android 4.1

Now tried without the OUT_DIR_COMMON_BASE var settled and it build just fine, so the culprit is found.

Thanks for the hint on OUT_DIR, would never tough about that. But you should consider looking at this, since its standard over android building process.
Probably the building process only have this screwed over the kernel building process.

android-x86/kernel/build.config.allmodconfig

L6 :    ${KERNEL_DIR}/scripts/config --file ${OUT_DIR}/.config \
L14:    (cd ${OUT_DIR} && \
L15:     make O=${OUT_DIR} $archsubarch CC=${CC} CROSS_COMPILE=${CROSS_COMPILE} olddefconfig)

Reply all
Reply to author
Forward
0 new messages