Google Nexus 5 — B2G build for Nexus5: configure: error: Building ICU requires either yasm or a GNU assembler. If you do not have either of those available for this ..

  • Replies:0
ashish
  • Forum posts: 2

Mar 27, 2018, 8:07:36 AM via Website

want to build B2G for nexus 5.

Steps in URL:
1) Clone B2G repository
git clone git://github.com/mozilla-b2g/B2G.git && cd B2G
2)Configure username and Email
3)./config.sh nexus 5 (It took almost 10 hours to complete)
4) ./build.sh
During build facing faced android toolchain issue, so i downloaded android_ndk toolchain and configure PATH for cross compiler.

I am sharing failed logs

checking whether the C compiler (/usr/bin/ccache /home/systebui/android_ndk/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc -std=gnu99 -fno-short-enums -fno-exceptions -L/home/systebui/B2G/out/target/product/hammerhead/obj/lib -Wl,-rpath-link=/home/systebui/B2G/out/target/product/hammerhead/obj/lib -L/home/systebui/android_ndk/platforms/android-19/arch-arm/usr/lib -Wl,-rpath-link=/home/systebui/android_ndk/platforms/android-19/arch-arm/usr/lib --sysroot=/home/systebui/android_ndk/platforms/android-19/arch-arm -Wl,--allow-shlib-undefined ) works... yes
checking whether the C compiler (/usr/bin/ccache /home/systebui/android_ndk/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc -std=gnu99 -fno-short-enums -fno-exceptions -L/home/systebui/B2G/out/target/product/hammerhead/obj/lib -Wl,-rpath-link=/home/systebui/B2G/out/target/product/hammerhead/obj/lib -L/home/systebui/android_ndk/platforms/android-19/arch-arm/usr/lib -Wl,-rpath-link=/home/systebui/android_ndk/platforms/android-19/arch-arm/usr/lib --sysroot=/home/systebui/android_ndk/platforms/android-19/arch-arm -Wl,--allow-shlib-undefined ) is a cross-compiler... yes
checking whether we are using GNU C... yes
checking whether /usr/bin/ccache /home/systebui/android_ndk/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc -std=gnu99 accepts -g... yes
checking for c++... /usr/bin/ccache /home/systebui/android_ndk/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-g++ -std=gnu++11
checking whether the C++ compiler (/usr/bin/ccache /home/systebui/android_ndk/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-g++ -std=gnu++11 -fno-short-enums -fno-exceptions -DMOZ_ENABLE_JS_DUMP -include /home/systebui/B2G/gonk-misc/Unicode.h -L/home/systebui/B2G/out/target/product/hammerhead/obj/lib -Wl,-rpath-link=/home/systebui/B2G/out/target/product/hammerhead/obj/lib -L/home/systebui/android_ndk/platforms/android-19/arch-arm/usr/lib -Wl,-rpath-link=/home/systebui/android_ndk/platforms/android-19/arch-arm/usr/lib --sysroot=/home/systebui/android_ndk/platforms/android-19/arch-arm -Wl,--allow-shlib-undefined ) works... yes
checking whether the C++ compiler (/usr/bin/ccache /home/systebui/android_ndk/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-g++ -std=gnu++11 -fno-short-enums -fno-exceptions -DMOZ_ENABLE_JS_DUMP -include /home/systebui/B2G/gonk-misc/Unicode.h -L/home/systebui/B2G/out/target/product/hammerhead/obj/lib -Wl,-rpath-link=/home/systebui/B2G/out/target/product/hammerhead/obj/lib -L/home/systebui/android_ndk/platforms/android-19/arch-arm/usr/lib -Wl,-rpath-link=/home/systebui/android_ndk/platforms/android-19/arch-arm/usr/lib --sysroot=/home/systebui/android_ndk/platforms/android-19/arch-arm -Wl,--allow-shlib-undefined ) is a cross-compiler... yes
checking whether we are using GNU C++... yes
checking whether /usr/bin/ccache /home/systebui/android_ndk/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-g++ -std=gnu++11 accepts -g... yes
checking for /home/systebui/android_ndk/toolchains//bin/arm-linux-androideabi-ranlib... no
checking for /home/systebui/android_ndk/toolchains//bin/arm-linux-androideabi-ar... no
checking for /home/systebui/android_ndk/toolchains//bin/arm-linux-androideabi-as... no
checking for /home/systebui/android_ndk/toolchains//bin/arm-linux-androideabi-ld... no
checking for /home/systebui/android_ndk/toolchains//bin/arm-linux-androideabi-strip... no
checking for /home/systebui/android_ndk/toolchains//bin/arm-linux-androideabi-windres... no
checking for /home/systebui/android_ndk/toolchains//bin/arm-linux-androideabi-otool... no
checking for /home/systebui/android_ndk/toolchains//bin/arm-linux-androideabi-objcopy... no
checking for X... no
checking whether alignment flag (-mno-unaligned-access) is supported... checking whether the chosen combination of compiler flags (-march=armv7-a -mthumb -mfpu=neon -mfloat-abi=softfp -mno-unaligned-access) works... yes
checking for ARM SIMD support in compiler... yes
checking ARM version support in compiler... 7
checking for ARM NEON support in compiler... yes
checking for --noexecstack option to as... yes
checking for -z noexecstack option to ld... yes
checking for -z text option to ld... yes
checking for --build-id option to ld... yes
checking for --ignore-unresolved-symbol option to ld... no
checking if toolchain supports -mssse3 option... no
checking if toolchain supports -msse4.1 option... no
checking whether the linker supports Identical Code Folding... yes
checking whether removing dead symbols breaks debugging... no
checking for PIE support... yes
checking for working const... yes
checking for mode_t... yes
checking for off_t... yes
checking for pid_t... yes
checking for size_t... yes
checking whether 64-bits std::atomic requires -latomic... do not know; assuming no
checking for dirent.h that defines DIR... yes
checking for opendir in -ldir... no
checking for sockaddr_in.sin_len... false
checking for sockaddr_in6.sin6_len... false
checking for sockaddr.sa_len... false
checking for gethostbyname_r in -lc_r... no
checking for library containing dlopen... none required
checking for dlfcn.h... yes
checking for dladdr... yes
checking for memmem... yes
checking for socket in -lsocket... no
checking for pthread_create in -lpthreads... no
checking for pthread_create in -lpthread... no
checking for pthread_create in -lc_r... no
checking for pthread_create in -lc... yes
checking whether /usr/bin/ccache /home/systebui/android_ndk/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc -std=gnu99 accepts -pthread... no
checking whether /usr/bin/ccache /home/systebui/android_ndk/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc -std=gnu99 accepts -pthreads... no
checking for pthread.h... yes
checking whether /usr/bin/ccache /home/systebui/android_ndk/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc -std=gnu99 needs -traditional... no
checking for 8-bit clean memcmp... no
checking for stat64... no
checking for lstat64... no
checking for truncate64... no
checking for statvfs64... no
checking for statvfs... yes
checking for statfs64... no
checking for statfs... yes
checking for getpagesize... no
checking for gmtime_r... yes
checking for localtime_r... yes
checking for arc4random... yes
checking for arc4random_buf... yes
checking for mallinfo... yes
checking for gettid... yes
checking for lchown... yes
checking for setpriority... yes
checking for strerror... yes
checking for syscall... yes
checking for clock_gettime(CLOCK_MONOTONIC)...
checking for pthread_cond_timedwait_monotonic_np...
checking for wcrtomb... yes
checking for mbrtowc... yes
checking for res_ninit()... no
checking for iconv in -lc... no
checking for iconv in -liconv... no
checking for libiconv in -liconv... no
checking for iconv()... target Prebuilt: gaia (out/target/product/hammerhead/obj/DATA/gaia_intermediates/gaia)
no
checking for nl_langinfo and CODESET... no
checking for an implementation of va_copy()... yes
checking whether va_list can be copied by value... yes
checking for ARM EABI... yes
checking whether the C++ "using" keyword resolves ambiguity... yes
checking for C++ dynamic_cast to void*... no
checking for thread keyword for TLS variables... yes
checking for __attribute
((always_inline))... yes
checking for LC_MESSAGES... Gaia install path: out/target/product/hammerhead/data/local/apps
mkdir -p out/target/product/hammerhead/data/local out/target/product/hammerhead/data/local
rm -rf out/target/product/hammerhead/data/local/apps
yes
checking for localeconv... no
checking for malloc.h... yes
checking for strndup... yes
checking for posix_memalign... yes
checking for memalign... yes
checking for malloc_usable_size... yes
checking whether malloc_usable_size definition can use const argument... yes
checking for valloc in malloc.h... yes
checking for valloc in unistd.h... yes
checking NSPR selection... source-tree
checking if app-specific confvars.sh exists... /home/systebui/B2G/gecko/b2g/confvars.sh
configure: warning: No assembler or assembly support for libvpx. Using unoptimized C routines.
checking for wget... wget
checking for valid C compiler optimization flags... yes
checking whether linker creates PT_GNU_RELRO segments... /home/systebui/B2G/gecko/old-configure: 16805: /home/systebui/B2G/gecko/old-configure: /home/systebui/android_ndk/toolchains//bin/arm-linux-androideabi-readelf: not found
no
checking for cxa_demangle... no
checking for unwind.h... yes
checking for _Unwind_Backtrace... yes
checking for -pipe support... yes
checking whether C compiler supports -fprofile-generate... yes
checking what kind of list files are supported by the linker... linkerscript
checking what kind of ordering can be done with the linker... section-ordering-file
checking for posix_fadvise... no
checking for posix_fallocate... no
configure: error: Building ICU requires either yasm or a GNU assembler. If you do not have either of those available for this platform you must use --without-intl-api
DEBUG:
DEBUG: #include
DEBUG: #undef posix_fallocate
DEBUG: /* Override any gcc2 internal prototype to avoid an error. /
DEBUG: /
We use char because int might match the return type of a gcc2
DEBUG: builtin and then its argument prototype would still apply. */
DEBUG: char posix_fallocate();
DEBUG:
DEBUG: int main() {
DEBUG:
DEBUG: /* The GNU C library defines this for functions which it implements
DEBUG: to always fail with ENOSYS. Some functions are actually named
DEBUG: something starting with __ and the normal name is an alias. */
DEBUG: #if defined (__stub_posix_fallocate) || defined (__stub
_posix_fallocate)
DEBUG: choke me
DEBUG: #else
DEBUG: posix_fallocate();
DEBUG: #endif
DEBUG:
DEBUG: ; return 0; }
DEBUG: configure: error: Building ICU requires either yasm or a GNU assembler. If you do not have either of those available for this platform you must use --without-intl-api
ERROR: old-configure failed
* Fix above errors and then restart with\
"make -f client.mk build"
make[3]:
[configure] Error 1
make[2]:
[/home/systebui/B2G/objdir-gecko/Makefile] Error 2
make[1]:
[build] Error 2
make:
[out/target/product/hammerhead/obj/DATA/gecko_intermediates/gecko] Error 2
make: *
Waiting for unfinished jobs....
cd out/target/product/hammerhead/data/local && tar xfz /home/systebui/B2G/out/target/product/hammerhead/obj/DATA/gaia_intermediates/gaia
mkdir -p out/target/product/hammerhead/system/b2g
cp /home/systebui/B2G/gaia/profile/user.js out/target/product/hammerhead/system/b2g/user.js

real 1m58.568s
user 0m28.666s
sys 0m9.658s

Build failed! <

Be the first to answer