Opened 7 years ago
Closed 5 years ago
#6801 closed defect (duplicate)
libavformat/tls_openssl.c: implicit declaration of function 'BIO_meth_*'
Reported by: | LigH | Owned by: | |
---|---|---|---|
Priority: | normal | Component: | avformat |
Version: | git-master | Keywords: | libopenssl |
Cc: | Blocked By: | ||
Blocking: | Reproduced by developer: | yes | |
Analyzed by developer: | no |
Description
Compilation fails, trying to build ffmpeg (static 32-bit) in media-autobuild_suite; see attached build log. It's related to their issue #622.
Attachments (4)
Change History (26)
by , 7 years ago
Attachment: | ab-suite.make.log added |
---|
comment:1 by , 7 years ago
Summary: | implicit declaration of function 'BIO_meth_*' → libavformat/tls_openssl.c: implicit declaration of function 'BIO_meth_*' |
---|
comment:2 by , 7 years ago
Summary: | libavformat/tls_openssl.c: implicit declaration of function 'BIO_meth_*' → implicit declaration of function 'BIO_meth_*' |
---|
We cannot debug build issues with third party build systems.
To give this any chance, we need the full configure line as well as ffmpegs config.log.
comment:3 by , 7 years ago
(also,Trac is dumb and for some reason reverts any edits that were in progress when you write a comment, wtf)
comment:4 by , 7 years ago
Attached the configure log and the full archive of MABS logs. I hope it may contain everything that might be helpful to you.
comment:5 by , 7 years ago
Summary: | implicit declaration of function 'BIO_meth_*' → libavformat/tls_openssl.c: implicit declaration of function 'BIO_meth_*' |
---|
comment:7 by , 7 years ago
Unfortunately I have only little experience using a Linux like shell...
MABS updates itself and the underlying MSYS2 environment before building software. According to the directories in the pacman package registry (msys64/var/lib/pacman/local), I assume it's libopenssl-1.0.2.l-2; to be certain, I would need to know which command to type into an MSYS2/MinGW shell...
comment:8 by , 7 years ago
Check H:/development/media-autobuild_suite-master/local32/include/openssl/opensslv.h
It should list the version somewhere.
Browsing around in the script, it appears to use LibreSSL, and not OpenSSL. LibreSSL is not currently supported by FFmpeg. We only support OpenSSL or any of its forks that are actually version and binary compatible. LibreSSL typically claims to be OpenSSL in a very recent version, but not actually offer its full API.
comment:9 by , 7 years ago
You are right: "LibreSSL 2.6.2"
I will mention this detail to the MABS developers; does it mean that ffmpeg or libavformat suddenly use OpenSSL features they did not use before, and which LibreSSL may not yet implement?
comment:10 by , 7 years ago
These functions are in use since 10/2016 when support for OpenSSL 1.1 was added. LibreSSL breaks the version checks of OpenSSL by pretending to be OpenSSL in a very new version, but only offering the OpenSSL 1.0 API.
I don't know why the LibreSSL people didn't bother to do this properly, but alas.
comment:11 by , 7 years ago
Surprising for me: The ffmpeg options set refers to gnutls instead of libressl. See next attachment.
comment:13 by , 7 years ago
gnutls and openssl can't go together, so just remove the --enable-openssl line, since it's obviously not working with your libressl install.
comment:14 by , 7 years ago
I guess from here on, we will better wait for the MABS developers to check what happened. I believe they have some own experience with SSL/TLS libraries and their interdependencies... I won't be able to support much more.
comment:15 by , 7 years ago
Keywords: | libopenssl added |
---|
comment:16 by , 7 years ago
Resolution: | → invalid |
---|---|
Status: | new → closed |
Reading the development in MABS, I believe this ticket can be closed; they seem to agree that including both GnuTLS and OpenSSL is a mistake in the generation of the build options file.
comment:17 by , 7 years ago
Reproduced by developer: | set |
---|---|
Resolution: | invalid |
Status: | closed → reopened |
I have sent a patch that fixes the issue described in the ticket title (unrelated to MABS).
comment:18 by , 7 years ago
Component: | build system → avformat |
---|
comment:19 by , 7 years ago
I wonder if your commit got lost; I don't see any updates related to "tls" or "ssl" in the github repo since this one (which I suspect to have caused it, but I have no clue, just spotted changes around a "BIO_*" function name mask):
avformat/tls_openssl: move some functions up in the file
Can you link your submitted patch, please? (mere curiosity)
comment:22 by , 5 years ago
Resolution: | → duplicate |
---|---|
Status: | reopened → closed |
explicit build log