OESF Portables Forum
Model Specific Forums => Sharp Zaurus => Zaurus - pdaXrom => Topic started by: ernestus on August 22, 2007, 06:58:53 am
-
[Updated, see next message in thread, old thread title was "Gcc 4.2.1 + Glibc 2.5 Cross Toolchain Available"]
Hi people.
I've just come back from my holidays (3 weeks in Japan, what a marvellous country, what marvellous people!) and I've retaken this personal project of having Qt4 in pdaXrom, see:
https://www.oesf.org/forums/index.php?showtopic=24389 (https://www.oesf.org/forums/index.php?showtopic=24389)
Well, I've built a new toolchain based on gcc 4.2.1 (the latest one) and glibc 2.5 (not so current, 2.6.1, the latest, gives a lot of problems due to linuxthreads being deprecated in glibc 2.6).
I ended up with a 250Mb monster in my /opt directory . Hopefully the tar.gz package is about 70Mb.
The major drawbacks is that glibc didn't compile with kernel 2.4.x headers (at least I didn't manage to find any way to do that). I am afraid this thing is going to run on the new 2.6 kernel only (there are some more restrictions, like I had to use the headers from the kernel 2.6.16 to achieve a complete build).
Anyway, can somebody tell me where to put a tar.gz of this? I would like the people test it.
The package content::
binutils-2.17
gdb-6.6
glibc-2.5 (bootstrapped in gcc-4.1.2, not in a 3.x series as is usual in arm architectures)
gcc-4.2.1 (c and c++ support, planned fortran and pascal)
libstdc++ v3
and the other misc thing to keep all those programs running.
I didn't have too much idea about the correct parameters for the architecture, so these are the configure command lines, just I leave them here so someone can tell me if I should drop or add something:
gcc configure command line: \"'--cache-file=./config.cache' '--build=i686-host_pc-linux-gnu' '--host=i686-host_pc-linux-gnu' '--target=arm-softfloat-linux-gnueabi' '--prefix=/opt/cross/arm/gcc-4.2.1-glibc-2.5/arm-softfloat-linux-gnueabi' '--with-float=soft' '--with-headers=/opt/cross/arm/gcc-4.2.1-glibc-2.5/arm-softfloat-linux-gnueabi/arm-softfloat-linux-gnueabi/include' '--with-local-prefix=/opt/cross/arm/gcc-4.2.1-glibc-2.5/arm-softfloat-linux-gnueabi/arm-softfloat-linux-gnueabi' '--disable-nls' '--enable-threads=posix' '--enable-symvers=gnu' '--enable-__cxa_atexit' '--enable-shared' '--enable-c99' '--enable-long-long' '--enable-languages=c,c++' '--program-transform-name=s,^,arm-softfloat-linux-gnueabi-,; ' '--srcdir=/srv/sources/z/src/crosstool-0.43/build/arm-softfloat-linux-gnueabi/gcc-4.2.1-glibc-2.5/gcc-4.2.1/gcc' 'CC=gcc' 'CFLAGS=-g -O2' 'GMPINC=' 'GMPLIBS=-lmpfr -lgmp' 'LDFLAGS=' 'build_alias=i686-host_pc-linux-gnu' 'host_alias=i686-host_pc-linux-gnu' 'target_alias=arm-softfloat-linux-gnueabi'\"
glibc:
\"'--prefix=/usr' '--build=i686-pc-linux-gnu' '--host=arm-softfloat-linux-gnueabi' '--without-fp' '--with-tls' '--with-__thread' '--enable-kernel=2.6.0' '--enable-kernel=2.6.4' '--without-cvs' '--disable-profile' '--disable-debug' '--without-gd' '--enable-shared' '--enable-add-ons=yes' '--with-headers=/opt/cross/arm/gcc-4.2.1-glibc-2.5/arm-softfloat-linux-gnueabi/arm-softfloat-linux-gnueabi/include' '--cache-file=config.cache' 'CC=arm-softfloat-linux-gnueabi-gcc ' 'CFLAGS=-O ' 'build_alias=i686-pc-linux-gnu' 'host_alias=arm-softfloat-linux-gnueabi'\"
Any comments on those parameters?
Do the kernel people think this thingy is useful for them?
Any hints what to do next to have Qt4 running?
Btw, completing Qt4 would close the feature request described in case number 200-40:
http://www.pdaxrom.org/?q=node/220 (http://www.pdaxrom.org/?q=node/220)
Cheers
E
-
UPDATED:
I've just logged in my server at home: glibc-2.6.1 build has finished correctly, it was quite tricky. So the toolchain is gcc-4.2.1 + glibc-2.6.1 (both the very latest).
I will make it available for downloading from my home server, be aware, its about 70Mb, and I have a crappy ADSL connection (not more than 40KB/s uploading). May I leave the package somewhere?
Cheers.
E
-
I will gladly mirror to provide a location for people to make copies.
let me know where to grab the items and I will post here with their new location.
Thanks!
Scott
-
I will gladly mirror to provide a location for people to make copies.
let me know where to grab the items and I will post here with their new location.
Thanks!
Scott
[div align=\"right\"][a href=\"index.php?act=findpost&pid=166572\"][{POST_SNAPBACK}][/a][/div]
Thanks Scott, I've sent you the links in a private message.
The only test I've done to the compiler is a self compiling test and a binutils build. both where okay.
Cheers.
E
-
linuxthreads being deprecated
use nptl - it is a lot faster.
-
linuxthreads being deprecated
use nptl - it is a lot faster.
[div align=\"right\"][a href=\"index.php?act=findpost&pid=166615\"][{POST_SNAPBACK}][/a][/div]
The issue is I wasn't able to compile without linuxthreads, even enabling nptl (I know is faster and it has other advantages as well). GLIBC 2.6.1 comes without linuxthreads, and the compilation error was telling me preciselly this: I needed a linuxthread library that wasn't there.
The tarball contains a nptl enabled version of glibc 2.6.1, it was quite tricky to achieve, because as I said, glibc 2.6.1 does not come with linuxthreads.
Have anyone had a look at the compilation parameters? I've built this for pdaXrom and I would like to know if they are compatible with it.
If someone is interested, I also compiled a 64bit version of the toolchain, that is the one I am really using in my desktop. Just ask for it and I will make it available.
E
-
Well, I suppose ScottYelich is busy doing something else, well here are the links:
http://sandia.homelinux.net/public/storage...bc-2.6.1.tar.gz (http://sandia.homelinux.net/public/storage/gcc-4.2.1-glibc-2.6.1.tar.gz) ( Warning 70MB!)
http://sandia.homelinux.net/public/storage/HowToInstall.txt (http://sandia.homelinux.net/public/storage/HowToInstall.txt)
Be patient when downloading, this is my home server and I have a very crappy ADSL connection (you are lucky if having more than 40KB/s)
I would appreciate if somebody mirrors those files.
It would be a good idea if somebody checks the compiler in these areas:
-- Is NPTL working correctly? I had to do some header gymnastics to make it compile.
-- Can you compile to IWMMX? I think the support is in, but I might be wrong.
-- Does it support non EABI platforms?
I am not very familiar with the xcale family, I don't know if I chose the proper parameters.
with your feedback I will be able to launch another iteration.
After the bank holidays (maybe Tuesday or Wednesday) I will start preparing a native environment, compiled optimizing for size instead of speed, so we can use this compiler in the zaurus as well.
E
-
I'm here -- pdaXrom doesn't have a lot of activity -- so I no longer check it daily.
I'm slurping down the files now and I'll post a link when it completes ... at 9% now.
Scott
ok:
http://zaurus.spy.org/tc/ (http://zaurus.spy.org/tc/)
should be faster to dl ...
-
I'm here -- pdaXrom doesn't have a lot of activity -- so I no longer check it daily.
I'm slurping down the files now and I'll post a link when it completes ... at 9% now.
Scott
ok:
http://zaurus.spy.org/tc/ (http://zaurus.spy.org/tc/)
should be faster to dl ...
[div align=\"right\"][a href=\"index.php?act=findpost&pid=166659\"][{POST_SNAPBACK}][/a][/div]
Thanks a lot.
-
actually, it's thank you ... for the time and effort to work on this toolchain --
copying the files and letting them sit on a host with a fast link doesn't take
any real effort.
any time you have a new version, just pm me and give me a day or two
(to stop by here) and I'll copy it up. If youneed faster turn around,
pm me and i'll tell you how to contact me.
Scott