sherpya / android-busybox

Android busybox for standalone bionic toolchain - ALWAYS REBASED (so pull --rebase --ff-only), look at https://github.com/sherpya/android-busybox/blob/master/ANDROID.md for info
Other
79 stars 38 forks source link

can you apply android.mk to build in android N? #4

Closed lefu999 closed 6 years ago

lefu999 commented 6 years ago

this project is build successfully in android 7.1.2 but crash when running for libbusybox...

sherpya commented 6 years ago

please elaborate

lefu999 commented 6 years ago

hi,i want to build this project without cross compile because it will crash when cross compile it as share library. Cm-busybox,they apply android.mk to compile busybox and it is successfully compiled in android 6.0 but faild in android 7.1.2.Can you help me to apply android.mk which is successfully complied in android 7.1.2?Thx!!!!!!@sherpya

sherpya commented 6 years ago

are you trying to build my port as part of lineageos build? I don't use Android.mk, but the standard busybox makefile, did you tried to use their .mk on my code? what error do you get?

lefu999 commented 6 years ago

PRODUCT_COPY_FILES device/rockchip/common/init.rk30board.usb.rc:root/init.rk30board.usb.rc ignored. PRODUCT_COPY_FILES device/rockchip/common/fstab.rk30board.bootmode.unknown:root/fstab.rk30board.bootmode.unknown ignored. PRODUCT_COPY_FILES device/rockchip/common/fstab.rk30board.bootmode.emmc:root/fstab.rk30board.bootmode.emmc ignored. PRODUCT_COPY_FILES vendor/rockchip/common/nand/modules/arm/rk30xxnand_ko.ko.3.10.0:root/rk30xxnand_ko.ko ignored. PRODUCT_COPY_FILES vendor/rockchip/common/nand/modules/arm/drmboot.ko:root/drmboot.ko ignored. PRODUCT_COPY_FILES device/rockchip/common/public.libraries.vendor.txt:system/vendor/etc/public.libraries.txt ignored. No private recovery resources for TARGET_DEVICE rk3399_mid Starting build with ninja ninja: Entering directory .' [ 0% 1/1082] target C: busybox <= external/android_external_busybox-nAOSP-7.1.2_r36/util-linux/volume_id/ext.c FAILED: /bin/bash -c "(PWD=/proc/self/cwd prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/bin/aarch64-linux-android-gcc -I /home/yejia/code/androidN/rk3399_7.1/out/target/product/rk3399_mid/obj/busybox/full/include -I external/android_external_busybox-nAOSP-7.1.2_r36/include -I external/android_external_busybox-nAOSP-7.1.2_r36/libbb -I bionic/libc/private -I bionic/libm/include -I bionic/libc -I bionic/libm -I libc/kernel/common -I external/libselinux/include -I external/selinux/libsepol/include -I external/android_external_busybox-nAOSP-7.1.2_r36/android/regex -I external/android_external_busybox-nAOSP-7.1.2_r36/android/librpc -I external/android_external_busybox-nAOSP-7.1.2_r36 -I out/target/product/rk3399_mid/obj/EXECUTABLES/busybox_intermediates -I out/target/product/rk3399_mid/gen/EXECUTABLES/busybox_intermediates -I libnativehelper/include/nativehelper \$(cat out/target/product/rk3399_mid/obj/EXECUTABLES/busybox_intermediates/import_includes) -isystem system/core/include -isystem system/media/audio/include -isystem hardware/libhardware/include -isystem hardware/libhardware_legacy/include -isystem hardware/ril/include -isystem libnativehelper/include -isystem frameworks/native/include -isystem frameworks/native/opengl/include -isystem frameworks/av/include -isystem frameworks/base/include -isystem out/target/product/rk3399_mid/obj/include -isystem bionic/libc/arch-arm64/include -isystem bionic/libc/include -isystem bionic/libc/kernel/uapi -isystem bionic/libc/kernel/common -isystem bionic/libc/kernel/uapi/asm-arm64 -isystem bionic/libm/include/arm64 -c -fno-exceptions -Wno-multichar -fno-strict-aliasing -fstack-protector-strong -ffunction-sections -fdata-sections -funwind-tables -Wa,--noexecstack -Werror=format-security -D_FORTIFY_SOURCE=2 -fno-short-enums -no-canonical-prefixes -fno-canonical-system-headers -mcpu=cortex-a53 -Werror=pointer-to-int-cast -fno-strict-volatile-bitfields -Wno-psabi -DANDROID -fmessage-length=0 -W -Wall -Wno-unused -Winit-self -Wpointer-arith -fdiagnostics-color -fdebug-prefix-map=/proc/self/cwd= -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Werror=date-time -DNDEBUG -O2 -g -Wstrict-aliasing=2 -fgcse-after-reload -frerun-cse-after-loop -frename-registers -DNDEBUG -UDEBUG -Werror=implicit -Wno-clobbered -Wno-format-security -DNDEBUG -DANDROID -fno-strict-aliasing -fno-builtin-stpcpy -include /home/yejia/code/androidN/rk3399_7.1/out/target/product/rk3399_mid/obj/busybox/full/include/autoconf.h -D'CONFIG_DEFAULT_MODULES_DIR=\"/system/lib/modules\"' -D'BB_VER=\"make[1]: Entering directory \/home/yejia/code/androidN/rk3399_7.1/external/android_external_busybox-nAOSP-7.1.2_r36' 1.22.1 make[1]: Leaving directory `/home/yejia/code/androidN/rk3399_7.1/external/android_external_busybox-nAOSP-7.1.2_r36' bionic\"' -DBB_BT=AUTOCONF_TIMESTAMP -DBIONIC_L -DBIONIC_ICS -fpie -D_USING_LIBCXX -MD -MF out/target/product/rk3399_mid/obj/EXECUTABLES/busybox_intermediates/util-linux/volume_id/ext.d -o out/target/product/rk3399_mid/obj/EXECUTABLES/busybox_intermediates/util-linux/volume_id/ext.o external/android_external_busybox-nAOSP-7.1.2_r36/util-linux/volume_id/ext.c ) && (cp out/target/product/rk3399_mid/obj/EXECUTABLES/busybox_intermediates/util-linux/volume_id/ext.d out/target/product/rk3399_mid/obj/EXECUTABLES/busybox_intermediates/util-linux/volume_id/ext.P; sed -e 's/#.//' -e 's/^[^:]: //' -e 's/ \\\$//' -e '/^\$/ d' -e 's/\$/ :/' < out/target/product/rk3399_mid/obj/EXECUTABLES/busybox_intermediates/util-linux/volume_id/ext.d >> out/target/product/rk3399_mid/obj/EXECUTABLES/busybox_intermediates/util-linux/volume_id/ext.P; rm -f out/target/product/rk3399_mid/obj/EXECUTABLES/busybox_intermediates/util-linux/volume_id/ext.d )" /bin/bash: -c: line 0: unexpected EOF while looking for matching ``' /bin/bash: -c: line 1: syntax error: unexpected end of file ninja: build stopped: subcommand failed. make: *** [ninja_wrapper] Error 1

lefu999 commented 6 years ago

Android.mk.tar.gz

lefu999 commented 6 years ago

your project is no problem when use the standard busybox makefile to build.. It has confused me lots of day when use this android.mk and i have no idea how to resolve this problem...

sherpya commented 6 years ago

I don't think you can easly build my port using aosp makefiles, some stuff is missing, for example selinux, you can build with ndk and add the binary, follow the how to here https://github.com/sherpya/android-busybox/blob/master/ANDROID.md

lefu999 commented 6 years ago

Thanks a lot!!! I will try it!!!Thx!!!!!!!

lefu999 commented 6 years ago

CONFIG_BUILD_LIBBUSYBOX=y CONFIG_STATIC=y CONFIG_FEATURE_LIBBUSYBOX_STATIC=y I have set them in shepya_android_defoncig or set FEATURE_LIBBUSYBOX_STATIC = y BUILD_LIBBUSYBOX =y in Config.in. But in menuconfig it shows "n" and i can`t find where to set those configs.i want to build busybox with static library how should i do ..

sherpya commented 6 years ago

please avoid static build because you will end with a non dns capable busybox (as stated in the readme), if you want a more compatible binary use API 14 instead of 21