Building multimedia/vlc on amd64

Pav Lucistnik pav at FreeBSD.org
Fri Dec 28 11:37:40 PST 2007


Jonathan Chen píše v pá 28. 12. 2007 v 21:35 +1300:

> When I try to build vlc on 7-STABLE/amd64, the build fails with the
> following error:
> 
>     [...]
>     c++ -Wsign-compare -Wall -O2 -fno-strict-aliasing -pipe -pipe -pthread -pthread -o libvlcplugin.so libnpvlc_a-vlcshell.o libnpvlc_a-vlcplugin.o libnpvlc_a-npolibvlc.o libnpvlc_a-npovlc.o libnpvlc_a-nporuntime.o libnpvlc_a-npunix.o -shared -pthread -shared -fpic -fPIC -pthread /usr/local/lib/libintl.so /usr/local/lib/libiconv.so -Wl,-rpath -Wl,/usr/local/lib -pthread  -L/usr/ports/multimedia/vlc/work/fake//usr/local/lib -L/usr/local/lib ../src/libvlc.a ../modules/demux/liblive555.a ../modules/audio_filter/converter/libdtstofloat32.a -lplds4 -lplc4 -lnspr4 /usr/local/lib/libXt.so /usr/local/lib/libSM.so /usr/local/lib/libICE.so /usr/local/lib/libX11.so /usr/local/lib/libXau.so /usr/local/lib/libXdmcp.so -lrpcsvc /usr/local/lib/libhal.so /usr/local/lib/libintl.so /usr/local/lib/libdbus-1.so -lrt /usr/local/lib/libiconv.so -L/usr/local/live/UsageEnvironment -lUsageEnvironment -L/usr/local/live/groupsock -lgroupsock -L/usr/local/live/BasicUsageEnvironment -lBasicUsageEnvironment -L/usr/local/live/liveMedia -lliveMedia -ldts -lm   -Wl,--rpath -Wl,/usr/local/lib -Wl,--rpath -Wl,/usr/local/lib
>     /usr/bin/ld: /usr/local/lib/libdts.a(parse.o): relocation R_X86_64_32S can not be used when making a shared object; recompile with -fPIC
>     /usr/local/lib/libdts.a: could not read symbols: Bad value
>     gmake[2]: *** [libvlcplugin.so] Error 1
>     gmake[2]: Leaving directory `/usr/ports/multimedia/vlc/work/vlc-0.8.6d/mozilla'
>     gmake[1]: *** [all-recursive] Error 1
>     gmake[1]: Leaving directory `/usr/ports/multimedia/vlc/work/vlc-0.8.6d'
>     gmake: *** [all] Error 2
>     *** Error code 2
> 
>     Stop in /usr/ports/multimedia/vlc.
>     *** Error code 1
> 
>     Stop in /usr/ports/multimedia/vlc.
> 
> This error doesn't happen on 7-STABLE/i386, and it looks like the
> obvious fix is to build libdts.a objects with -fPIC. Any chance of an
> update that makes it so?

You cannot build relocatable .a libraries. The correct fix here is to
link libdca (former name libdts) dynamically. All it should take is to
replace -ldts with -ldca in the compiler arguments.

Funny thing is that the port patches for that. And it compiles nicely on
my machine. How old is your portstree?

-- 
Pav Lucistnik <pav at oook.cz>
              <pav at FreeBSD.org>
MIPS: Meaningless Information Provided by Salesmen
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: Toto je =?UTF-8?Q?digit=C3=A1ln=C4=9B?=
	=?ISO-8859-1?Q?_podepsan=E1?= =?UTF-8?Q?_=C4=8D=C3=A1st?=
	=?ISO-8859-1?Q?_zpr=E1vy?=
Url : http://lists.freebsd.org/pipermail/freebsd-multimedia/attachments/20071228/18d10626/attachment.pgp


More information about the freebsd-multimedia mailing list