Thread overview
vibe.d still does not work on FreeBSD.
Feb 18, 2024
Alain De Vos
Feb 18, 2024
Sergey
Feb 19, 2024
Alain De Vos
Feb 19, 2024
Kagamin
Feb 20, 2024
Alain De Vos
February 18, 2024

The error i get :


Up-to-date vibe-d 0.9.8: target for configuration [library] is up to date.
    Building t ~master: building configuration [application]
     Linking t
ld: error: undefined symbol: SSL_get_peer_certificate
>>> referenced by openssl.d:373 (../../.dub/packages/vibe-d/0.9.8/vibe-d/tls/vibe/stream/openssl.d:373)
>>>               vibe.stream.openssl.o:(_D4vibe6stream7openssl13OpenSSLStream6__ctorMFNfSQBv8internal14interfaceproxy__T14InterfaceProxyTCQDs4coreQDv6StreamZQBlCQEpQEnQEj14OpenSSLContextEQFpQFn3tls14TLSStreamStateAyaSQGtQDb3net14NetworkAddressAQBfZ10__lambda18MFNbNeZPS6deimosQIo5types7x509_st) in archive ../../.dub/cache/vibe-d/0.9.8/+tls/build/openssl-debug-9dGb-exFDe8I4hbczCzDag/libvibe-d_tls.a
>>> did you mean: SSL_get0_peer_certificate
>>> defined in: /usr/lib/libssl.so

ld: error: undefined symbol: ERR_put_error
>>> referenced by openssl.d:1488 (../../.dub/packages/vibe-d/0.9.8/vibe-d/tls/vibe/stream/openssl.d:1488)
>>>               vibe.stream.openssl.o:(_D4vibe6stream7openssl11setSSLErrorFNbNeAyaQdiQgZv) in archive ../../.dub/cache/vibe-d/0.9.8/+tls/build/openssl-debug-9dGb-exFDe8I4hbczCzDag/libvibe-d_tls.a
clang-15: error: linker command failed with exit code 1 (use -v to see invocation)
Error: /usr/local/bin/clang failed with status: 1
Error ldc2 failed with exit code 1.
HOST:x: /home/x/test/t:>

As default version of openssl i use on FreeBSD:
DEFAULT_VERSIONS+= ssl=openssl111

February 18, 2024

On Sunday, 18 February 2024 at 13:23:53 UTC, Alain De Vos wrote:

>

DEFAULT_VERSIONS+= ssl=openssl111

Maybe also could be helpful to share your dub.json, compiler version and OS version as well.

February 19, 2024

On Sunday, 18 February 2024 at 19:22:26 UTC, Sergey wrote:

>

On Sunday, 18 February 2024 at 13:23:53 UTC, Alain De Vos wrote:

>

DEFAULT_VERSIONS+= ssl=openssl111

Maybe also could be helpful to share your dub.json, compiler version and OS version as well.

Compiler :
ldc2 --version :

LDC - the LLVM D compiler (1.36.0):
based on DMD v2.106.1 and LLVM 15.0.7
built with LDC - the LLVM D compiler (1.36.0)
Default target: x86_64-portbld-freebsd14.0
Host CPU: alderlake

dub.json :
{
"authors": [
"x"
],
"copyright": "Copyright © 2024, x",
"dependencies": {
"vibe-d": "~>0.9"
},
"description": "A simple vibe.d server application.",
"license": "proprietary",
"name": "hello"
}

February 19, 2024

Docs say SSL_get0_peer_certificate was added in openssl 3.

February 20, 2024

On Monday, 19 February 2024 at 07:11:30 UTC, Kagamin wrote:

>

Docs say SSL_get0_peer_certificate was added in openssl 3.

I recompiled everything with :

DEFAULT_VERSIONS+= ssl=openssl31

With this setting vibe works fine on FreeBSD. Nice.