[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

RE: outdated arm-linux-gnueabi compiler requirement



Hi,

I think I made more progress...think it's more glibc problem:

On the Platform of the device:
/mnt/rwfs # /lib/libc.so.6
GNU C Library stable release version 2.3.5, by Roland McGrath et al.
Copyright (C) 2005 Free Software Foundation, Inc.
Compiled by GNU CC version 4.0.0 (DENX ELDK 4.1 4.0.0).
Compiled on a Linux >>2.4.20-20.7<< system on 2007-01-21.
Available extensions:
        GNU libio by Per Bothner
        crypt add-on version 2.1 by Michael Glad and others
        linuxthreads-0.10 by Xavier Leroy
        BIND-8.2.3-T5B
        libthread_db work sponsored by Alpha Processor Inc
        NIS(YP)/NIS+ NSS modules 0.19 by Thorsten Kukuk

When I try to execute it in debug:
/mnt/rwfs/home # LD_DEBUG=all /lib/ld-*.so ./hello4  et v
      1113:     file=./hello4 [0];  generating link map
      1113:       dynamic: 0x00010554  base: 0x00000000   size: 0x00008688
      1113:         entry: 0x00008370  phdr: 0x00008034  phnum:          8
      1113:
      1113:
      1113:     file=libc.so.6 [0];  needed by ./hello4 [0]
     1113:     find library=libc.so.6 [0]; searching
...
      1113:     checking for version `GLIBC_2.4' in file /lib/libc.so.6 required by file ./hello4
Segmentation fault

How can I compile an executable with a glibc v2.3.5 and arm-linux-gnueabi-gcc-4.3 ?
Thanks!

Pierre St-G

-----Original Message-----
From: Pierre St-Germain 
Sent: Thursday, February 13, 2014 11:32 AM
To: 'Neil Williams'; debian-embedded@lists.debian.org
Subject: RE: outdated arm-linux-gnueabi compiler requirement

Thanks a lot for your quick reply, sorry about the mailing list...

I cannot change the platform of the device...
What would be the steps to be able to build a simple(Hello world) executable for this device(BusyBox v1.12.1 (Linux version 2.6.27, gcc 4.0.0)?
Thanks again!
Pierre St-G


-----Original Message-----
From: Neil Williams [mailto:codehelp@debian.org]
Sent: Thursday, February 13, 2014 11:17 AM
To: Pierre St-Germain; debian-embedded@lists.debian.org
Subject: Re: outdated arm-linux-gnueabi compiler requirement

On Thu, 13 Feb 2014 15:40:59 +0000
Pierre St-Germain <pstgermain@babytel.net> wrote:

> Hi Neil,

Please use the mailing list, not personal email.
 
> I have a BusyBox v1.12.1 (Linux version 2.6.27, gcc 4.0.0)

Linux 2.6 is probably too old to support. The oldest linux kernel in Debian is 3.2

gcc 4.0.0 is certainly too old to support. 4.3.5 is only available in Squeeze, the release after Lenny. gcc-4.4 is the oldest supportable compiler and 4.6 or 4.8 is where you should be aiming. However, most source code of a vintage matching gcc-4.0 will *not* compile on gcc-4.7 or later, so the source code would have to be updated as well. Whether that updated code would work (or even fit) on the original device is something you would only know after doing all of the work yourself.

> That I try to build an application with "gcc-4.3-arm-linux-gnueabi"
> for this platform but I have problems to execute it, ./hello6: error 
> while loading shared libraries: ./hello6: cannot handle TLS data I'm 
> suspecting the librairy compatibility issue,
> 
> I tried to install an older version of gcc 4.0.0 but I cannot, I tried 
> on a Debian Lenny installation to install "gcc-3.4-arm-linux-gnu" from 
> "deb http://www.emdebian.org/debian lenny main" But it failed with:
> Failed to fetch
> http://www.emdebian.org/debian/pool/main/g/gcc-4.3/gcc-4.3-arm-linux-g
> nu-base_4.3.2-1.1_i386.deb
> 404 Not Found ...

Lenny is no longer available in that repo - the entry in the dists directory should have been removed by now but there is ongoing work on cleaning up the toolchain repo. I'm not actually involved in that.

There are no Emdebian toolchains available for Lenny.
 
> Please, I'm struggling for 3 weeks now, Can you help me?

Unlikely. You would need to rebuild everything on the system and there is no guarantee that the code would even compile with gcc-4.4, plus issues of changes in the kernel between 2.6.27 and 3.2.

I think you may have to consider this as a non-upgradeable system when you consider how much work it will be to get it running up to date software.

-- 


Neil Williams
=============
http://www.linux.codehelp.co.uk/


Reply to: