PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : libgcj statisch linken



Andy1988
30-12-2005, 04:24
Hi,
Ich möchte ein kleines Java Programm, was ich mit dem gcj nativ kompilieren muss, auf einem anderen Rechner laufen lassen. Allerdings hat dieser Rechner die dynamisch gelinkte libgcj nicht.
Jetzt hab ich mal mit dem Parameter -static versucht beim gcj alles statisch zu linken, allerdings haut er mich erst damit:

/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/libgcj.a(ltdl.o): In function `sys_dl_open':
ltdl.c:(.text+0x416): warning: Using 'dlopen' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/libgcj.a(natRuntime.o): In function `java::lang::Runtime::insertSystemProperties(java: :util::Properties*)':
natRuntime.cc:(.text+0xd05): warning: Using 'getpwuid_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/libgcj.a(natInetAddress.o): In function `java::net::InetAddress::lookup(java::lang::String *, java::net::InetAddress*, bool)':
natInetAddress.cc:(.text+0x31c): warning: Using 'gethostbyaddr_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
natInetAddress.cc:(.text+0x227): warning: Using 'gethostbyname_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking

Und dann läuft das Programm nicht. Er schmeisst mir nur "Illegal Instruction" vor die Füße. Warscheinlich, weil bei meinem Gentoo die glibc nicht die selbe Version hat, wie bei dem IPCop. So deute ich zumindest die Fehlermeldungen.

Wäre nett, wenn ihr mir helfen könnt!