Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 5 Sep 2003 23:04:20 -0600
From:      Greg Lewis <glewis@misty.eyesbeyond.com>
To:        Dan Langille <dan@langille.org>
Cc:        freebsd-java@FreeBSD.org
Subject:   Re: (Fwd) Re: Shared object "libawt.so" not found
Message-ID:  <20030906050420.GA71909@misty.eyesbeyond.com>
In-Reply-To: <3F563ABC.10437.4508FBC7@localhost>
References:  <3F5595C5.552.4284913E@localhost> <3F563ABC.10437.4508FBC7@localhost>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Sep 03, 2003 at 07:02:20PM -0400, Dan Langille wrote:
> On 3 Sep 2003 at 14:47, Greg Lewis wrote:
> 
> > On Wed, Sep 03, 2003 at 07:18:29AM -0400, Dan Langille wrote:
> > > >>>[dan@laptop:/usr/local/share/opera] $ grep -r LD_LIBRARY_PATH *
> > > >>>Binary file bin/opera matches
> > > >>>uninst/rollback_7.20-20030825.2/opera:    LD_LIBRARY_PATH="${OPERA_JAVA_DIR}:${OPERA_JAVA_DIR}/native_threads:${OPERA_JAVA_DIR}/client:${OPERA_JAVA_DIR}/classic:${LD_LIBRARY_PATH}"
> > > >>>uninst/rollback_7.20-20030825.2/opera:    export LD_LIBRARY_PATH
> > > >>>uninst/rollback_7.20-20030827.1/opera:    LD_LIBRARY_PATH="${OPERA_JAVA_DIR}:${OPERA_JAVA_DIR}/native_threads:${OPERA_JAVA_DIR}/client:${OPERA_JAVA_DIR}/classic:${LD_LIBRARY_PATH}"
> > > >>>uninst/rollback_7.20-20030827.1/opera:    export LD_LIBRARY_PATH
> > > >>>[dan@laptop:/usr/local/share/opera] $
> > 
> > Evil.  Opera assumes that the JDK will be using native threads.  However,
> > the Diablo JDK only provide green threads support.  Looking at the names
> > of the files, I'm not sure if there is one you should edit, however you
> > can probably get the effect you want by doing:
> > 
> > 	env OPERA_JAVA_DIR=/usr/local/diablo-jdk1.3.1/jre/lib/i386 \
> > 	LD_LIBRARY_PATH=/usr/local/diablo-jdk1.3.1/jre/lib/i386/green_threads \
> > 	opera
> 
> Hmmm:
> 
> [dan@laptop:~] $ env OPERA_JAVA_DIR=/usr/local/diablo-jdk1.3.1/jre/lib/i386 \
> > LD_LIBRARY_PATH=/usr/local/diablo-jdk1.3.1/jre/lib/i386/green_threads \
> > opera
> /usr/libexec/ld-elf.so.1: /usr/local/diablo-jdk1.3.1/jre/lib/i386/libawt.so: Undefined symbol "JVM_RaiseSignal"
> [dan@laptop:~] $

Right.  This doesn't work because of the way the LD_LIBRARY_PATH is
constructed in the opera shell script.  The native_threads path will go
first, meaning the green_threads libraries don't get loaded.  My bad.

> > The complete fix would be to edit one of the Opera files.  If you can find
> > out which one we should probably add it to the port.  Maybe its time I
> > download the beta and try it myself :).
> 
> Please....?

Ok.  So if I edit /usr/X11R6/bin/opera and s/native_threads/green_threads/
it gets a bit further.  However now I get problems with other symbols
which the plugin assumes are available because you're using it in Mozilla
or a derivative, right?  Wrong.  So, I hacked the plugin build to link
in different Mozilla libraries until all the symbols were resolved, and
now Opera is segfaulting :(.  At least its leaving a core, but none of
this is very promising for getting things working under Opera.

-- 
Greg Lewis                          Email   : glewis@eyesbeyond.com
Eyes Beyond                         Web     : http://www.eyesbeyond.com
Information Technology              FreeBSD : glewis@FreeBSD.org



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030906050420.GA71909>