[ELDK] Ubuntu 12.04 and ELDK 4.1

Wolfgang Denk wd at denx.de
Fri May 4 20:14:02 CEST 2012


Dear Franz,

In message <4FA3E19E.7070704 at gmx.net> you wrote:
> 
> Unfortunatelly eldk 4.1 doesn't work with ubuntu 12.04.
> I cannot compile even a simple "hello world". On ubuntu 11.10 the same 
> eldk installation just works fine.

Are you absolutely sure this is an issue with Ubuntu 12.04, and not
eventually just one with your system setup?

> My compilation call is:
>  >>$  arm-linux-gcc hello_world.c

Did you set and export CROSS_COMPILE before?

> and i get this error message:
> 
>  >>hello_world.c:1:19: error: stdio.h: No such file or directory
>  >>hello_world.c: In function 'main':
>  >>hello_world.c:5: warning: incompatible implicit declaration of 
> built-in function 'printf'

This is an installation error on your system. It appears you missed to
install (or copy) the header files.  For me this works:

$ cat /etc/issue
Ubuntu 12.04 LTS \n \l

$ arm-linux-gcc -v
Reading specs from
/opt/eldk-4.1/usr/bin/../lib/gcc/arm-linux/4.0.0/specs
Target: arm-linux
Configured with:
/opt/eldk/build/arm-2007-01-21/work/usr/src/denx/BUILD/crosstool-0.35/build/gcc-4.0.0-glibc-2.3.5-eldk/arm-linux/gcc-4.0.0/configure
--target=arm-linux --host=i686-host_pc-linux-gnu
--prefix=/var/tmp/eldk.bMi2nK/usr/crosstool/gcc-4.0.0-glibc-2.3.5-eldk/arm-linux
--with-headers=/var/tmp/eldk.bMi2nK/usr/crosstool/gcc-4.0.0-glibc-2.3.5-eldk/arm-linux/arm-linux/include
--with-local-prefix=/var/tmp/eldk.bMi2nK/usr/crosstool/gcc-4.0.0-glibc-2.3.5-eldk/arm-linux/arm-linux
--disable-nls --enable-threads=posix --enable-symvers=gnu
--enable-languages=c,c++ --enable-shared --enable-c99
--enable-long-long --enable-__cxa_atexit
Thread model: posix
gcc version 4.0.0 (DENX ELDK 4.1 4.0.0)
$ cat hello.c
#include <stdio.h>
int main (void)
{
        printf("Hello world\n");
        return 0;
}
$ arm-linux-gcc -c hello.c
$ ls -l hello*
-rw-rw-r-- 1 wd wd  76 May  4 19:46 hello.c
-rw-rw-r-- 1 wd wd 828 May  4 20:00 hello.o

OK, the linker will run into problems then, but this is something
else.

> My colleague assumes that there are incompatibilities with newer C 
> libraries on the ubuntu 12.04 host.

You mean like this?

$ arm-linux-gcc -o hello  hello.o
/opt/eldk-4.1/usr/bin/../lib/gcc/arm-linux/4.0.0/../../../../arm-linux/bin/ld: warning: ld-linux.so.2, needed by /opt/eldk-4.1/usr/../arm/lib/libc.so.6, not found (try using -rpath or -rpath-link)
...

Well, it seems there are indeed incompatibilities. But this is to be
expected after such a long time - I'm surprised it worked that long.

Sorry, but we cannot maintain this old stuff forever, for free.
If you really need it then please feel free to contact me for
commercial support options.

> When there is a workaround could you just tell me.

The big question to me is why you are trying to run 5 year old
software on the most recent version of Ubuntu?  This makes little
sense.  Either you need good old ELDK 4.1 as a stable production
environment for older products; in this case you should keep the old
OS environment as well.  Or you try to set up a new build system, in
which case you should be using ELDK 5.1 (or, in 2..3 days) ELDK 5.2.


Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
"Where shall I begin, please your Majesty?" he asked. "Begin  at  the
beginning,"  the  King said, gravely, "and go on till you come to the
end: then stop."    - Alice's Adventures in Wonderland, Lewis Carroll


More information about the eldk mailing list