Matt Zimmerman
2004-Sep-10 16:45 UTC
[Flac-dev] [lamont+buildd@hp.com: Bug#162718: flac_1.0.4-1(hppa/unstable): FTBFS: non-PIC code in shared object]
It looks like libplugin_common.a is being linked into the shared object libxmms-flac.so. In that case, all of the objects in libplugin_common.a must be compiled with -fPIC. ----- Forwarded message from lamont+buildd@hp.com ----- Date: Sat, 28 Sep 2002 18:54:08 -0600 From: lamont+buildd@hp.com Resent-From: lamont+buildd@hp.com To: submit@bugs.debian.org Subject: Bug#162718: flac_1.0.4-1(hppa/unstable): FTBFS: non-PIC code in shared object Package: flac Version: 1.0.4-1 Severity: serious There was an error while trying to autobuild your package: shared objects must be built using only -fPIC code. lamont> Automatic build of flac_1.0.4-1 on sarti by sbuild/hppa 1.169 > Build started at 20020928-2236[...]> ** Using build dependencies supplied by package: > Build-Depends: debhelper (>> 3.0.0), xmms-dev, nasm [i386], doxygen, libid3-dev[...]> **** The following central src deps are (probably) missing: > libogg-dev (>= 1.0.0)[...]> (cd . && ln -s charset.lo charset.o) > (cd . && ln -s configure.lo configure.o) > (cd . && ln -s plugin.lo plugin.o) > (cd . && ln -s wrap_id3.lo wrap_id3.o) > gcc -shared charset.lo configure.lo plugin.lo wrap_id3.lo -Wl,--rpath -Wl,/build/buildd/flac-1.0.4/src/libFLAC/.libs -L/usr/lib/gcc-lib/hppa-linux/3.0.3/../../.. -L/usr/lib/gcc-lib/hppa-linux/3.0.3 ../../src/plugin_common/libplugin_common.a ../../src/libFLAC/.libs/libFLAC.so -L/build/buildd/flac-1.0.4/src/libFLAC/.libs -L/usr/lib -L/usr/X11R6/lib /usr/lib/libgtk.so /usr/lib/libgdk.so /usr/lib/libgmodule.so /usr/lib/libglib.so -ldl -lXi -lXext -lX11 -lm /usr/lib/libxmms.so /usr/lib/libid3.so -lz -lstdc++ -lstdc++ -lz -Wl,-soname -Wl,libxmms-flac.so -o .libs/libxmms-flac.so > /usr/bin/ld: ../../src/plugin_common/libplugin_common.a(dither.o): relocation R_PARISC_DPREL21L can not be used when making a shared object; recompile with -fPIC > ../../src/plugin_common/libplugin_common.a: could not read symbols: Bad value > collect2: ld returned 1 exit status > make[3]: *** [libxmms-flac.la] Error 1 > make[3]: Leaving directory `/build/buildd/flac-1.0.4/src/plugin_xmms' > make[2]: *** [all-recursive] Error 1 > make[2]: Leaving directory `/build/buildd/flac-1.0.4/src' > make[1]: *** [all-recursive] Error 1 > make[1]: Leaving directory `/build/buildd/flac-1.0.4' > make: *** [build-stamp] Error 2A full build log can be found at: http://buildd.debian.org/build.php?arch=hppa&pkg=flac&ver=1.0.4-1 ----- End forwarded message ----- -- - mdz
Josh Coalson
2004-Sep-10 16:45 UTC
[Flac-dev] [lamont+buildd@hp.com: Bug#162718: flac_1.0.4-1(hppa/unstable): FTBFS: non-PIC code in shared object]
--- Matt Zimmerman <mdz@debian.org> wrote:> It looks like libplugin_common.a is being linked into the shared > object > libxmms-flac.so. In that case, all of the objects in > libplugin_common.a > must be compiled with -fPIC.Ah yes. I'm not clear on how this works; how do the compiler options for PIC make it down into the libtool invocation? Something automatically does it for shared libs but I don't know how to force it when just compiling the static one. Josh __________________________________________________ Do you Yahoo!? New DSL Internet Access from SBC & Yahoo! http://sbc.yahoo.com
Matt Zimmerman
2004-Sep-10 16:45 UTC
[Flac-dev] [lamont+buildd@hp.com: Bug#162718: flac_1.0.4-1(hppa/unstable): FTBFS: non-PIC code in shared object]
On Mon, Sep 30, 2002 at 10:46:16AM -0700, Josh Coalson wrote:> --- Matt Zimmerman <mdz@debian.org> wrote: > > It looks like libplugin_common.a is being linked into the shared > > object > > libxmms-flac.so. In that case, all of the objects in > > libplugin_common.a > > must be compiled with -fPIC. > > Ah yes. I'm not clear on how this works; how do the compiler options for > PIC make it down into the libtool invocation? Something automatically > does it for shared libs but I don't know how to force it when just > compiling the static one.The only general way that I know is to configure libtool with --with-pic. This means either configuring the directories separately, or doing some awful hack like we did with -disable-static. Maybe the whole plugin setup should share one libtool (for disable-static and with-pic) and everything else can use a different one. -- - mdz