vibe.d ubuntu 22.04 ssl linking error

Gavin Gray gav.gray at gmail.com
Wed May 18 20:49:34 UTC 2022


On Wednesday, 18 May 2022 at 20:41:53 UTC, Gavin Gray wrote:
> After upgrading to ubuntu 22.04, I get the linker error below 
> for a project that previously built successfully.
>
> OpenSSL 3.0.2 15 Mar 2022 (Library: OpenSSL 3.0.2 15 Mar 2022)
>
> LDC - the LLVM D compiler (1.27.1):
>   based on DMD v2.097.2 and LLVM 12.0.1
>   built with LDC - the LLVM D compiler (1.27.1)
>   Default target: x86_64-unknown-linux-gnu
>   Host CPU: skylake
>   http://dlang.org - http://wiki.dlang.org/LDC
>
> vibe-d-0.9.5-beta.1
>
> I tried unsuccessfully to also install an earlier version of 
> OpenSSL
>
> Any suggestions?
>
> Compiling Diet HTML template test.dt...
> Linking...
> home/gavin/.dub/packages/vibe-d-0.9.4/vibe-d/tls/vibe/stream/openssl.d:284: error: undefined reference to 'SSL_get_peer_certificate'
> home/gavin/.dub/packages/vibe-d-0.9.4/vibe-d/tls/vibe/stream/openssl.d:625: error: undefined reference to 'SSLv23_client_method'
> home/gavin/.dub/packages/vibe-d-0.9.4/vibe-d/tls/vibe/stream/openssl.d:626: error: undefined reference to 'SSLv23_client_method'
> home/gavin/.dub/packages/vibe-d-0.9.4/vibe-d/tls/vibe/stream/openssl.d:630: error: undefined reference to 'SSLv23_client_method'
> home/gavin/.dub/packages/vibe-d-0.9.4/vibe-d/tls/vibe/stream/openssl.d:631: error: undefined reference to 'SSLv23_client_method'
> home/gavin/.dub/packages/vibe-d-0.9.4/vibe-d/tls/vibe/stream/openssl.d:638: error: undefined reference to 'SSLv23_server_method'
> home/gavin/.dub/packages/vibe-d-0.9.4/vibe-d/tls/vibe/stream/openssl.d:639: error: undefined reference to 'SSLv23_server_method'
> home/gavin/.dub/packages/vibe-d-0.9.4/vibe-d/tls/vibe/stream/openssl.d:641: error: undefined reference to 'SSLv23_server_method'
> home/gavin/.dub/packages/vibe-d-0.9.4/vibe-d/tls/vibe/stream/openssl.d:642: error: undefined reference to 'SSLv23_server_method'
> home/gavin/.dub/packages/vibe-d-0.9.4/vibe-d/tls/vibe/stream/openssl.d:906: error: undefined reference to 'get_rfc3526_prime_2048'
> home/gavin/.dub/packages/vibe-d-0.9.4/vibe-d/tls/vibe/stream/openssl.d:1100: error: undefined reference to 'SSL_load_error_strings'
> home/gavin/.dub/packages/vibe-d-0.9.4/vibe-d/tls/vibe/stream/openssl.d:1101: error: undefined reference to 'SSL_library_init'
> home/gavin/.dub/packages/vibe-d-0.9.4/vibe-d/tls/vibe/stream/openssl.d:1103: error: undefined reference to 'CRYPTO_num_locks'
> home/gavin/.dub/packages/vibe-d-0.9.4/vibe-d/tls/vibe/stream/openssl.d:1111: error: undefined reference to 'CRYPTO_set_id_callback'
> home/gavin/.dub/packages/vibe-d-0.9.4/vibe-d/tls/vibe/stream/openssl.d:1112: error: undefined reference to 'CRYPTO_set_locking_callback'
> home/gavin/.dub/packages/vibe-d-0.9.4/vibe-d/tls/vibe/stream/openssl.d:1117: error: undefined reference to 'SSL_get_ex_new_index'
> home/gavin/.dub/packages/openssl-1.1.6_1.0.1g/openssl/deimos/openssl/safestack.d:140: error: undefined reference to 'sk_num'
> home/gavin/.dub/packages/openssl-1.1.6_1.0.1g/openssl/deimos/openssl/safestack.d:142: error: undefined reference to 'sk_value'
> home/gavin/.dub/packages/vibe-d-0.9.4/vibe-d/tls/vibe/stream/openssl.d:1380: error: undefined reference to 'ERR_put_error'
> collect2: error: ld returned 1 exit status
> Error: /usr/bin/cc failed with status: 1
> /home/gavin/dlang/ldc-1.27.1/bin/ldc2 failed with exit code 1.

After posting I noticed the actual version of vibe was 0.9.4. 
Upgraded to vibe 0.9.5.beta.1 and now it linked successfully.

Therefore no longer an issue!


More information about the Digitalmars-d-learn mailing list