[Buildroot] Analysis of build failures
Thomas Petazzoni
thomas.petazzoni at free-electrons.com
Wed Mar 5 10:27:29 UTC 2014
Hello,
On Wed, 5 Mar 2014 08:30:08 +0100 (CET), Thomas Petazzoni wrote:
> x86_64 | <command-line>:0:0: note: t... | TIM | http://autobuild.buildroot.net/results/82e7f26e2e307aeb66a8ff98be3369e04886d226/
Timeout, weird.
> x86_64 | audiofile-0.3.6 | NOK | http://autobuild.buildroot.net/results/ee48919bb9d0651642b3a1b547cfbd2c5ef2a8dd/
/home/test/test/3/output/host/opt/ext-toolchain/bin/../lib/gcc/x86_64-buildroot-linux-uclibc/4.7.3/../../../../x86_64-buildroot-linux-uclibc/bin/ld: attempted static link of dynamic object `/home/test/test/3/output/host/opt/ext-toolchain/bin/../lib/gcc/x86_64-buildroot-linux-uclibc/4.7.3/../../../../x86_64-buildroot-linux-uclibc/lib/../lib64/libstdc++.so'
I think a contributor had a look into this some time ago, and came to
conclusions, but I don't remember, I'd have to dig in the archives :/
> bfin | cairo-1.12.10 | NOK | http://autobuild.buildroot.net/results/f1735664c37a72b1b8b137f8bbc6be14624c84e9/
Don't know.
> arm | cairo-1.12.10 | NOK | http://autobuild.buildroot.net/results/77f4cb65535033db9d5184b142d96f2a508a7a5c/
> arm | cairo-1.12.10 | NOK | http://autobuild.buildroot.net/results/da19c46398ba8a0977058d76fe21bd9968f92ac1/
This problem has been around for weeks. Would it be possible for an
OpenGL person to look into this?
cairo-gl-private.h:255:8: error: unknown type name 'GLchar'
> x86_64 | connman-1.21 | NOK | http://autobuild.buildroot.net/results/5c500167a7277fd3f3cdf02e13749f6e98a0e81e/
Might be a symbol redefinition problem in uClibc, when linking
statically. I remember reading some posts about this on the uClibc
mailing list.
/home/test/test/2/output/host/usr/x86_64-buildroot-linux-uclibc/sysroot/usr/lib/libglib-2.0.a(libglib_2_0_la-gstdio.o): In function `g_utime':
gstdio.c:(.text+0x7b): warning: the use of OBSOLESCENT `utime' is discouraged, use `utimes'
/home/test/test/2/output/host/usr/x86_64-buildroot-linux-uclibc/sysroot/usr/lib/libpthread.a(lowlevellock.os): In function `__lll_lock_wait_private':
(.text+0x0): multiple definition of `__lll_lock_wait_private'
/home/test/test/2/output/host/usr/x86_64-buildroot-linux-uclibc/sysroot/usr/lib/libc.a(libc-lowlevellock.os):(.text+0x0): first defined here
/home/test/test/2/output/host/usr/x86_64-buildroot-linux-uclibc/sysroot/usr/lib/libpthread.a(lowlevellock.os): In function `__lll_unlock_wake_private':
(.text+0xa0): multiple definition of `__lll_unlock_wake_private'
/home/test/test/2/output/host/usr/x86_64-buildroot-linux-uclibc/sysroot/usr/lib/libc.a(libc-lowlevellock.os):(.text+0x30): first defined here
collect2: ld returned 1 exit status
> bfin | czmq-b5730c5f8290a611fd3b92... | NOK | http://autobuild.buildroot.net/results/99363a20dc25600460bd4cf169d92c922f55a5f6/
> bfin | czmq-b5730c5f8290a611fd3b92... | NOK | http://autobuild.buildroot.net/results/48ca7dbd47d4231b6b98f490f952533caf888861/
> bfin | czmq-b5730c5f8290a611fd3b92... | NOK | http://autobuild.buildroot.net/results/cc9eafd42f1d7887763b912b2ad785635201be3c/
Yesterday evening, I've started looking into this. Here is a summary of
my findings.
So, we're building for Blackfin FLAT, so static only build. ZeroMQ is a
library written in C++, and czmq is a library around it written in C.
The configure script tests whether a simple application that calls
zmq_init() can be linked properly against the ZeroMQ library. This test
is done by compiling the test application using 'gcc', not 'g++'. While
this test works fine in dynamic link mode (because libzmq as a NEEDED
on libstdc++), it fails in static link mode because it links with
-lzmq, but not -lstdc++. A quick test shows that linking against
-lstdc++ would solve the problem.
So there are apparently two issues:
1/ The libzmq.pc file does not have a Libs.private: -lsdtc++
2/ The configure.ac script of czmq does not call pkg-config with the
--static option. Apparently, the logic in pkg.m4 is not even aware
that it should use --static.
I must say I'm not sure how to fix the problem properly.
> microblaze | dmalloc-5.4.3 | NOK | http://autobuild.buildroot.net/results/d8b4f69e5b19a3d9c1b8e4114e686cff7cfeae2f/
To be looked at by Microblaze people:
{standard input}: Assembler messages:
{standard input}:9306: Error: operation combines symbols in different segments
{standard input}:9307: Error: operation combines symbols in different segments
> arm | eudev-1.3 | NOK | http://autobuild.buildroot.net/results/5190f23b84ca9eec49f1071ccfdb3314f6c4ae5b/
> powerpc | eudev-1.3 | NOK | http://autobuild.buildroot.net/results/624ad8ef30318bfb2de0952c5101cfa2b8d94f76/
> mipsel | eudev-1.3 | NOK | http://autobuild.buildroot.net/results/c4e920b16c57e79df979f00cceaea7c0483f043c/
Fixed by:
http://git.buildroot.net/buildroot/commit/?id=d5604d9c3de6cd0b24db1351227b017fd8a8be75
> arm | gst1-plugins-bad-1.2.3 | NOK | http://autobuild.buildroot.net/results/ac98e35736532c697e1c08e23e1d6800c951ea23/
> arm | gst1-plugins-bad-1.2.3 | NOK | http://autobuild.buildroot.net/results/d02e1843ef90f4b40c99e3b23eddf376f827d46e/
> arm | gst1-plugins-bad-1.2.3 | NOK | http://autobuild.buildroot.net/results/51ea53c39e6c067760c2d1e9c0c7b7bfbbe28be8/
OpenCV problem, to be looked at by Samuel I believe:
/home/test/test/3/output/host/usr/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/include/opencv/cv.h:72:37: fatal error: opencv2/legacy/compat.hpp: No such file or directory
> i686 | host-python3-3.4.0rc1 | NOK | http://autobuild.buildroot.net/results/4dab2c72b9583df03db5b065a7f8a7ca0e6d9181/
> i686 | host-python3-3.4.0rc1 | NOK | http://autobuild.buildroot.net/results/ced5ed9ce2f1742560828999eeb6dc8777729d78/
Parallel installation problem.
> i686 | host-scons-2.3.0 | NOK | http://autobuild.buildroot.net/results/a423aa18e25686474633d6420bf701e1fa637bd0/
> powerpc | host-scons-2.3.0 | NOK | http://autobuild.buildroot.net/results/2eb4783dcc3fd990d37f34f2a146a7c025647bec/
The host python3 problem (SCons only works with Python 2).
> sh4 | libsoc-0.6 | NOK | http://autobuild.buildroot.net/results/1f451a338487a2a3c8a8f9b18540d41b90ee5aac/
> i686 | libsoc-0.6 | NOK | http://autobuild.buildroot.net/results/6735751b31dfe8e3ced80c5d18d816772286d4f7/
> arm | libsoc-0.6 | NOK | http://autobuild.buildroot.net/results/578032aac810d04cced1e8fdf0f6f39d20132de8/
> i686 | libsoc-0.6 | NOK | http://autobuild.buildroot.net/results/1888956c040f56b4d6603f2d2f44ccb7614a87de/
Fixed by:
http://git.buildroot.net/buildroot/commit/?id=41711cfdeda6f5fd9b2531f538f3643854d7d3ea
> sh4a | libxmlrpc-1.25.26 | NOK | http://autobuild.buildroot.net/results/996fc95b302fb6dfc7cd9a468fd395226a36c6c4/
Not sure:
/home/test/test/1/output/host/usr/bin/sh-linux-gnu-gcc -shared -Wl,-soname,libxmlrpc_xmltok.so.3 xmltok.osh xmlrole.osh -o libxmlrpc_xmltok.so.3.25
xmltok.osh: file not recognized: File truncated
collect2: error: ld returned 1 exit status
> arm | lvm2-2.02.103 | NOK | http://autobuild.buildroot.net/results/31a4ba00f9628365f080877079ba8d8120f4f23a/
Needs pkg-config.
> arc | mplayer-1.1.1 | NOK | http://autobuild.buildroot.net/results/9a259663b28ae47ed2bfd15f53b0fc44b5853227/
The architecture of your CPU (arc) is not supported by this configure script
It seems nobody has ported MPlayer to your OS or CPU type yet.
> arm | php-5.5.9 | NOK | http://autobuild.buildroot.net/results/c505587a795cd936ce8d5dda4805c0974a96981e/
> arm | php-5.5.9 | NOK | http://autobuild.buildroot.net/results/59ade0d9290cf623b45cd6fe0d0d56f295588ee0/
checking for fork... no
configure: error: pcntl: fork() not supported by this platform
make: *** [/home/test/test/1/output/build/php-5.5.9/.stamp_configured] Error 1
> arm | samba4-4.1.5 | NOK | http://autobuild.buildroot.net/results/8505e0dd5ecda76071f0ea4f7705a105308a1c20/
Fixed by:
http://git.buildroot.net/buildroot/commit/?id=878c04b8ccc399c0d9c09767eda9b129e3b59a53
> i686 | wget-1.15 | NOK | http://autobuild.buildroot.net/results/3abe178c26dc34a4f6a887ed3abbfcaa8990ce6d/
> sh4 | wget-1.15 | NOK | http://autobuild.buildroot.net/results/a685caa6d3e4850a45360dfe733013ba2d53404c/
*** error: gettext infrastructure mismatch: using a Makefile.in.in from gettext version 0.17 but the autoconf macros are from gettext version 0.18
> bfin | zeromq-3.2.4 | NOK | http://autobuild.buildroot.net/results/047f2f8ac15592d5f78093249eeed14148de4e5e/
Compiler does not provide the necessary intrinsics.
> avr32 | zeromq-3.2.4 | NOK | http://autobuild.buildroot.net/results/7a0be4da26415b05f3d1c9522da703be408bb5f6/
Not sure :/
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
More information about the buildroot
mailing list