This is the mail archive of the crossgcc@sources.redhat.com 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]

Re: configure: error: compiler support for __thread is required


Jean-Christophe Dubois wrote:
OK I succeeded in compiling the all thing (I now need to test it but I
already cross-compiled the Linux Kernel).

Here are my changes so far (against crosstool-0.28-rc32):

glibc-2.3.3-remove_gcc_eh.patch should go in patches/glibc-2.3.3
binutils-2.15-solaris-qsort.patch should go in patches/binutils-2.15

getandpatch.sh.patch and crosstool.sh.patch should be applied to
getandpatch.sh and crosstool.sh respectively.

With these I am able to build a ppc7400/linux
2.6.7/gcc3.4.1/glibc2.3.3/binutils 2.15 crostool chain for a
solaris/sparc host

Thanks for the solaris fix. (I think I've seen that before, but didn't carry it forward to binutils-2.15. I will now.)

The following change is a bit much, though:

--- crosstool.sh	2004-07-06 17:43:14.000000000 -0400
+++ crosstool.sh.jcd	2004-08-18 11:26:31.696913000 -0400
@@ -177,6 +177,7 @@
# autodetect kernel version from contents of Makefile
KERNEL_VERSION=`awk '/^VERSION =/ { print $3 }' $LINUX_DIR/Makefile`
KERNEL_PATCHLEVEL=`awk '/^PATCHLEVEL =/ { print $3 }' $LINUX_DIR/Makefile`
+KERNEL_SUBLEVEL=`awk '/^SUBLEVEL =/ { print $3 }' $LINUX_DIR/Makefile`

case "$KERNEL_VERSION.$KERNEL_PATCHLEVEL.x" in
2.2.x|2.4.x) make ARCH=$ARCH symlinks    include/linux/version.h
@@ -344,7 +345,7 @@
        ${GLIBC_DIR}/configure --prefix=/usr \
	--build=$BUILD --host=$TARGET \
        ${GLIBC_EXTRA_CONFIG} \
-        --without-tls --without-__thread --enable-kernel=2.4.3 \
+        --without-tls --without-__thread --enable-kernel=${KERNEL_VERSION}.${KERNEL_PATCHLEVEL}.${KERNEL_SUBLEVEL} \
        --without-cvs --disable-profile --disable-debug --without-gd \
        $SHARED_MODE \
        --enable-add-ons${GLIBC_ADDON_OPTIONS} --with-headers=$HEADERDIR

This means the resulting toolchain will only be able to generate executables that match more or less exactly the kernel sources it was built with. Are you sure you want that? Some users will expect their programs to be able to run on older kernels (like 2.4.3). - Dan

--
My technical stuff: http://kegel.com
My politics: see http://www.misleader.org for examples of why I'm for regime change

------
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]