Tool chain pb
Hi Carlos,
In the hope to rebuild kernel last 2.6(.0-test9-pa6) to test it on the b2k and n4k, I try to follow your Build xc howto with new binutils (ie 2.14.90.0.7-3), glibc (2.3.2.ds1-10) and gcc-3.3 (3.3.2-4) to rebuild first 32bit tools.
(Just change a bit the way to apply debian patches in binutils: adopt glibc method)
For binutils and partial gcc, all works fine. But for glibc which I try to configure as follow:
export PATH=/Sources/parisc-linux/xc/bin:$PATH; \
unset LD_LIBRARY_PATH; unset LD_RUN_PATH; \
export CC=/Sources/parisc-linux/xc/bin/hppa-linux-gcc; \
export CLFAGS="-O2 -g";\
/Sources/parisc-linux/src/glibc/configure --target=hppa-linux \
--host=hppa-linux --prefix=/Sources/parisc-linux/xc/hppa-linux \
--without-cvs --disable-profile --enable-hacker-mode --enable-add-ons \
--with-headers=/Sources/parisc-linux/src/linux/include
failed because:
[...]
checking for long double... yes
checking size of long double... 8
running configure fragment for nptl/sysdeps/pthread
configure: error: compiler support for __thread is required [...]
What do i wrong?
I try to see how dpkg-buildpackage reconfigure glibc and gcc (respectively):
configure' --prefix=/usr '--host=hppa-linux' '--build=hppa-linux' \ '--prefix=/usr' '--without-cvs' '--enable-add-ons=linuxthreads ' \
'--with-headers=/Develop/parisc-linux/sources/glibc-2.3.2.ds1/debian/include'\
'--enable-kernel=2.2.0' \
'CPPFLAGS=-isystem \
Develop/parisc-linux/sources/glibc-2.3.2.ds1/debian/include' \
'build_alias=hppa-linux' 'host_alias=hppa-linux' --cache-file=/dev/null\
--srcdir=/Develop/parisc-linux/sources/glibc-2.3.2.ds1/build-tree/glibc-2.3.2/linuxthreads
(for gcc-snapshot!)
../src/configure -v --enable-languages=c,c++,f77,objc,treelang \
--prefix=/usr/lib/gcc-snapshot --enable-shared --with-system-zlib \
--enable-nls --without-included-gettext --enable-__cxa_atexit \
--enable-clocale=gnu \
--enable-libstdcxx-debug --with-cpp-install-dir=bin --disable-werror \
hppa-linux
but I don't see how can I add 'support for __thread' to gcc.
Any idea?
Thanks in advance for attention,
Joel
Quoted 1 line
but I don't see how can I add 'support for
__thread' to gcc.
this (nptl) is not yet supported on hppa, we've discussed this several times but no one yet has time to work on it.
randolph
Signature · 3 lines
Randolph Chung Debian GNU/Linux Developer, hppa/ia64 ports http://www.tausq.org/
Randolph,
Thanks, I see:
change --enable-add-ons by --enable-add-ons=linuxthreads help to avoid to compile nptl.
Sorry to not being of more help (not enough knowledge to start more hacking about support __thread) :(
Joel
Quoted 7 lines · Randolph Chung
Quoted 1 line
but I don't see how can I add 'support for
__thread' to gcc.this (nptl) is not yet supported on hppa, we've discussed this several times but no one yet has time to work on it.
randolph
Quoted 2 lines
Sorry to not being of more help (not enough knowledge to start more hacking about support
__thread) :(
This is complicated, and requires an in-depth understanding of GCC and binutils.
Dave
Signature · 2 lines
J. David Anglin [email protected] National Research Council of Canada (613) 990-0752 (FAX: 952-6602)
I trust you; i don't want even check :(.
But somewhere there would have no fun if all was sinply portable ;)
Thanks,
Joel
Quoted 7 lines · John David Anglin
Quoted 1 line
Sorry to not being of more help (not enough knowledge to start more hacking about support
__thread) :(This is complicated, and requires an in-depth understanding of GCC and binutils.
Dave
Quoted 2 lines
I trust you; i don't want even check :(.
But somewhere there would have no fun if all was sinply portable ;)
It's not portable because the insn sequences for calls vary from one machine to another. On the PA, there are several sequences for calls on the PA.
Probably, after the libffi port is completed and java is working, we will try to implement the TLS support.
Dave
Signature · 2 lines
J. David Anglin [email protected] National Research Council of Canada (613) 990-0752 (FAX: 952-6602)
Quoted 11 lines · John David Anglin
Quoted 2 lines
I trust you; i don't want even check :(.
But somewhere there would have no fun if all was sinply portable ;)It's not portable because the insn sequences for calls vary from one machine to another. On the PA, there are several sequences for calls on the PA.
Probably, after the libffi port is completed and java is working, we will try to implement the TLS support.
Dave,
Just to have an overview, is there another risc platform (sparc, ia64, ...) on which it is already implemented?
Thanks,
Joel
Quoted 2 lines
Just to have an overview, is there another risc platform (sparc, ia64, ...) on which it is already implemented?
Yes, I believe that it is implemented on sparc and ia64. For further info, consult
- Prelink on HPPA, requiring some binutils/glibc changes
= http://freshmeat.net/projects/prelink/?topic_id=253
- NTPL on HPPA, requiring gcc/binutils/glibc changes = http://people.redhat.com/drepper/nptl-design.pdf
= http://people.redhat.com/drepper/tls.pdf
There was some discussion of this on the list back in January.
Dave
Signature · 2 lines
J. David Anglin [email protected] National Research Council of Canada (613) 990-0752 (FAX: 952-6602)
On Sun, 2003-11-23 14:53:03 -0500, John David Anglin <[email protected]> wrote in message <[email protected]>:
Quoted 5 lines
Quoted 2 lines
Sorry to not being of more help (not enough knowledge to start more hacking about support
__thread) :(This is complicated, and requires an in-depth understanding of GCC and binutils.
I thrust you - bad for me; I'm currently looking at vax-linux, where we use an quite dated compiler...
MfG, JBG
Signature · 4 lines
Jan-Benedict Glaw [email protected] . +49-172-7608481 "Eine Freie Meinung in einem Freien Kopf | Gegen Zensur | Gegen Krieg fuer einen Freien Staat voll Freier Bürger" | im Internet! | im Irak! ret = do_actions((curr | FREE_SPEECH) & ~(NEW_COPYRIGHT_LAW | DRM | TCPA));
Quoted 5 lines
Quoted 2 lines
This is complicated, and requires an in-depth understanding of GCC and binutils.
I thrust you - bad for me; I'm currently looking at vax-linux, where we use an quite dated compiler...
There is one outstanding PR for the vax which causes labels to be deleted after a case insn. If this gets fixed, you probably should be able to switch to GCC 3.4. I know C builds at -O1.
Dave
Signature · 2 lines
J. David Anglin [email protected] National Research Council of Canada (613) 990-0752 (FAX: 952-6602)
[parisc-linux] [OT] VAX toolchain (was: Tool chain pb)
On Sun, 2003-11-23 16:45:50 -0500, John David Anglin <[email protected]> wrote in message <[email protected]>:
Quoted 6 lines
Quoted 2 lines
I thrust you - bad for me; I'm currently looking at vax-linux, where we use an quite dated compiler...
There is one outstanding PR for the vax which causes labels to be deleted after a case insn. If this gets fixed, you probably should be able to switch to GCC 3.4. I know C builds at -O1.
Not even HEAD binutils will work unpatched for vax-linux (it's missing Linux glue code as well as configure need to recognize vax-linux (or vax-dec-linux-gnu)... It's just that there are really little people interested in Linux on a VAX and thus, even all the work needed to keep catching up with HEAD is a hard time...
However, *BSD does already support VAX somewhat and I hope that we maybe can profit from that fact, esp for GCC.
MfG, JBG
Signature · 4 lines
Jan-Benedict Glaw [email protected] . +49-172-7608481 "Eine Freie Meinung in einem Freien Kopf | Gegen Zensur | Gegen Krieg fuer einen Freien Staat voll Freier Bürger" | im Internet! | im Irak! ret = do_actions((curr | FREE_SPEECH) & ~(NEW_COPYRIGHT_LAW | DRM | TCPA));