Author Topic: Gcc-4.2.1+glibc-2.6.1 Cross Toolchain Available  (Read 9355 times)

ernestus

  • Newbie
  • *
  • Posts: 49
    • View Profile
    • http://
Gcc-4.2.1+glibc-2.6.1 Cross Toolchain Available
« 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

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

Cheers
E
« Last Edit: August 22, 2007, 09:23:25 am by ernestus »
Zaurus SL-C3200 running pdaxii13.

ernestus

  • Newbie
  • *
  • Posts: 49
    • View Profile
    • http://
Gcc-4.2.1+glibc-2.6.1 Cross Toolchain Available
« Reply #1 on: August 22, 2007, 09:11:29 am »
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
« Last Edit: August 22, 2007, 09:35:49 am by ernestus »
Zaurus SL-C3200 running pdaxii13.

ScottYelich

  • Hero Member
  • *****
  • Posts: 992
    • View Profile
    • http://www.zaurususergroup.com/modules.php?opmodload&namephpWiki&filei
Gcc-4.2.1+glibc-2.6.1 Cross Toolchain Available
« Reply #2 on: August 22, 2007, 09:51:34 am »
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

ernestus

  • Newbie
  • *
  • Posts: 49
    • View Profile
    • http://
Gcc-4.2.1+glibc-2.6.1 Cross Toolchain Available
« Reply #3 on: August 22, 2007, 04:04:38 pm »
Quote
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
Zaurus SL-C3200 running pdaxii13.

Civil

  • Full Member
  • ***
  • Posts: 103
    • View Profile
    • http://
Gcc-4.2.1+glibc-2.6.1 Cross Toolchain Available
« Reply #4 on: August 23, 2007, 10:17:50 am »
Quote
linuxthreads being deprecated
use nptl - it is a lot faster.
Zaurus C-3100 ( Gentoo 2007.0 eabi, kernel 2.6.21.6)
http://www.zavrik.info - Russian Zaurus Site.

ernestus

  • Newbie
  • *
  • Posts: 49
    • View Profile
    • http://
Gcc-4.2.1+glibc-2.6.1 Cross Toolchain Available
« Reply #5 on: August 23, 2007, 10:28:55 am »
Quote
Quote
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
« Last Edit: August 23, 2007, 10:36:09 am by ernestus »
Zaurus SL-C3200 running pdaxii13.

ernestus

  • Newbie
  • *
  • Posts: 49
    • View Profile
    • http://
Gcc-4.2.1+glibc-2.6.1 Cross Toolchain Available
« Reply #6 on: August 24, 2007, 04:35:42 am »
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   ( Warning 70MB!)
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
« Last Edit: August 27, 2007, 03:24:23 pm by ernestus »
Zaurus SL-C3200 running pdaxii13.

ScottYelich

  • Hero Member
  • *****
  • Posts: 992
    • View Profile
    • http://www.zaurususergroup.com/modules.php?opmodload&namephpWiki&filei
Gcc-4.2.1+glibc-2.6.1 Cross Toolchain Available
« Reply #7 on: August 24, 2007, 05:51:56 pm »
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/

should be faster to dl ...
« Last Edit: August 25, 2007, 10:11:19 am by ScottYelich »

ernestus

  • Newbie
  • *
  • Posts: 49
    • View Profile
    • http://
Gcc-4.2.1+glibc-2.6.1 Cross Toolchain Available
« Reply #8 on: August 27, 2007, 12:34:38 pm »
Quote
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/

should be faster to dl ...
[div align=\"right\"][a href=\"index.php?act=findpost&pid=166659\"][{POST_SNAPBACK}][/a][/div]


Thanks a lot.
Zaurus SL-C3200 running pdaxii13.

ScottYelich

  • Hero Member
  • *****
  • Posts: 992
    • View Profile
    • http://www.zaurususergroup.com/modules.php?opmodload&namephpWiki&filei
Gcc-4.2.1+glibc-2.6.1 Cross Toolchain Available
« Reply #9 on: August 28, 2007, 01:32:44 pm »
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