GNOME Bugzilla – Bug 737651
android : Failure to build lame
Last modified: 2014-10-02 14:40:49 UTC
lame fails to build properly on android with cerbero. Somehow it can't find the location of crtbegin/crtend. /bin/sh ../libtool --tag=CC --mode=link arm-linux-androideabi-gcc -fuse-ld=gold -Wall -pipe -Wall -g -Os --sysroot=/home/jenkins/workspace/cerbero-android/workdir/android-ndk-r9d/platforms/android-9/arch-arm -I/home/jenkins/workspace/cerbero-android/workdir/android-ndk-r9d/platforms/android-9/arch-arm/usr/include -ffunction-sections -funwind-tables -fstack-protector -no-canonical-prefixes -fPIC -mthumb -fomit-frame-pointer -fno-strict-aliasing -finline-limit=64 -march=armv5te -mtune=xscale -msoft-float -DANDROID -DPIC -D__ARM_ARCH_5__ -D__ARM_ARCH_5T__ -D__ARM_ARCH_5E__ -D__ARM_ARCH_5TE__ -Wa,--noexecstack -version-info 0:0 -no-undefined -L/home/jenkins/workspace/cerbero-android/workdir/dist/android_arm/lib --sysroot=/home/jenkins/workspace/cerbero-android/workdir/android-ndk-r9d/platforms/android-9/arch-arm -fPIC -no-canonical-prefixes -Wl,-no-undefined -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now -Wl,--gc-sections -Wl,-z,nocopyreloc -Wl,-dynamic-linker,/system/bin/linker -L/home/jenkins/workspace/cerbero-android/workdir/android-ndk-r9d/platforms/android-9/arch-arm/usr/lib -o libmp3lame.la -rpath /home/jenkins/workspace/cerbero-android/workdir/dist/android_arm/lib VbrTag.lo bitstream.lo encoder.lo fft.lo gain_analysis.lo id3tag.lo lame.lo newmdct.lo presets.lo psymodel.lo quantize.lo quantize_pvt.lo reservoir.lo set_get.lo tables.lo takehiro.lo util.lo vbrquantize.lo version.lo mpglib_interface.lo ../mpglib/libmpgdecoder.la -lm libtool: link: arm-linux-androideabi-gcc -fuse-ld=gold -shared .libs/VbrTag.o .libs/bitstream.o .libs/encoder.o .libs/fft.o .libs/gain_analysis.o .libs/id3tag.o .libs/lame.o .libs/newmdct.o .libs/presets.o .libs/psymodel.o .libs/quantize.o .libs/quantize_pvt.o .libs/reservoir.o .libs/set_get.o .libs/tables.o .libs/takehiro.o .libs/util.o .libs/vbrquantize.o .libs/version.o .libs/mpglib_interface.o -Wl,--whole-archive ../mpglib/.libs/libmpgdecoder.a -Wl,--no-whole-archive -L/home/jenkins/workspace/cerbero-android/workdir/dist/android_arm/lib -L/home/jenkins/workspace/cerbero-android/workdir/android-ndk-r9d/platforms/android-9/arch-arm/usr/lib -lm -mthumb -march=armv5te -mtune=xscale -msoft-float -Wl,-no-undefined -Wl,-z -Wl,noexecstack -Wl,-z -Wl,relro -Wl,-z -Wl,now -Wl,--gc-sections -Wl,-z -Wl,nocopyreloc -Wl,-dynamic-linker -Wl,/system/bin/linker -Wl,-soname -Wl,libmp3lame.so.0 -o .libs/libmp3lame.so.0.0.0 /home/jenkins/workspace/cerbero-android/workdir/android-ndk-r9d/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.8/../../../../arm-linux-androideabi/bin/ld.gold: error: cannot open crtbegin_so.o: No such file or directory /home/jenkins/workspace/cerbero-android/workdir/android-ndk-r9d/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.8/../../../../arm-linux-androideabi/bin/ld.gold: error: cannot open crtend_so.o: No such file or directory collect2: error: ld returned 1 exit status make[3]: *** [libmp3lame.la] Error 1 make[3]: Leaving directory `/home/jenkins/workspace/cerbero-android/workdir/sources/android_arm/lame-3.99.5/libmp3lame' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/home/jenkins/workspace/cerbero-android/workdir/sources/android_arm/lame-3.99.5/libmp3lame' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/jenkins/workspace/cerbero-android/workdir/sources/android_arm/lame-3.99.5' make: *** [all] Error 2
This sounds familiar to me and I think that's the reason why we added: http://cgit.freedesktop.org/gstreamer/cerbero/commit/?id=d48d028366fbe03ad3ac923a1920d2de7a477fdd Does autoreconf'ing fixes the build?
I challenge you to make autoreconf work with that bizantine package :)
Actually it's not that complex. Saw lame cvs (!) has a patch to make it work with recent auto*. Will tackle that later.
commit d300328a759c8ce42de92e71ec98545afe36b060 Author: Edward Hervey <bilboed@bilboed.com> Date: Thu Oct 2 16:39:04 2014 +0200 recipes/lame: Force autoreconf Requires fixing up configure.ac/Makefile.am to not use stuff from the 1980s. https://bugzilla.gnome.org/show_bug.cgi?id=737651 commit 249a2340d401b1de62e3ec488032dbfad3b27a1a Author: Edward Hervey <bilboed@bilboed.com> Date: Thu Oct 2 16:23:35 2014 +0200 Revert "recipes/package: Don't build lame on android" This reverts commit f3afb39ca43412df4a3b69e81674bd19fbbd704b.