Re: gcj 4.4 and AWT toolkit

Andrew Haley <[email protected]>
Newsgroups gmane.comp.gcc.java.devel
Message-ID <[email protected]>
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.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.