[oe] Error building gcc-cross
martin mangard
martin at mangard.at
Tue Jan 5 17:00:10 UTC 2010
hello
I wanna run an application which depends on libstdc++.so.5. I use
the default x86-machine configuration (i486) of the
"org.openembedded.dev" branch to build the image. The default
provider for the libstdc++ is in my case "gcc-cross_4.3.4.bb" which
successfully builds "libstdc++.so.6"
I would like to create a libstdc++ -compatibility package which
provides an additional binary of the older version of libstdc++.
I started to play with the gcc-cross recipe. "bitbake -b
gcc-cross_3.4.4.bb" leaded to the following error.
.
.
| ccache gcc -DPACKAGE=\"zlib\" -DVERSION=\"1.1.4\" -DHAVE_UNISTD_H=1
-DHAVE_GETPAGESIZE=1 -DHAVE_MMAP=1 -DHAVE_MEMCPY=1 -DHAVE_STRERROR=1
-DHAVE_UNISTD_H=1 -I.
-I/media/disk/mydistro/output_mangard/work/i486-angstrom-linux/gcc-cross-3.4.4-r14.1/gcc-3.4.4/zlib
-isystem/media/disk/mydistro/output_mangard/staging/i686-linux/usr/include
-O2 -g -m64 -c
/media/disk/mydistro/output_mangard/work/i486-angstrom-linux/gcc-cross-3.4.4-r14.1/gcc-3.4.4/zlib/adler32.c
| In file included from /usr/include/features.h:354,
| from /usr/include/sys/types.h:27,
| from
/media/disk/mydistro/output_mangard/work/i486-angstrom-linux/gcc-cross-3.4.4-r14.1/gcc-3.4.4/zlib/zconf.h:239,
| from
/media/disk/mydistro/output_mangard/work/i486-angstrom-linux/gcc-cross-3.4.4-r14.1/gcc-3.4.4/zlib/zlib.h:34,
| from
/media/disk/mydistro/output_mangard/work/i486-angstrom-linux/gcc-cross-3.4.4-r14.1/gcc-3.4.4/zlib/adler32.c:8:
| /usr/include/gnu/stubs.h:9:27: error: gnu/stubs-64.h: No such file
or directory
| make[3]: *** [adler32.o] Error 1
.
.
.
I disabled FORTRAN and JAVA which is also disabled for higher
versions of the gcc recipes and this error disappeared but the build
process stopped again with another error :
.
.
.
.
| make[1]: Leaving directory
`/media/disk/mydistro/output_mangard/work/i486-angstrom-linux/gcc-cross-3.4.4-r14.1/gcc-3.4.4/build.i686-linux.i486-angstrom-linux/gcc'
| Checking multilib configuration...
| /bin/sh /media/disk/mydistro/output_mangard/work/i486-angstrom-linux/gcc-cross-3.4.4-r14.1/gcc-3.4.4/mkinstalldirs
i486-angstrom-linux/libstdc++-v3 ; \
| rm -f i486-angstrom-linux/libstdc++-v3/Makefile || : ; \
| cp multilib.out i486-angstrom-linux/libstdc++-v3/multilib.out
| mkdir -p -- i486-angstrom-linux/libstdc++-v3
| i486-angstrom-linux-gcc: No such file or directory
| i486-angstrom-linux-gcc: No such file or directory
| i486-angstrom-linux-gcc: No such file or directory
| Configuring in i486-angstrom-linux/libstdc++-v3
| configure: creating cache ./config.cache
| checking build system type... i686-pc-linux-gnu
| checking host system type... i486-angstrom-linux-gnu
| checking target system type... i486-angstrom-linux-gnu
| checking for a BSD-compatible install...
/media/disk/mydistro/output_mangard/staging/i686-linux/usr/bin/install
-c
| checking whether build environment is sane... yes
| checking for gawk... gawk
| checking whether make sets $(MAKE)... yes
| checking for i486-angstrom-linux-strip... strip
| checking for i486-angstrom-linux-gcc... ccache
i486-angstrom-linux-gcc -march=i486 -march=i486
-B/media/disk/mydistro/output_mangard/cross/i486/i486-angstrom-linux/bin/
-B/media/disk/mydistro/output_mangard/cross/i486/i486-angstrom-linux/lib/
-isystem /media/disk/mydistro/output_mangard/cross/i486/i486-angstrom-linux/include
-isystem /media/disk/mydistro/output_mangard/cross/i486/i486-angstrom-linux/sys-include
| checking for suffix of object files... configure: error: cannot
compute suffix of object files: cannot compile
| See `config.log' for more details.
| make: *** [configure-target-libstdc++-v3] Error 1
| FATAL: oe_runmake failed
NOTE: Task failed:
/media/disk/mydistro/output_mangard/work/i486-angstrom-linux/gcc-cross-3.4.4-r14.1/temp/log.do_compile.32390
ERROR: TaskFailed event exception, aborting
ERROR: Build of
/media/disk/mydistro/openembedded/recipes/gcc/gcc-cross_3.4.4.bb
do_compile failed
ERROR: Task 7 (/media/disk/mydistro/openembedded/recipes/gcc/gcc-cross_3.4.4.bb,
do_compile) failed
NOTE: Tasks Summary: Attempted 6 tasks of which 0 didn't need to be
rerun and 1 failed.
ERROR: '/media/disk/mydistro/openembedded/recipes/gcc/gcc-cross_3.4.4.bb' failed
.
.
.
.
This is the content of my actual gcc-cross_3.4.4.bb:
#start
PR = "${INC_PR}.1"
FORTRAN = ""
JAVA=""
require gcc-${PV}.inc
require gcc-cross.inc
require gcc-configure-cross.inc
require gcc-package-cross.inc
#stop
Is there another recipe to build libstdc++.so.5. ?
How can I adapt gcc-cross_3.4.4.bb to fulfill my needs?
Martin
More information about the Openembedded-devel
mailing list