Bug 2464 - gst-ffmpeg do_configure fails with "C compiler test failed"
Summary: gst-ffmpeg do_configure fails with "C compiler test failed"
Status: VERIFIED WORKSFORME
Alias: None
Product: OE-Core
Classification: Build System, Metadata & Runtime
Component: multimedia (show other bugs)
Version: 1.3
Hardware: x86 Multiple
: Medium normal
Target Milestone: 1.3 M4
Assignee: Cristian Iorga
QA Contact:
URL:
Whiteboard:
: 2562 (view as bug list)
Depends on:
Blocks:
 
Reported: 2012-05-16 17:10 UTC by Darren Hart
Modified: 2012-12-06 15:43 UTC (History)
15 users (show)

See Also:
OS type for building Yocto: ---
Type of Regression: ---
Verified:
Documentation change: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Darren Hart 2012-05-16 17:10:50 UTC
Autobuilder build 128:
http://autobuilder.yoctoproject.org:8010/builders/crownbay/builds/128

shell_34 Building crownbay core-image-lsb core-image-lsb-sdk failed
http://autobuilder.yoctoproject.org:8010/builders/crownbay/builds/128/steps/shell_34/logs/stdio

...

Build Configuration:
BB_VERSION        = "1.15.2"
TARGET_ARCH       = "i586"
TARGET_OS         = "linux"
MACHINE           = "crownbay"
DISTRO            = "poky-lsb"
DISTRO_VERSION    = "1.2+snapshot-20120515"
TUNE_FEATURES     = "m32 core2"
TARGET_FPU        = ""
meta              
meta-yocto        = "master:12b4543ac9f54c0db0ee4a7ee546a71946a051f8"
meta-intel        
meta-crownbay     
meta-tlk          = "master:96df30005bbc8095713d03956e7f9058a2e97561"
meta-qt3          = "master:f8475d5c5935695d4d1dfff1d7be30f49e162094"

...

gst-ffmpeg_0.10.13.bb, do_configure:

...

| Configuring included Libav instance with args --prefix=/usr
--disable-ffserver --disable-ffplay        --disable-ffmpeg
--disable-ffprobe --enable-static --enable-pic 	--disable-encoder=flac
--disable-decoder=cavs --disable-protocols --disable-devices
--disable-network --disable-hwaccels --disable-filters --disable-doc
--enable-optimizations --enable-postproc         --enable-gpl
--disable-yasm --enable-cross-compile         --target-os=linux
--arch=i586 --cross-prefix=i586-poky-linux- --target-os=linux
| i586-poky-linux-gcc is unable to create an executable file.
| C compiler test failed.
|
| If you think configure made a mistake, make sure you are using the latest
| version from Git.  If the latest version fails, report the problem to the
| libav-user@libav.org mailing list or IRC #libav on irc.freenode.net.
| Include the log file "config.log" produced by configure as this will help
| solving the problem.
| config.status: error: Failed to configure embedded Libav tree
| ERROR: oe_runconf failed
NOTE: package gst-ffmpeg-0.10.13-r3: task do_configure: Failed
ERROR: Task 5131
(/srv/home/pokybuild/yocto-autobuilder/yocto-slave/crownbay/build/meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.13.bb,
do_configure) failed with exit code '1'

Nitin commented, "I have seen similar failures with specific toolchain tunes. This is probably missing parameters observed by configure in CC or CFLAGS."
Comment 1 Tom Zanussi 2012-06-11 19:21:54 UTC
*** Bug 2562 has been marked as a duplicate of this bug. ***
Comment 2 valentin 2012-06-12 12:32:33 UTC
 Anyone know how to reproduce this on a localmachine?
Comment 3 Kai Kang 2012-06-14 06:25:27 UTC
I can't reproduce the failure.
Host: ubuntu 11.10 x86-64
meta-oe: 7f017cab0b3e4d5a4fc356eccd8eb8429b0531d0
meta-intel: bd00e28dd54b06a1f01f186be168d3af872f96d4

gst-ffmpeg do configure successfully.
Log:
-----------
...
Configuring included Libav instance with args --prefix=/usr --disable-ffserver --disable-ffplay        --disable-ffmpeg --disable-ffprobe --enable-static --enable-pic  --disable-encoder=flac --disable-decoder=cavs --disable-protocols --disable-devices     --disable-network --disable-hwaccels --disable-filters --disable-doc    --enable-optimizations --enable-postproc         --enable-gpl --disable-yasm --enable-cross-compile         --target-os=linux --arch=i586 --cross-prefix=i586-poky-linux- --target-os=linux
install prefix            /usr
source path               /mnt/sda8/poky-neil/build-crownbay/tmp/work/core2-poky-linux/gst-ffmpeg-0.10.13-r3/gst-ffmpeg-0.10.13/gst-libs/ext/libav                                                            
C compiler                i586-poky-linux-gcc
ARCH                      x86 (generic)
big-endian                no
runtime cpu detection     no
yasm                      no
...
--------------
Comment 4 Darren Hart 2012-06-14 16:29:07 UTC
I'll try and reproduce in my environment today. If I can't, we may just have to close and open again if it comes back.
Comment 5 valentin 2012-06-18 12:39:14 UTC
@Darren: if you reproduce it, please reopen it.
Comment 6 Laurentiu Serban 2012-06-19 10:16:51 UTC
Verified
Comment 7 Radu Moisan 2012-06-20 11:22:36 UTC
this may be related to https://bugzilla.yoctoproject.org/show_bug.cgi?id=2496 I found there on and off reproducible usecases which lead me to belive that we may be dealing with a build system problem.
Comment 8 Richard Purdie 2012-07-12 07:14:02 UTC
This appeared on the autobuilder again. This time we have the config.log information which noted that the failure in the compiler generated the error:

| i586-poky-linux-gcc -O2 -pipe -g -feliminate-unused-debug-types -c -o /tmp/ffconf.UxFeMSHM.o /tmp/ffconf.LWWLpXcj.c
| i586-poky-linux-gcc -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -o /tmp/ffconf.3lsoKUyC /tmp/ffconf.UxFeMSHM.o
| /srv/home/pokybuild/yocto-autobuilder/yocto-slave/crownbay/build/build/tmp/sysroots/x86_64-linux/usr/bin/core2-poky-linux/../../libexec/core2-poky-linux/gcc/i586-poky-linux/4.7.2/ld: cannot find crtbegin.o: No such file or directory
| /srv/home/pokybuild/yocto-autobuilder/yocto-slave/crownbay/build/build/tmp/sysroots/x86_64-linux/usr/bin/core2-poky-linux/../../libexec/core2-poky-linux/gcc/i586-poky-linux/4.7.2/ld: cannot find -lgcc
| collect2: error: ld returned 1 exit status

(from http://autobuilder.yoctoproject.org:8010/builders/crownbay/builds/168/steps/shell_48/logs/stdio)

so this looks like something removed some file from the sysroot that the configure script expected to be there. crtbegin.o is installed as part of libgcc which in this log was installed from sstate. Nothing ran between the start of gst-ffmpeg do_configure and the end of it which would account for libgcc being uninstalled.
Comment 9 Richard Purdie 2012-07-12 07:27:02 UTC
Looking at the failed commandline, this is a sysroot relocation issue. There is no --sysroot option passed to the compiler commandline and there should be. I'm guessing this is why this is failing.
Comment 10 Cristian Iorga 2012-10-04 06:31:14 UTC
Investigation started.
Comment 11 Cristian Iorga 2012-10-04 14:28:48 UTC
Tested in the following configuration:

ubik@sentry:/mnt/Yo/yoctoproject/build$ bitbake gst-ffmpeg
Loading cache: 100% |########################################################################################################################################################################| ETA:  00:00:00
Loaded 1131 entries from dependency cache.

Build Configuration:
BB_VERSION        = "1.16.0"
TARGET_ARCH       = "i586"
TARGET_OS         = "linux"
MACHINE           = "qemux86"
DISTRO            = "poky"
DISTRO_VERSION    = "1.2+snapshot-20121004"
TUNE_FEATURES     = "m32 i586"
TARGET_FPU        = ""
meta              
meta-yocto        
meta-yocto-bsp    = "master:09aaad16be178bd675750aa6cfe7a373d7c9a8a6"

NOTE: Resolving any missing task queue dependencies
NOTE: Preparing runqueue
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
NOTE: Tasks Summary: Attempted 1362 tasks of which 1350 didn't need to be rerun and all succeeded.

Tested as a part of a core-image-lsb also.

No issues.

do_configure task is executed correctly.

Same on qemux86-64 machine.
Comment 12 Alexandru Georgescu 2012-10-09 12:44:07 UTC
verified with: 

Build Configuration:
BB_VERSION        = "1.16.0"
TARGET_ARCH       = "i586"
TARGET_OS         = "linux"
MACHINE           = "crownbay"
DISTRO            = "poky-lsb"
DISTRO_VERSION    = "1.3"
TUNE_FEATURES     = "m32 core2"
TARGET_FPU        = ""
meta
meta-yocto
meta-yocto-bsp    = "<unknown>:<unknown>"
meta-qt3          = "master:c86fb1727ae09526c442ec29fffde3f010aa70eb"
meta-intel
meta-crownbay     = "master:2bd31135bdcdda19dabdf69706d9a38d5872e1fe"
Comment 13 Tom Zanussi 2012-12-06 15:43:37 UTC
*** Bug 3536 has been marked as a duplicate of this bug. ***