You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@openoffice.apache.org by Eike Rathke <oo...@erack.de> on 2011/08/29 02:06:16 UTC

[code][gcc641][unxlngx6] break in sot with -fPIC vs -fpic

Hi,

Build now breaks in sot with

[ build LNK ] Library/libsotlx.so
/build/aooo/main/solver/340/unxlngx6.pro/workdir/CxxObject/sot/source/sdstor/ucbstorage.o: In function `UCBStorage_Impl::Commit()':
ucbstorage.cxx:(.text+0x6b3e): undefined reference to `non-virtual thunk to utl::OOutputStreamWrapper::acquire()'
/usr/bin/ld: /build/aooo/main/solver/340/unxlngx6.pro/workdir/CxxObject/sot/source/sdstor/ucbstorage.o: relocation R_X86_64_PC32 against undefined symbol `non-virtual thunk to utl::OOutputStreamWrapper::acquire()' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: final link failed: Bad value
collect2: ld returned 1 exit status
make: *** [/build/aooo/main/solver/340/unxlngx6.pro/workdir/LinkTarget/Library/libsotlx.so] Error 1

Well, indeed unotools/source/streaming/streamwrap.cxx (old build
environment) is compiled without -fPIC but -fpic instead, which is the
default for unxlng* platforms, unless overridden in one of the
solenv/inc/unxlng*.mk files which most platforms do. Now ucbstorage.cxx
(new gbuild environment) is compiled with -fPIC instead, so it may be
that those don't go well together in gcc 4.6.1 even if -fPIC should only
make a difference on m68k, PowerPC and SPARC.

I think it should be -fPIC in both. Maybe someone already has insights,
I'll try things another day.

  Eike

-- 
 PGP/OpenPGP/GnuPG encrypted mail preferred in all private communication.
 Key ID: 0x293C05FD - 997A 4C60 CE41 0149 0DB3  9E96 2F1A D073 293C 05FD