This is the mail archive of the
java@gcc.gnu.org
mailing list for the Java project.
Re: gcj 4.4 and AWT toolkit
- From: Andrew Haley <aph at redhat dot com>
- To: ffileppo <ffileppo at libero dot it>
- Cc: java <java at gcc dot gnu dot org>
- Date: Thu, 31 Jul 2008 13:50:35 +0100
- Subject: Re: gcj 4.4 and AWT toolkit
- References: <K4VFEH$3E2C60D16720AF1F8549B6F022569DDB@libero.it>
ffileppo wrote:
>> ffileppo wrote:
>>
>>> The problem seems to be in these lines:
>>>
>>> 5602: awt-test: error: symbol lookup error: undefined symbol: Java_gnu_java_awt_peer_gtk_GtkToolkit_initIDs (fatal)
>>> 5602: awt-test: error: symbol lookup error: undefined symbol: Java_gnu_java_awt_peer_gtk_GtkToolkit_initIDs__ (fatal)
>> Indeed. Now try strace'ing it (with -etrace=files) and see where it's looking for the DSO.
>>
>> Andrew.
>>
>
>
> Here is the output:
>
> root@portatile-hp:/media/disk/x86-gcc-inst/bin# strace -etrace=file ./awt-test
> execve("./awt-test", ["./awt-test"], [/* 35 vars */]) = 0
> access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
> access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
> open("/etc/ld.so.cache", O_RDONLY) = 3
> access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
> open("/lib/libgcc_s.so.1", O_RDONLY) = 3
> access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
> open("/usr/lib/libgcj.so.10", O_RDONLY) = 3
> access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
> open("/lib/tls/i686/cmov/libm.so.6", O_RDONLY) = 3
> access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
> open("/lib/tls/i686/cmov/libpthread.so.0", O_RDONLY) = 3
> access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
> open("/lib/tls/i686/cmov/librt.so.1", O_RDONLY) = 3
> access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
> open("/lib/tls/i686/cmov/libdl.so.2", O_RDONLY) = 3
> access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
> open("/lib/tls/i686/cmov/libc.so.6", O_RDONLY) = 3
> open("/usr/lib/locale/locale-archive", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
> open("/usr/share/locale/locale.alias", O_RDONLY) = 3
> open("/usr/lib/locale/it_IT.UTF-8/LC_CTYPE", O_RDONLY) = -1 ENOENT (No such file or directory)
> open("/usr/lib/locale/it_IT.utf8/LC_CTYPE", O_RDONLY) = 3
> open("/usr/lib/gconv/gconv-modules.cache", O_RDONLY) = 3
> open("/proc/stat", O_RDONLY) = 3
> open("/proc/self/maps", O_RDONLY) = 3
> open("/etc/nsswitch.conf", O_RDONLY) = 3
> open("/etc/ld.so.cache", O_RDONLY) = 3
> access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
> open("/lib/tls/i686/cmov/libnss_compat.so.2", O_RDONLY) = 3
> access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
> open("/lib/tls/i686/cmov/libnsl.so.1", O_RDONLY) = 3
> open("/etc/ld.so.cache", O_RDONLY) = 3
> access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
> open("/lib/tls/i686/cmov/libnss_nis.so.2", O_RDONLY) = 3
> access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
> open("/lib/tls/i686/cmov/libnss_files.so.2", O_RDONLY) = 3
> open("/etc/passwd", O_RDONLY|0x80000 /* O_??? */) = 3
> getcwd("/media/disk/x86-gcc-inst/bin", 250) = 29
> open("/usr/lib/locale/it_IT.UTF-8/LC_IDENTIFICATION", O_RDONLY) = -1 ENOENT (No such file or directory)
> open("/usr/lib/locale/it_IT.utf8/LC_IDENTIFICATION", O_RDONLY) = 3
> open("/usr/lib/locale/it_IT.UTF-8/LC_MEASUREMENT", O_RDONLY) = -1 ENOENT (No such file or directory)
> open("/usr/lib/locale/it_IT.utf8/LC_MEASUREMENT", O_RDONLY) = 3
> open("/usr/lib/locale/it_IT.UTF-8/LC_TELEPHONE", O_RDONLY) = -1 ENOENT (No such file or directory)
> open("/usr/lib/locale/it_IT.utf8/LC_TELEPHONE", O_RDONLY) = 3
> open("/usr/lib/locale/it_IT.UTF-8/LC_ADDRESS", O_RDONLY) = -1 ENOENT (No such file or directory)
> open("/usr/lib/locale/it_IT.utf8/LC_ADDRESS", O_RDONLY) = 3
> open("/usr/lib/locale/it_IT.UTF-8/LC_NAME", O_RDONLY) = -1 ENOENT (No such file or directory)
> open("/usr/lib/locale/it_IT.utf8/LC_NAME", O_RDONLY) = 3
> open("/usr/lib/locale/it_IT.UTF-8/LC_PAPER", O_RDONLY) = -1 ENOENT (No such file or directory)
> open("/usr/lib/locale/it_IT.utf8/LC_PAPER", O_RDONLY) = 3
> open("/usr/lib/locale/it_IT.UTF-8/LC_MESSAGES", O_RDONLY) = -1 ENOENT (No such file or directory)
> open("/usr/lib/locale/it_IT.utf8/LC_MESSAGES", O_RDONLY) = 3
> open("/usr/lib/locale/it_IT.utf8/LC_MESSAGES/SYS_LC_MESSAGES", O_RDONLY) = 3
> open("/usr/lib/locale/it_IT.UTF-8/LC_MONETARY", O_RDONLY) = -1 ENOENT (No such file or directory)
> open("/usr/lib/locale/it_IT.utf8/LC_MONETARY", O_RDONLY) = 3
> open("/usr/lib/locale/it_IT.UTF-8/LC_COLLATE", O_RDONLY) = -1 ENOENT (No such file or directory)
> open("/usr/lib/locale/it_IT.utf8/LC_COLLATE", O_RDONLY) = 3
> open("/usr/lib/locale/it_IT.UTF-8/LC_TIME", O_RDONLY) = -1 ENOENT (No such file or directory)
> open("/usr/lib/locale/it_IT.utf8/LC_TIME", O_RDONLY) = 3
> open("/usr/lib/locale/it_IT.UTF-8/LC_NUMERIC", O_RDONLY) = -1 ENOENT (No such file or directory)
> open("/usr/lib/locale/it_IT.utf8/LC_NUMERIC", O_RDONLY) = 3
> access("/root/partizione/x86-gcc-4.4-inst/share/java/ext", F_OK) = -1 ENOENT (No such file or directory)
> access(".", F_OK) = 0
> stat64(".", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
> lstat64("/media", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
> lstat64("/media/disk", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
> lstat64("/media/disk/x86-gcc-inst", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
> lstat64("/media/disk/x86-gcc-inst/bin", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
> stat64("/media/disk/x86-gcc-inst/bin", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
> access("/root/partizione/x86-gcc-4.4-inst/share/java/gcj-endorsed", F_OK) = -1 ENOENT (No such file or directory)
> open("/usr/share/locale/it_IT.UTF-8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
> open("/usr/share/locale/it_IT.utf8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
> open("/usr/share/locale/it_IT/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
> open("/usr/share/locale/it.UTF-8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
> open("/usr/share/locale/it.utf8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
> open("/usr/share/locale/it/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
> open("/usr/share/locale-langpack/it_IT.UTF-8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
> open("/usr/share/locale-langpack/it_IT.utf8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
> open("/usr/share/locale-langpack/it_IT/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
> open("/usr/share/locale-langpack/it.UTF-8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
> open("/usr/share/locale-langpack/it.utf8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
> open("/usr/share/locale-langpack/it/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
> Exception in thread "main" java.awt.AWTError: Cannot load AWT toolkit: gnu.java.awt.peer.gtk.GtkToolkit
> at java.awt.Toolkit.getDefaultToolkit(Toolkit.java:607)
> at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:103)
> at java.awt.Window.<init>(Window.java:133)
> at java.awt.Frame.<init>(Frame.java:246)
> at javax.swing.JFrame.<init>(JFrame.java:123)
> at MainPanel.main(awt-test)
> Caused by: java.lang.UnsatisfiedLinkError: initIDs
> at gnu.java.awt.peer.gtk.GtkToolkit.initIDs(GtkToolkit.java:137)
> at gnu.java.awt.peer.gtk.GtkToolkit.initializeGlobalIDs(GtkToolkit.java:168)
> at gnu.java.awt.peer.gtk.GtkToolkit.<clinit>(GtkToolkit.java:183)
> at java.lang.Class.initializeClass(natClass.cc:780)
> at java.lang.Class.forName(Class.h:742)
> at java.awt.Toolkit.getDefaultToolkit(Toolkit.java:583)
> ...5 more
> Process 11443 detached
>
>
> I don't understand what's going wrong from strace log.
Me either. It doesn't even seem to try to open the library.
"strace -f" ?
Andrew.