I have been looking at updating VLC to version 3, but as I am looking into =
it I
have run into a linking issue. I am looking for any help to resolve the iss=
ue.

The issue is with VLC building a libtool convenience library called libcomp=
at to
provide various substitute functions which don't exist on OpenBSD, e.g. ffs=
ll(),
strnstr() and tdestroy().

Here is a start at an update plus FFmpeg 4.1 which is required for VLC 3.

https://comstyle.com/ffmpeg/ffmpeg.diff
https://comstyle.com/ffmpeg/vlc.diff


libtool: link: cc -shared  -fPIC -DPIC -o .libs/libhttps_plugin.so  access/=
http/.libs/access.o   .libs/libhttps_plugin.lax/libcompat.a/dummy.o .libs/l=
ibhttps_plugin.lax/libcompat.a/ffsll.o .libs/libhttps_plugin.lax/libcompat.=
a/strnstr.o .libs/libhttps_plugin.lax/libcompat.a/strverscmp.o .libs/libhtt=
ps_plugin.lax/libcompat.a/tdestroy.o  .libs/libhttps_plugin.lax/libvlc_http=
=2Ea/dummy.o
=2Elibs/libhttps_plugin.lax/libvlc_http.a/ffsll.o .libs/libhttps_plugin.lax=
/libvlc_http.a/libvlc_http_la-chunked.o .libs/libhttps_plugin.lax/libvlc_ht=
tp.a/libvlc_http_la-connmgr.o .libs/libhttps_plugin.lax/libvlc_http.a/libvl=
c_http_la-file.o .libs/libhttps_plugin.lax/libvlc_http.a/libvlc_http_la-h1c=
onn.o .libs/libhttps_plugin.lax/libvlc_http.a/libvlc_http_la-h2conn.o .libs=
/libhttps_plugin.lax/libvlc_http.a/libvlc_http_la-h2frame.o .libs/libhttps_=
plugin.lax/libvlc_http.a/libvlc_http_la-h2output.o .libs/libhttps_plugin.la=
x/libvlc_http.a/libvlc_http_la-hpack.o .libs/libhttps_plugin.lax/libvlc_htt=
p.a/libvlc_http_la-hpackenc.o .libs/libhttps_plugin.lax/libvlc_http.a/libvl=
c_http_la-live.o .libs/libhttps_plugin.lax/libvlc_http.a/libvlc_http_la-mes=
sage.o .libs/libhttps_plugin.lax/libvlc_http.a/libvlc_http_la-resource.o .l=
ibs/libhttps_plugin.lax/libvlc_http.a/libvlc_http_la-tunnel.o .libs/libhttp=
s_plugin.lax/libvlc_http.a/strnstr.o .libs/libhttps_plugin.lax/libvlc_http.=
a/strverscmp.o .libs/libhttps_plugin.lax/libvlc_http.a/tdestroy.o   -L/home=
/ports/pobj/vlc-3.0.6/vlc-3.0.6/src/.libs -L/usr/X11R6/lib -L/usr/local/lib=
 -L../src/.libs -lvlccore -lidn -lintl -liconv -lc -ldbus-1 -lm -lpthread  =
-O2 -Wl,-z -Wl,defs   -Wl,-retain-symbols-file,.libs/libhttps_plugin.exp
ld: error: duplicate symbol: ffsll
>>> defined at ffsll.c
>>>            .libs/libhttps_plugin.lax/libcompat.a/ffsll.o:(ffsll)
>>> defined at ffsll.c
>>>            .libs/libhttps_plugin.lax/libvlc_http.a/ffsll.o:(.text+0x0)

ld: error: duplicate symbol: strnstr
>>> defined at strnstr.c
>>>            .libs/libhttps_plugin.lax/libcompat.a/strnstr.o:(strnstr)
>>> defined at strnstr.c
>>>            .libs/libhttps_plugin.lax/libvlc_http.a/strnstr.o:(.text+0x0)

ld: error: duplicate symbol: strverscmp
>>> defined at strverscmp.c
>>>            .libs/libhttps_plugin.lax/libcompat.a/strverscmp.o:(strversc=
mp)
>>> defined at strverscmp.c
>>>            .libs/libhttps_plugin.lax/libvlc_http.a/strverscmp.o:(.text+=
0x0)

ld: error: duplicate symbol: tdestroy
>>> defined at tdestroy.c
>>>            .libs/libhttps_plugin.lax/libcompat.a/tdestroy.o:(tdestroy)
>>> defined at tdestroy.c
>>>            .libs/libhttps_plugin.lax/libvlc_http.a/tdestroy.o:(.text+0x=
0)

Reply via email to