[vlc-devel] vlc3 : cannot link with libaccess_srt_plugin

David Fuhrmann david.fuhrmann at gmail.com
Thu Dec 7 19:08:58 CET 2017


Hello all,

I saw as well that the srt plugin does to link on macOS, for instance see here:
https://jenkins.videolan.org/job/vlc-nightly/job/vlc-nightly-macOS-contrib/537/console <https://jenkins.videolan.org/job/vlc-nightly/job/vlc-nightly-macOS-contrib/537/console>

Issue seems to be pkgconfig file creation: srt.pc contains the following libs line (the latter part, starting with gnutls, is merged from Libs.private by vlc):

Libs:  -L${libdir} -lsrt      gnutls iconv gmp nettle hogweed gmp nettle /usr/lib/libpthread.dylib


This is not a valid linking line of course, and it contains internal libs like hogweed. Is someone already checking how this can be fixed?

BR. David

> Am 04.12.2017 um 02:58 schrieb Justin Kim <justin.kim at collabora.com>:
> 
> Hello,
> 
> Let me try to check this problem more.
> I tested the following sequences;
> 
>  $ cd <vlc>/contrib
>  $ mkdir native
>  $ cd native
>  $ ../bootstrap --enable-srt
>  $ make fetch-all
>  $ export PKG_CONFIG_LIBDIR=<somewhere>/pkgconfig
>  $ make
> 
> Then, although this 'make' reported some linking errors, I fixed them locally. After that, I could get 'contrib' stuffs.
> 
>  $ cd <vlc>
>  $ ./bootstrap
>  $ ./configure --enable-srt
>  $ make
> 
> Then, I could get vlc executable. The different thing is that I did this build on archlinux and ubuntu.
> 
> Can you tell me what is different from you did?
> 
> BR,
> Justin
> 
> On 04/12/2017 10:28 AM, Gilles Sabourin wrote:
>> Hello Justin,
>> I am using provided vlc toolchain. Vlc devloppers should have a closer look at Makefiles.
>> I can tell myself, and I have no time to investigate now.
>> Best,
>> Gilles
>> Le 4 déc. 2017, à 02:01, Justin Kim <justin.kim <mailto:<a>@collabora.com target=_blank>justin.kim <http://justin.kim <http://justin.kim/>>@collabora.com> a écrit:
>>    Hello,
>>    The linking error is pretty strange for me.
>>    Did you set PKG_CONFIG_LIBDIR to a proper pkgconfig directory?
>>    Maybe, in your case,
>>    /usr/lib/pkgages/BUILD/vlc-3.0.0/contrib/x86_64-suse-linux/lib/pkgconfig ?
>>    SRT plugin has dependencies on gnutls, nettle
>>    On 04/12/2017 2:11 AM, Gilles Sabourin wrote:
>>        Le dimanche 3 décembre 2017, 17:58:23 CET Gilles Sabourin a écrit :
>>            Le dimanche 3 décembre 2017, 11:22:32 CET Jean-Baptiste
>>            Kempf a écrit :
>>                Hello Gilles,
>>                What happens if you force -lstdc++ ?
>>                Best,
>>            Hello Jean-Baptitste,
>>            I have modified "Makefile.am <http://Makefile.am <http://makefile.am/>>" in
>>            ~/modules/access" this line :
>>            libaccess_srt_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath
>>            '$(accessdir)'
>>            to :
>>            libaccess_srt_plugin_la_LDFLAGS = $(AM_LDFLAGS) -lstdc++ -rpath
>>            '$(accessdir)'
>>            and after a make, I've got fewer link errors, about nettle
>>            library entries
>>            missing (but nettle 3.3 is installed on my system) :
>>        [...]
>>        So long, so far, I've manually forced -lnettle into Makefile.am
>>        <http://Makefile.am <http://makefile.am/>>, and after a
>>        make, it is still complaining about gnutls :
>>        make[4]: Entering directory
>>        '/usr/src/packages/BUILD/vlc-3.0.0/modules'
>>        CCLD libaccess_srt_plugin.la <http://libaccess_srt_plugin.la/> <http://plugin.la <http://plugin.la/>>
>>        /usr/src/packages/BUILD/vlc-3.0.0/contrib/x86_64-suse-linux/lib/
>>        libsrt.a(hcrypt_ctx_tx.c.o): In function `hcryptCtx_Tx_Rekey':
>>        /usr/src/packages/BUILD/vlc-3.0.0/contrib/native/srt/haicrypt/hcrypt_ctx_tx.c:
>>        63: undefined reference to `gnutls_rnd'
>>        /usr/src/packages/BUILD/vlc-3.0.0/contrib/native/srt/haicrypt/hcrypt_ctx_tx.c:
>>        70: undefined reference to `gnutls_rnd'
>>        /usr/src/packages/BUILD/vlc-3.0.0/contrib/x86_64-suse-linux/lib/
>>        libsrt.a(hcrypt_ctx_tx.c.o): In function `hcryptCtx_Tx_Refresh':
>>        /usr/src/packages/BUILD/vlc-3.0.0/contrib/native/srt/haicrypt/hcrypt_ctx_tx.c:
>>        140: undefined reference to `gnutls_rnd'
>>        collect2: error: ld returned 1 exit status
>>        I've tried to add -lgnutls, but eh, one cannot win each time :
>>        this does not
>>        help...
>>        So this srt plugin has pretty much dependencies on stdc++ and
>>        nettle at
>>        least, and maybe gnutls...
>>        Best,
>>        Gilles SABOURIN
>>        ------------------------------------------------------------------------
>>        vlc-devel mailing list
>>        To unsubscribe or modify your subscription options:
>>        https://mailman.videolan.org/listinfo/vlc-devel <https://mailman.videolan.org/listinfo/vlc-devel>
>>    ------------------------------------------------------------------------
>>    vlc-devel mailing list
>>    To unsubscribe or modify your subscription options:
>>    https://mailman.videolan.org/listinfo/vlc-devel <https://mailman.videolan.org/listinfo/vlc-devel>
>> _______________________________________________
>> vlc-devel mailing list
>> To unsubscribe or modify your subscription options:
>> https://mailman.videolan.org/listinfo/vlc-devel <https://mailman.videolan.org/listinfo/vlc-devel>
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel <https://mailman.videolan.org/listinfo/vlc-devel>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20171207/5390e533/attachment.html>


More information about the vlc-devel mailing list