Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

(Solved) Broken opusfile-git #930

Closed
slyfox1186 opened this issue Sep 26, 2018 · 7 comments
Closed

(Solved) Broken opusfile-git #930

slyfox1186 opened this issue Sep 26, 2018 · 7 comments

Comments

@slyfox1186
Copy link

slyfox1186 commented Sep 26, 2018

Broken opusfile-git

https://0x0.st/s3YC.zip

@slyfox1186 slyfox1186 changed the title https://0x0.st/s3YC.zip Broken opusfile-git Sep 26, 2018
@LigH-de
Copy link
Contributor

LigH-de commented Sep 26, 2018

Brief excerpt from ab-suite.make.log (to include searchable keywords in this report):

  CC       src/libopusurl_la-wincerts.lo
../src/wincerts.c: In function 'op_capi_new':
../src/wincerts.c:42:8: error: dereferencing pointer to incomplete type 'X509_LOOKUP {aka struct x509_lookup_st}'
     _lu->method_data=(char *)h_store;
        ^~
../src/wincerts.c: In function 'op_capi_retrieve_by_subject':
../src/wincerts.c:61:3: warning: implicit declaration of function 'CRYPTO_w_lock'; did you mean 'CRYPTO_zalloc'? [-Wimplicit-function-declaration]
   CRYPTO_w_lock(CRYPTO_LOCK_X509_STORE);
   ^~~~~~~~~~~~~
   CRYPTO_zalloc
../src/wincerts.c:61:17: error: 'CRYPTO_LOCK_X509_STORE' undeclared (first use in this function); did you mean 'CRYPTO_EX_INDEX_X509_STORE'?
   CRYPTO_w_lock(CRYPTO_LOCK_X509_STORE);
                 ^~~~~~~~~~~~~~~~~~~~~~
                 CRYPTO_EX_INDEX_X509_STORE
../src/wincerts.c:61:17: note: each undeclared identifier is reported only once for each function it appears in
../src/wincerts.c:63:3: warning: implicit declaration of function 'CRYPTO_w_unlock'; did you mean 'CRYPTO_realloc'? [-Wimplicit-function-declaration]
   CRYPTO_w_unlock(CRYPTO_LOCK_X509_STORE);
   ^~~~~~~~~~~~~~~
   CRYPTO_realloc

Apparently incompatible with OpenSSL 1.1 – may be advisable to remove support for HTTP(S) URL's.

@slyfox1186
Copy link
Author

slyfox1186 commented Sep 26, 2018

edit file:
media-suite_compile.sh

For a fresh compile not yet run replace lines 594-604 with

if [[ $standalone = y ]] && enabled libopus; then
do_pacman_install openssl libogg
hide_libressl
_check=(opus/opusfile.h libopus{file,url}.{,l}a opus{file,url}.pc)
_deps=(opus.pc "$MINGW_PREFIX"/lib/pkgconfig/{libssl,ogg}.pc)
if do_vcs "https://github.com/xiph/opusfile.git"; then
do_uninstall "${_check[@]}"
do_autogen
do_separate_confmakeinstall --disable-{http,examples,doc}
do_checkIfExist
fi

The following lines are ultimately what I did to solve my specific build. Line numbers may vary.

Search for this line to find your place.

https://github.com/xiph/opusfile.git

replace line 559 with

do_separate_confmakeinstall --disable-{http,examples,doc}

replace line 568 with

do_separate_confmakeinstall --disable-{http,examples,doc}

@slyfox1186 slyfox1186 changed the title Broken opusfile-git (Solved) Broken opusfile-git Sep 26, 2018
@LigH-de
Copy link
Contributor

LigH-de commented Sep 26, 2018

Should be lines 602 and 611 in the latest version.

Creating patch and pull request...

@wiiaboo
Copy link
Member

wiiaboo commented Sep 26, 2018

Removing http seems like a big feature loss.

@LigH-de
Copy link
Contributor

LigH-de commented Sep 26, 2018

At least it can be reverted easily when it works again.

Alternative? ... Force a dependency to a lower but supported OpenSSL version until a newer version is supported?

And - damn, I wanted to test this patch before submitting it, but the next (unrelated) issue breaks it.

LigH-de added a commit to LigH-de/media-autobuild_suite that referenced this issue Sep 26, 2018
Temporary workaround to avoid incompatibility issues with OpenSSL 1.1 – based on changes suggested by @slyfox1186 in m-ab-s#930 (comment)
@wiiaboo
Copy link
Member

wiiaboo commented Sep 26, 2018

Workaround in f77cb0b.

@wiiaboo wiiaboo closed this as completed Sep 26, 2018
@wiiaboo
Copy link
Member

wiiaboo commented Sep 26, 2018

Was checking why only mingw was affected since opusfile is working fine in Archlinux, but it's because of windows-specific code to get certificates.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants