Date: Mon, 26 Feb 2007 23:27:27 +0100 (CET) From: "Arne H. Juul" <arnej@pvv.ntnu.no> To: Hiroyuki Kawakatsu <hkawakat@gmail.com> Cc: kris@freebsd.org, freebsd@vfemail.net, freebsd-java@freebsd.org Subject: Re: cannot update jdk15 on amd64 Message-ID: <Pine.LNX.4.62.0702262304080.17182@decibel.pvv.ntnu.no> In-Reply-To: <307b90470702261045j1a812168y702c2dedd7e64bd8@mail.gmail.com> References: <307b90470702261045j1a812168y702c2dedd7e64bd8@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 26 Feb 2007, Hiroyuki Kawakatsu wrote: > When updating jdk15 (via portmanager -u -f -l) I am getting > > /usr/bin/ld: /usr/X11R6/lib/libXm.a(CascadeB.o): relocation > R_X86_64_32 can not be used when making a shared object; recompile > with -fPIC > /usr/X11R6/lib/libXm.a: could not read symbols: Bad value > gmake[4]: *** > [/usr/ports/java/jdk15/work/control/build/bsd-amd64/lib/amd64/motif21/libmawt.so] > Error 1 > > This is the same error as reported in > http://lists.freebsd.org/pipermail/freebsd-java/2005-June/003970.html > except that this is on FreeBSD 6.2-RELEASE. Ok, I found it now; I was confused because I have the same version number of open-motif as was reported earlier (2.2.3_2) but my version works. It's all because of this change to x11-toolkits/open-motif/Makefile: revision 1.40 date: 2007/02/01 02:42:04; author: kris; state: Exp; lines: +1 -0 Use libtool port instead of included version to avoid objformat a.out botch note that the PORTREVISION wasn't bumped in this change (but should have been). The old version would compile all object files with -fPIC, also those going into libXm.a; the new libtool change makes libXm.a unusable for linking into .so files, at least on amd64 platforms. > The "recompile with -fPIC" message appears to be a symptom of some > problem with my static libraries rather than really having to do so. It means what it says, the CascadeB.o inside /usr/X11R6/lib/libXm.a needs to be compiled with -fPIC but wasn't. It looks like it was by conscious plan that libXm.a used to be compiled with -fPIC: revision 1.33 date: 2004/12/24 06:34:45; author: phantom; state: Exp; lines: +4 -0 While building on amd64 add -fPIC to CFLAGS so something may need to be done to restore that behaviour with new libtool. Or alternately, java must stop using the static motif library and link with the shared library instead. A quick fix for those currently stuck should be: cd /usr/ports/x11-toolkits/open-motif cvs update -D 2007-01-30 rm -rf work make make deinstall make reinstall cd /usr/ports/java/jdk15 make (not tested yet, still compiling :-) - Arne H. J.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.LNX.4.62.0702262304080.17182>