Comment 2 for bug 57875

Revision history for this message
Gary Coady (garycoady) wrote : Re: Azureus does not start

With gcj-4.1 (4.1.1-11ubuntu7), azureus works without any LD_PRELOAD set (but with the other changes to /usr/bin/azureus mentioned above).

I also see different behaviour with SUN java:
  java.lang.UnsatisfiedLinkError: /usr/lib/jni/libglibjni-0.4.so: /usr/lib/jni/libglibjni-0.4.so: undefined symbol: g_type_depth
        at java.lang.ClassLoader$NativeLibrary.load(Native Method)
        at java.lang.ClassLoader.loadLibrary0(Unknown Source)
        at java.lang.ClassLoader.loadLibrary(Unknown Source)
        at java.lang.Runtime.loadLibrary0(Unknown Source)
        at java.lang.System.loadLibrary(Unknown Source)
        at org.gnu.glib.Struct.<clinit>(Struct.java:85)
        at org.gudy.azureus2.ui.swt.ImageRepository.getThemedIcon(ImageRepository.java:71)
        at org.gudy.azureus2.ui.swt.ImageRepository.loadImages(ImageRepository.java:128)
        at org.gudy.azureus2.ui.swt.mainwindow.Initializer.run(Initializer.java:210)
        at org.gudy.azureus2.ui.swt.mainwindow.SWTThread$1.runSupport(SWTThread.java:107)
        at org.gudy.azureus2.core3.util.AERunnable.run(AERunnable.java:38)
        at java.lang.Thread.run(Unknown Source)

The DT_NEEDED information from libglibjni is:
$ objdump -x /usr/lib/jni/libglibjni-0.4.so | grep NEEDED
  NEEDED libglib-2.0.so.0
  NEEDED libc.so.6

But g_type_depth is not defined there... setting LD_PRELOAD to /usr/lib/libgobject-2.0.so works in this case. Is there an --as-needed in a linking step somewhere?