This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.
See the CrossGCC FAQ for lots more information.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
I'm currently struggling with crosstool trying to compile the subjects' toolchain. The core-gcc seems to miss libiberty.a; however, libiberty.a is available in $RESULT_TOP/lib.
The one in $RESULT_TOP/lib is probably compiled for the target; it's not the one the core-gcc needs.
I think I've seen this problem before, but I forget the circumstances. Maybe gcc is confused, and thinks you're not building a cross-compiler? What kind of machine are you building on?
Basically, i applied the 0.37-nptl patch from contrib. I then had to modify the section in crosstool.sh where pthreadtypes.h gets copied:
#cp ${GLIBC_DIR}/nptl/sysdeps/unix/sysv/linux/${ARCH}/bits/pthreadtypes.h $HEADERDIR/bits/pthreadtypes.h case $TARGET in sparc* ) pthreadtypes_h=nptl/sysdeps/unix/sysv/linux/sparc/bits/pthreadtypes.h ;; s390* ) pthreadtypes_h=nptl/sysdeps/unix/sysv/linux/s390/bits/pthreadtypes.h ;; powerpc* ) pthreadtypes_h=nptl/sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h ;; i386* ) pthreadtypes_h=nptl/sysdeps/unix/sysv/linux/i386/bits/pthreadtypes.h ;; i686* ) pthreadtypes_h=nptl/sysdeps/unix/sysv/linux/i386/bits/pthreadtypes.h ;; esac test ! -f $HEADERDIR/bits/pthreadtypes.h && cp ${GLIBC_DIR}/${pthreadtypes_h} $HEADERDIR/bits/pthreadtypes.h
I hope this was o.k.
Somebody else posted a similar change; I'm attaching it, since for some reasons his messages aren't being archived by the mailing list archive at sources.redhat.com.
gcc -c -g -DIN_GCC -DCROSS_COMPILE -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -DHAVE_CONFIG_H -DGENERATOR_FILE -I. -Ibuild -I/home/ashaepe/crosstool/crosstool-0.38/build/powerpc-860-linux-gnu/gcc-4.0.1-glibc-2.3.5/gcc-4.0.1/gcc -I/home/ashaepe/crosstool/crosstool-0.38/build/powerpc-860-linux-gnu/gcc-4.0.1-glibc-2.3.5/gcc-4.0.1/gcc/build -I/home/ashaepe/crosstool/crosstool-0.38/build/powerpc-860-linux-gnu/gcc-4.0.1-glibc-2.3.5/gcc-4.0.1/gcc/../include -I/home/ashaepe/crosstool/crosstool-0.38/build/powerpc-860-linux-gnu/gcc-4.0.1-glibc-2.3.5/gcc-4.0.1/gcc/../libcpp/include \ -o build/errors.o /home/ashaepe/crosstool/crosstool-0.38/build/powerpc-860-linux-gnu/gcc-4.0.1-glibc-2.3.5/gcc-4.0.1/gcc/errors.c make: *** Keine Regel vorhanden, um das Target »../build-i686-host_pc-linux-gnu/libiberty/libiberty.a«, benötigt von »build/genmodes«, zu erstellen. Schluss. make: Leaving directory `/home/ashaepe/crosstool/crosstool-0.38/build/powerpc-860-linux-gnu/gcc-4.0.1-glibc-2.3.5/build-gcc-core-shared/gcc'
Maybe Khem Raj can comment... he's been building ppc64 nptl toolchains. - Dan
-- Trying to get a job as a c++ developer? See http://kegel.com/academy/getting-hired.html
Message-ID: <42E7222D.6070900@mvista.com> Date: Tue, 26 Jul 2005 22:57:01 -0700 From: Khem Raj <kraj@mvista.com> To: crossgcc@sources.redhat.com Subject: [PATCH] pthreadtypes.h not found NPTL patch I encountered a problem while building ppc64 NPTL toolchain. The copy operation for pthreadtypes.h was assuming that sysdeps has same sub directory name as ${ARCH} variable meant for linux part. However this is not true in case of ppc64/ppc where the sysdeps directory is called 'powerpc' similarily for sparc and sparc64 The build would fail complaining about nptl/sysdeps/unix/sysv/linux/ppc64/bits/pthreadtypes.h not founds This patch corrects the problem. This patch may be incorporated into the NPTL patch. --- crosstool-0.37/crosstool.sh.orig 2005-07-26 22:48:21.000000000 -0700 +++ crosstool-0.37/crosstool.sh 2005-07-26 16:17:07.000000000 -0700 @@ -453,20 +453,31 @@ if grep -q 'gcc-[34]' ${GCC_CORE_DIR}/Ch # will have to manually be copied from under the tree of the desired # target pthread implementation. cp ${GLIBC_DIR}/nptl/sysdeps/pthread/pthread.h $HEADERDIR/pthread.h - cp ${GLIBC_DIR}/nptl/sysdeps/unix/sysv/linux/${ARCH}/bits/pthreadtypes.h + pthreadtypes_h=nptl/sysdeps/unix/sysv/linux/${ARCH}/bits/pthreadtypes.h # On s390, powerpc and sparc we also require bits/wordsize.h. case $TARGET in sparc* | s390* | powerpc* ) case $TARGET in - sparc64* ) wordsize_h=sysdeps/sparc/sparc64/bits/wordsize.h ;; - sparc* ) wordsize_h=sysdeps/sparc/sparc32/bits/wordsize.h ;; - s390x* ) wordsize_h=sysdeps/s390/s390x/bits/wordsize.h ;; - s390* ) wordsize_h=sysdeps/s390/s390/bits/wordsize.h ;; - powerpc64* ) wordsize_h=sysdeps/powerpc/powerpc64/bits/wordsize.h ;; - powerpc* ) wordsize_h=sysdeps/powerpc/powerpc32/bits/wordsize.h ;; + sparc64* ) wordsize_h=sysdeps/sparc/sparc64/bits/wordsize.h + pthreadtypes_h=nptl/sysdeps/unix/sysv/linux/sparc/bits/pthreadtypes.h + ;; + sparc* ) wordsize_h=sysdeps/sparc/sparc32/bits/wordsize.h + pthreadtypes_h=nptl/sysdeps/unix/sysv/linux/sparc/bits/pthreadtypes.h + ;; + s390x* ) wordsize_h=sysdeps/s390/s390x/bits/wordsize.h + ;; + s390* ) wordsize_h=sysdeps/s390/s390/bits/wordsize.h + ;; + powerpc64* ) wordsize_h=sysdeps/powerpc/powerpc64/bits/wordsize.h + pthreadtypes_h=nptl/sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h + ;; + powerpc* ) wordsize_h=sysdeps/powerpc/powerpc32/bits/wordsize.h + pthreadtypes_h=nptl/sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h + ;; esac test ! -f $HEADERDIR/bits/wordsize.h && cp ${GLIBC_DIR}/${wordsize_h} $HEADERDIR/bits/wordsize.h + cp ${GLIBC_DIR}/${pthreadtypes_h} $HEADERDIR/bits/pthreadtypes.h ;; esac fi # GLIBC_ADDONS_NPTL
------ Want more information? See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/ Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |