digitalmars.D - Help compiling discord bot from dub, vibe.d linker errors
- Anonymouse (9/31) Jun 15 2017 I wanted to make a Hello World discord bot, and I found dscord[1]
- Anonymouse (3/6) Jun 15 2017 Apologies, this was meant to go into Learn. I'll post it there
- Sebastiaan Koppe (9/16) Jun 15 2017 vibe.d is using the deimos openssl bindings, and those are
I wanted to make a Hello World discord bot, and I found dscord[1] on dub. It even has an example bot Jeff[2], but it won't build. The machine is running Manjaro/Arch linux x64.$ ./build.py Building with 0 plugins... Building jeff......dscord ~master: target for configuration "dscord-linux-static-x64" is up to date. jeff ~master: building configuration "jeff-linux-static-x64"... Linking... ../../../.dub/packages/vibe-d-0.8.0-beta.6/vibe-d/stream/.dub/build/generic-debug-linux.posix-x86_64-dmd_2074-2FC725C8AA6EF22B1FB09E2271B4E136/libvibe-d_ tream.a(openssl.o): In function `_D4vibe6stream7openssl18_sharedStaticCtor2FZv': /home/src/discord/jeff/../../.dub/packages/vibe-d-0.8.0-beta.6/vibe-d/stream/vibe/s ream/openssl.d:863: undefined reference to `SSL_load_error_strings' /home/src/discord/jeff/../../.dub/packages/vibe-d-0.8.0-beta.6/vibe-d/stream/vibe/s ream/openssl.d:864: undefined reference to `SSL_library_init' /home/src/discord/jeff/../../.dub/packages/vibe-d-0.8.0-beta.6/vibe-d/stream/vibe/s ream/openssl.d:866: undefined reference to `CRYPTO_num_locks' /home/src/discord/jeff/../../.dub/packages/vibe-d-0.8.0-beta.6/vibe-d/stream/vibe/s ream/openssl.d:874: undefined reference to `CRYPTO_set_id_callback' /home/src/discord/jeff/../../.dub/packages/vibe-d-0.8.0-beta.6/vibe-d/stream/vibe/s ream/openssl.d:880: undefined reference to `SSL_get_ex_new_index' ../../.dub/packages/vibe-d-0.8.0-beta.6/vibe-d/stream/.dub/build/generic-debug-linux.posix-x86_64-dmd_2074-2FC725C8AA6EF22B1FB09E2271B4E136/libvibe-d_stream.a( penssl_10df_569.o): In function `_D4vibe6stream7openssl14OpenSSLContext6__ctorMFNfE4vibe6stream3tls14TLSContextKindE4vibe6stream3tls10TLSVersionZ9__lambda3MFNbNeZv': /home/src/discord/jeff/../../.dub/packages/vibe-d-0.8.0-beta.6/vibe-d/stream/vibe/s ream/openssl.d:419: undefined reference to `SSLv23_client_method' /home/src/discord/jeff/../../.dub/packages/vibe-d-0.8.0-beta.6/vibe-d/stream/vibe/s ream/openssl.d:420: undefined reference to `SSLv23_client_method' /home/src/discord/jeff/../../.dub/packages/vibe-d-0.8.0-beta.6/vibe-d/stream/vibe/s ream/openssl.d:424: undefined reference to `SSLv23_client_method' /home/src/discord/jeff/../../.dub/packages/vibe-d-0.8.0-beta.6/vibe-d/stream/vibe/s ream/openssl.d:425: undefined reference to `SSLv23_client_method' /home/src/discord/jeff/../../.dub/packages/vibe-d-0.8.0-beta.6/vibe-d/stream/vibe/s ream/openssl.d:432: undefined reference to `SSLv23_server_method' /home/src/discord/jeff/../../.dub/packages/vibe-d-0.8.0-beta.6/vibe-d/stream/vibe/s ream/openssl.d:433: undefined reference to `SSLv23_server_method' /home/src/discord/jeff/../../.dub/packages/vibe-d-0.8.0-beta.6/vibe-d/stream/vibe/s ream/openssl.d:435: undefined reference to `SSLv23_server_method' /home/src/discord/jeff/../../.dub/packages/vibe-d-0.8.0-beta.6/vibe-d/stream/vibe/s ream/openssl.d:436: undefined reference to `SSLv23_server_method'... Is that vibe.d not linking with openssl? There are more errors but it would be a bit long to paste them all. [1]: https://code.dlang.org/packages/dscord [2]: https://github.com/b1naryth1ef/jeff
Jun 15 2017
On Thursday, 15 June 2017 at 15:50:06 UTC, Anonymouse wrote:I wanted to make a Hello World discord bot, and I found dscord[1] on dub. It even has an example bot Jeff[2], but it won't build. The machine is running Manjaro/Arch linux x64.Apologies, this was meant to go into Learn. I'll post it there instead.
Jun 15 2017
On Thursday, 15 June 2017 at 15:50:06 UTC, Anonymouse wrote:I wanted to make a Hello World discord bot, and I found dscord[1] on dub. It even has an example bot Jeff[2], but it won't build. The machine is running Manjaro/Arch linux x64. Is that vibe.d not linking with openssl? There are more errors but it would be a bit long to paste them all. [1]: https://code.dlang.org/packages/dscord [2]: https://github.com/b1naryth1ef/jeffvibe.d is using the deimos openssl bindings, and those are outdated. See [1] While vibe.d can use botan instead of openssl, due to an open bug with dub, it won't work. I do have a PR [2] fixing it, but it ain't pretty. Also, consider [3] as workaround. [1] https://github.com/rejectedsoftware/vibe.d/issues/1758 [2] https://github.com/dlang/dub/pull/1148 [2] https://github.com/rejectedsoftware/vibe.d/pull/1769
Jun 15 2017