[GH-ISSUE #39] Build fails with rust 1.12.0-beta.1 #30

Closed
opened 2026-03-07 22:18:07 +03:00 by kerem · 10 comments
Owner

Originally created by @19h on GitHub (Aug 22, 2016).
Original GitHub issue: https://github.com/hickory-dns/hickory-dns/issues/39

Hey,

Since I'm using a macOS beta (Sierra) on my computer, I'm forced to use 1.12.0-beta1.

The build fails with rust 1.12.0:

--- stderr
src/c_helpers.c:4:20: error: incomplete definition of type 'struct ssl_st'
    CRYPTO_add(&ssl->references, 1, CRYPTO_LOCK_SSL);
                ~~~^
/usr/local/include/openssl/crypto.h:166:39: note: expanded from macro 'CRYPTO_add'
#  define CRYPTO_add(a,b,c)       ((*(a))+=(b))
                                      ^
/usr/local/include/openssl/ossl_typ.h:181:16: note: forward declaration of 'struct ssl_st'
typedef struct ssl_st SSL;
               ^
src/c_helpers.c:8:20: error: incomplete definition of type 'struct ssl_ctx_st'
    CRYPTO_add(&ctx->references,1,CRYPTO_LOCK_SSL_CTX);
                ~~~^
/usr/local/include/openssl/crypto.h:166:39: note: expanded from macro 'CRYPTO_add'
#  define CRYPTO_add(a,b,c)       ((*(a))+=(b))
                                      ^
/usr/local/include/openssl/ossl_typ.h:182:16: note: forward declaration of 'struct ssl_ctx_st'
typedef struct ssl_ctx_st SSL_CTX;
               ^
src/c_helpers.c:12:21: error: incomplete definition of type 'struct x509_st'
    CRYPTO_add(&x509->references,1,CRYPTO_LOCK_X509);
                ~~~~^
/usr/local/include/openssl/crypto.h:166:39: note: expanded from macro 'CRYPTO_add'
#  define CRYPTO_add(a,b,c)       ((*(a))+=(b))
                                      ^
/usr/local/include/openssl/ossl_typ.h:161:16: note: forward declaration of 'struct x509_st'
typedef struct x509_st X509;
               ^
3 errors generated.
thread 'main' panicked at 'explicit panic', /a/long/cargo/path/gcc-0.3.28/src/lib.rs:840
stack backtrace:
   1:        0x10330eaf9 - std::sys::backtrace::tracing::imp::write::h6f07380f45fe1307
   2:        0x103314c60 - std::panicking::default_hook::_{{closure}}::he6993150602797ff
   3:        0x10331408a - std::panicking::default_hook::h42f7cdc1bed8dd00
   4:        0x103314656 - std::panicking::rust_panic_with_hook::hdcce59947203a4c0
   5:        0x1032f86b4 - std::panicking::begin_panic::h6e522b8d506dc874
   6:        0x10330224e - gcc::fail::h25611a6497098034
   7:        0x103302066 - gcc::run::h0d2d8efda2e0dff3
   8:        0x1032fa161 - gcc::Config::compile::he274dd27a071a635
   9:        0x1032f78e5 - build_script_build::main::hb7741c2c34a9f03d
  10:        0x10331524a - __rust_maybe_catch_panic
  11:        0x103313b5e - std::rt::lang_start::h14913182d401dec2

Edit:

Seems like CRYPTO_LOCK_SSL was removed from openssl. Seems to be an upstream issue with the openssl crate..?

Originally created by @19h on GitHub (Aug 22, 2016). Original GitHub issue: https://github.com/hickory-dns/hickory-dns/issues/39 Hey, Since I'm using a macOS beta (Sierra) on my computer, I'm forced to use 1.12.0-beta1. The build fails with rust 1.12.0: ``` --- stderr src/c_helpers.c:4:20: error: incomplete definition of type 'struct ssl_st' CRYPTO_add(&ssl->references, 1, CRYPTO_LOCK_SSL); ~~~^ /usr/local/include/openssl/crypto.h:166:39: note: expanded from macro 'CRYPTO_add' # define CRYPTO_add(a,b,c) ((*(a))+=(b)) ^ /usr/local/include/openssl/ossl_typ.h:181:16: note: forward declaration of 'struct ssl_st' typedef struct ssl_st SSL; ^ src/c_helpers.c:8:20: error: incomplete definition of type 'struct ssl_ctx_st' CRYPTO_add(&ctx->references,1,CRYPTO_LOCK_SSL_CTX); ~~~^ /usr/local/include/openssl/crypto.h:166:39: note: expanded from macro 'CRYPTO_add' # define CRYPTO_add(a,b,c) ((*(a))+=(b)) ^ /usr/local/include/openssl/ossl_typ.h:182:16: note: forward declaration of 'struct ssl_ctx_st' typedef struct ssl_ctx_st SSL_CTX; ^ src/c_helpers.c:12:21: error: incomplete definition of type 'struct x509_st' CRYPTO_add(&x509->references,1,CRYPTO_LOCK_X509); ~~~~^ /usr/local/include/openssl/crypto.h:166:39: note: expanded from macro 'CRYPTO_add' # define CRYPTO_add(a,b,c) ((*(a))+=(b)) ^ /usr/local/include/openssl/ossl_typ.h:161:16: note: forward declaration of 'struct x509_st' typedef struct x509_st X509; ^ 3 errors generated. thread 'main' panicked at 'explicit panic', /a/long/cargo/path/gcc-0.3.28/src/lib.rs:840 stack backtrace: 1: 0x10330eaf9 - std::sys::backtrace::tracing::imp::write::h6f07380f45fe1307 2: 0x103314c60 - std::panicking::default_hook::_{{closure}}::he6993150602797ff 3: 0x10331408a - std::panicking::default_hook::h42f7cdc1bed8dd00 4: 0x103314656 - std::panicking::rust_panic_with_hook::hdcce59947203a4c0 5: 0x1032f86b4 - std::panicking::begin_panic::h6e522b8d506dc874 6: 0x10330224e - gcc::fail::h25611a6497098034 7: 0x103302066 - gcc::run::h0d2d8efda2e0dff3 8: 0x1032fa161 - gcc::Config::compile::he274dd27a071a635 9: 0x1032f78e5 - build_script_build::main::hb7741c2c34a9f03d 10: 0x10331524a - __rust_maybe_catch_panic 11: 0x103313b5e - std::rt::lang_start::h14913182d401dec2 ``` **Edit:** Seems like `CRYPTO_LOCK_SSL` was removed from openssl. Seems to be an upstream issue with the openssl crate..?
kerem 2026-03-07 22:18:07 +03:00
  • closed this issue
  • added the
    docs
    label
Author
Owner

@bluejekyll commented on GitHub (Aug 22, 2016):

Quite possible. I haven't tried 1.12.0. What version of OpenSSL do you have installed? I personally install the one in brew, rather than using Apple's fork.

<!-- gh-comment-id:241485072 --> @bluejekyll commented on GitHub (Aug 22, 2016): Quite possible. I haven't tried 1.12.0. What version of OpenSSL do you have installed? I personally install the one in brew, rather than using Apple's fork.
Author
Owner

@19h commented on GitHub (Aug 22, 2016):

OpenSSL 1.1.0-pre4 (beta) 16 Mar 2016 through brew. How do you force rust to use the Homebrew libraries?

<!-- gh-comment-id:241487335 --> @19h commented on GitHub (Aug 22, 2016): `OpenSSL 1.1.0-pre4 (beta) 16 Mar 2016` through brew. How do you force rust to use the Homebrew libraries?
Author
Owner

@bluejekyll commented on GitHub (Aug 22, 2016):

These are the instructions I have in the README.md at the root (please let me know if they are not accurate):

$ brew install openssl
$ brew link --force openssl
$ brew install sqlite 

That brew link --force openssl will cause the version brew installs to be the one that most of your dev tools will choose to use. I don't think it affects Apple's tools (though if this matters to you, you should double check it).

<!-- gh-comment-id:241488451 --> @bluejekyll commented on GitHub (Aug 22, 2016): These are the instructions I have in the README.md at the root (please let me know if they are not accurate): ``` $ brew install openssl $ brew link --force openssl $ brew install sqlite ``` That `brew link --force openssl` will cause the version brew installs to be the one that most of your dev tools will choose to use. I don't think it affects Apple's tools (though if this matters to you, you should double check it).
Author
Owner

@19h commented on GitHub (Aug 22, 2016):

Homebrew just recently started refusing to do "--force":

/folder user (master=)# brew link --force openssl
Warning: Refusing to link: openssl
Linking keg-only openssl means you may end up linking against the insecure,
deprecated system OpenSSL while using the headers from Homebrew's openssl.
Instead, pass the full include/library paths to your compiler e.g.:
  -I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib

Can I somehow pass this to rust?

<!-- gh-comment-id:241491356 --> @19h commented on GitHub (Aug 22, 2016): Homebrew just recently started refusing to do "--force": ``` /folder user (master=)# brew link --force openssl Warning: Refusing to link: openssl Linking keg-only openssl means you may end up linking against the insecure, deprecated system OpenSSL while using the headers from Homebrew's openssl. Instead, pass the full include/library paths to your compiler e.g.: -I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib ``` Can I somehow pass this to rust?
Author
Owner

@19h commented on GitHub (Aug 22, 2016):

Okay this is ugly. I got around the "endogenous" rust build error by adding this to ~/.cargo/config:

rustc-link-search = ["/usr/local/opt/openssl/include"]
rustc-link-lib = ["/usr/local/opt/openssl/lib"]

Then the C-shim failed. Got around that by adding CFLAGS="-I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib".

Now openssl-sys is failing, because it seems like Rust / Cargo / et al. is not honoring CXXFLAGS (though it honors CFLAGS):

/folder user (master=)# CFLAGS="-I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib" CCFLAGS="-I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib" cargo build
   Compiling trust-dns v0.7.3 (file:///private/tmp/trust-dns)
error: linking with `cc` failed: exit code: 1
  |
  = note: "cc" "-m64" "-L" "/user-homefolder/.rsvm/versions/beta.20160822184240/dist/lib/rustlib/x86_64-apple-darwin/lib" "/private/tmp/trust-dns/target/debug/named.0.o" "-o" "/private/tmp/trust-dns/target/debug/named" "-Wl,-dead_strip" "-nodefaultlibs" "-L" "/private/tmp/trust-dns/target/debug/deps" "-L" "/private/tmp/trust-dns/target/debug/build/openssl-5464f8f6e728c35a/out" "-L" "/private/tmp/trust-dns/target/debug/build/openssl-sys-extras-5c7e4d8925825f00/out" "-L" "/usr/local/lib" "-L" "/usr/lib" "-L" "/user-homefolder/.rsvm/versions/beta.20160822184240/dist/lib/rustlib/x86_64-apple-darwin/lib" "/private/tmp/trust-dns/target/debug/deps/libtrust_dns.rlib" "/private/tmp/trust-dns/target/debug/deps/libtoml-1a75b37a708f335b.rlib" "/private/tmp/trust-dns/target/debug/deps/libchrono-80703cb7572bf802.rlib" "/private/tmp/trust-dns/target/debug/deps/libdocopt-7a944050d6450326.rlib" "/private/tmp/trust-dns/target/debug/deps/libstrsim-6c9aaf530d99b06b.rlib" "/private/tmp/trust-dns/target/debug/deps/liberror_chain-5731652bab0d1a8e.rlib" "/private/tmp/trust-dns/target/debug/deps/libopenssl-6d8c7b7707d12a7d.rlib" "/private/tmp/trust-dns/target/debug/deps/libregex-9bb42fd004f4f034.rlib" "/private/tmp/trust-dns/target/debug/deps/libthread_local-e5ce0d44bcaf00e6.rlib" "/private/tmp/trust-dns/target/debug/deps/libopenssl_sys_extras-5206753a3d8bd8ef.rlib" "/private/tmp/trust-dns/target/debug/deps/libopenssl_sys-1fd52a993b3834a7.rlib" "/private/tmp/trust-dns/target/debug/deps/libthread_id-bcd46c79a620a618.rlib" "/private/tmp/trust-dns/target/debug/deps/libdata_encoding-8503efda09142c21.rlib" "/private/tmp/trust-dns/target/debug/deps/librand-49a08859d086fffe.rlib" "/private/tmp/trust-dns/target/debug/deps/libbacktrace-1447df3dfd1d1327.rlib" "/private/tmp/trust-dns/target/debug/deps/libkernel32-df86a08647459244.rlib" "/private/tmp/trust-dns/target/debug/deps/libdbghelp-72843bd5c387f78b.rlib" "/private/tmp/trust-dns/target/debug/deps/libaho_corasick-e528bf4fdf3954ff.rlib" "/private/tmp/trust-dns/target/debug/deps/libnum-f6961afa9fa1a02b.rlib" "/private/tmp/trust-dns/target/debug/deps/libnum_iter-50df698bc905252c.rlib" "/private/tmp/trust-dns/target/debug/deps/libnum_integer-52fdddf28cd8e924.rlib" "/private/tmp/trust-dns/target/debug/deps/libregex_syntax-6ded9701a0454251.rlib" "/private/tmp/trust-dns/target/debug/deps/libnum_traits-555e3a6260c26680.rlib" "/private/tmp/trust-dns/target/debug/deps/librusqlite-a221a739db38f0bf.rlib" "/private/tmp/trust-dns/target/debug/deps/liblru_cache-5df7c7dfb11fae93.rlib" "/private/tmp/trust-dns/target/debug/deps/liblinked_hash_map-8bca62f90f0f04c7.rlib" "/private/tmp/trust-dns/target/debug/deps/liblibsqlite3_sys-02dacca8e9891790.rlib" "/private/tmp/trust-dns/target/debug/deps/libbitflags-0e272044714c8076.rlib" "/private/tmp/trust-dns/target/debug/deps/libmio-4cd51b3d244c94b3.rlib" "/private/tmp/trust-dns/target/debug/deps/libnet2-b2390925f9bbf4a2.rlib" "/private/tmp/trust-dns/target/debug/deps/libcfg_if-72c1f992b13d5087.rlib" "/private/tmp/trust-dns/target/debug/deps/libwinapi-aabbfb32db59d649.rlib" "/private/tmp/trust-dns/target/debug/deps/libnix-e3c0cb7ca8e41f17.rlib" "/private/tmp/trust-dns/target/debug/deps/libbitflags-75746cc7f0e9d928.rlib" "/private/tmp/trust-dns/target/debug/deps/libslab-4f8b9e9b6e35857c.rlib" "/private/tmp/trust-dns/target/debug/deps/libtime-750bfdd52feafcb7.rlib" "/private/tmp/trust-dns/target/debug/deps/libbytes-f9fbfc75eb2416e0.rlib" "/private/tmp/trust-dns/target/debug/deps/liblog-bf16bb9a4912b11d.rlib" "/private/tmp/trust-dns/target/debug/deps/librustc_serialize-3561541d79c18212.rlib" "/private/tmp/trust-dns/target/debug/deps/libmemchr-c555f740a543880f.rlib" "/private/tmp/trust-dns/target/debug/deps/liblibc-30d46fdd62f8c2eb.rlib" "/private/tmp/trust-dns/target/debug/deps/libmiow-b827bf6129dcd844.rlib" "/private/tmp/trust-dns/target/debug/deps/libutf8_ranges-5c6a6dacba3be7ce.rlib" "/private/tmp/trust-dns/target/debug/deps/librustc_demangle-fadab49944cf4d3d.rlib" "/private/tmp/trust-dns/target/debug/deps/liblazy_static-359f5533c970cd71.rlib" "/user-homefolder/.rsvm/versions/beta.20160822184240/dist/lib/rustlib/x86_64-apple-darwin/lib/libstd-195e6261.rlib" "/user-homefolder/.rsvm/versions/beta.20160822184240/dist/lib/rustlib/x86_64-apple-darwin/lib/libpanic_unwind-195e6261.rlib" "/user-homefolder/.rsvm/versions/beta.20160822184240/dist/lib/rustlib/x86_64-apple-darwin/lib/libunwind-195e6261.rlib" "/user-homefolder/.rsvm/versions/beta.20160822184240/dist/lib/rustlib/x86_64-apple-darwin/lib/librand-195e6261.rlib" "/user-homefolder/.rsvm/versions/beta.20160822184240/dist/lib/rustlib/x86_64-apple-darwin/lib/libcollections-195e6261.rlib" "/user-homefolder/.rsvm/versions/beta.20160822184240/dist/lib/rustlib/x86_64-apple-darwin/lib/liballoc-195e6261.rlib" "/user-homefolder/.rsvm/versions/beta.20160822184240/dist/lib/rustlib/x86_64-apple-darwin/lib/liballoc_jemalloc-195e6261.rlib" "/user-homefolder/.rsvm/versions/beta.20160822184240/dist/lib/rustlib/x86_64-apple-darwin/lib/liblibc-195e6261.rlib" "/user-homefolder/.rsvm/versions/beta.20160822184240/dist/lib/rustlib/x86_64-apple-darwin/lib/librustc_unicode-195e6261.rlib" "/user-homefolder/.rsvm/versions/beta.20160822184240/dist/lib/rustlib/x86_64-apple-darwin/lib/libcore-195e6261.rlib" "-l" "ssl" "-l" "crypto" "-l" "sqlite3" "-l" "sqlite3" "-l" "sqlite3" "-l" "System" "-l" "pthread" "-l" "c" "-l" "m" "-l" "compiler-rt"
  = note: Undefined symbols for architecture x86_64:
  "_SSL_library_init", referenced from:
      openssl_sys::init::_$u7b$$u7b$closure$u7d$$u7d$::hd67a821b410a22ae in libopenssl_sys-1fd52a993b3834a7.rlib(openssl_sys-1fd52a993b3834a7.0.o)
  "_SSL_load_error_strings", referenced from:
      openssl_sys::init::_$u7b$$u7b$closure$u7d$$u7d$::hd67a821b410a22ae in libopenssl_sys-1fd52a993b3834a7.rlib(openssl_sys-1fd52a993b3834a7.0.o)
  "_EVP_MD_CTX_create", referenced from:
      openssl::crypto::hash::Hasher::new::h6168f3ff1db2d70d in libopenssl-6d8c7b7707d12a7d.rlib(openssl-6d8c7b7707d12a7d.0.o)
  "_CRYPTO_num_locks", referenced from:
      openssl_sys::init::_$u7b$$u7b$closure$u7d$$u7d$::hd67a821b410a22ae in libopenssl_sys-1fd52a993b3834a7.rlib(openssl_sys-1fd52a993b3834a7.0.o)
  "_CRYPTO_set_locking_callback", referenced from:
      openssl_sys::init::_$u7b$$u7b$closure$u7d$$u7d$::hd67a821b410a22ae in libopenssl_sys-1fd52a993b3834a7.rlib(openssl_sys-1fd52a993b3834a7.0.o)
  "_CRYPTO_set_id_callback", referenced from:
      openssl_sys::set_id_callback::h3aa1529931a76efd in libopenssl_sys-1fd52a993b3834a7.rlib(openssl_sys-1fd52a993b3834a7.0.o)
  "_EVP_MD_CTX_destroy", referenced from:
      _$LT$openssl..crypto..hash..Hasher$u20$as$u20$core..ops..Drop$GT$::drop::ha9bcb3fec7cd2f11 in libopenssl-6d8c7b7707d12a7d.rlib(openssl-6d8c7b7707d12a7d.0.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
<!-- gh-comment-id:241500771 --> @19h commented on GitHub (Aug 22, 2016): Okay this is ugly. I got around the "endogenous" rust build error by adding this to `~/.cargo/config`: ``` rustc-link-search = ["/usr/local/opt/openssl/include"] rustc-link-lib = ["/usr/local/opt/openssl/lib"] ``` Then the C-shim failed. Got around that by adding `CFLAGS="-I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib"`. Now `openssl-sys` is failing, because it seems like Rust / Cargo / et al. is not honoring CXXFLAGS (though it honors CFLAGS): ``` /folder user (master=)# CFLAGS="-I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib" CCFLAGS="-I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib" cargo build Compiling trust-dns v0.7.3 (file:///private/tmp/trust-dns) error: linking with `cc` failed: exit code: 1 | = note: "cc" "-m64" "-L" "/user-homefolder/.rsvm/versions/beta.20160822184240/dist/lib/rustlib/x86_64-apple-darwin/lib" "/private/tmp/trust-dns/target/debug/named.0.o" "-o" "/private/tmp/trust-dns/target/debug/named" "-Wl,-dead_strip" "-nodefaultlibs" "-L" "/private/tmp/trust-dns/target/debug/deps" "-L" "/private/tmp/trust-dns/target/debug/build/openssl-5464f8f6e728c35a/out" "-L" "/private/tmp/trust-dns/target/debug/build/openssl-sys-extras-5c7e4d8925825f00/out" "-L" "/usr/local/lib" "-L" "/usr/lib" "-L" "/user-homefolder/.rsvm/versions/beta.20160822184240/dist/lib/rustlib/x86_64-apple-darwin/lib" "/private/tmp/trust-dns/target/debug/deps/libtrust_dns.rlib" "/private/tmp/trust-dns/target/debug/deps/libtoml-1a75b37a708f335b.rlib" "/private/tmp/trust-dns/target/debug/deps/libchrono-80703cb7572bf802.rlib" "/private/tmp/trust-dns/target/debug/deps/libdocopt-7a944050d6450326.rlib" "/private/tmp/trust-dns/target/debug/deps/libstrsim-6c9aaf530d99b06b.rlib" "/private/tmp/trust-dns/target/debug/deps/liberror_chain-5731652bab0d1a8e.rlib" "/private/tmp/trust-dns/target/debug/deps/libopenssl-6d8c7b7707d12a7d.rlib" "/private/tmp/trust-dns/target/debug/deps/libregex-9bb42fd004f4f034.rlib" "/private/tmp/trust-dns/target/debug/deps/libthread_local-e5ce0d44bcaf00e6.rlib" "/private/tmp/trust-dns/target/debug/deps/libopenssl_sys_extras-5206753a3d8bd8ef.rlib" "/private/tmp/trust-dns/target/debug/deps/libopenssl_sys-1fd52a993b3834a7.rlib" "/private/tmp/trust-dns/target/debug/deps/libthread_id-bcd46c79a620a618.rlib" "/private/tmp/trust-dns/target/debug/deps/libdata_encoding-8503efda09142c21.rlib" "/private/tmp/trust-dns/target/debug/deps/librand-49a08859d086fffe.rlib" "/private/tmp/trust-dns/target/debug/deps/libbacktrace-1447df3dfd1d1327.rlib" "/private/tmp/trust-dns/target/debug/deps/libkernel32-df86a08647459244.rlib" "/private/tmp/trust-dns/target/debug/deps/libdbghelp-72843bd5c387f78b.rlib" "/private/tmp/trust-dns/target/debug/deps/libaho_corasick-e528bf4fdf3954ff.rlib" "/private/tmp/trust-dns/target/debug/deps/libnum-f6961afa9fa1a02b.rlib" "/private/tmp/trust-dns/target/debug/deps/libnum_iter-50df698bc905252c.rlib" "/private/tmp/trust-dns/target/debug/deps/libnum_integer-52fdddf28cd8e924.rlib" "/private/tmp/trust-dns/target/debug/deps/libregex_syntax-6ded9701a0454251.rlib" "/private/tmp/trust-dns/target/debug/deps/libnum_traits-555e3a6260c26680.rlib" "/private/tmp/trust-dns/target/debug/deps/librusqlite-a221a739db38f0bf.rlib" "/private/tmp/trust-dns/target/debug/deps/liblru_cache-5df7c7dfb11fae93.rlib" "/private/tmp/trust-dns/target/debug/deps/liblinked_hash_map-8bca62f90f0f04c7.rlib" "/private/tmp/trust-dns/target/debug/deps/liblibsqlite3_sys-02dacca8e9891790.rlib" "/private/tmp/trust-dns/target/debug/deps/libbitflags-0e272044714c8076.rlib" "/private/tmp/trust-dns/target/debug/deps/libmio-4cd51b3d244c94b3.rlib" "/private/tmp/trust-dns/target/debug/deps/libnet2-b2390925f9bbf4a2.rlib" "/private/tmp/trust-dns/target/debug/deps/libcfg_if-72c1f992b13d5087.rlib" "/private/tmp/trust-dns/target/debug/deps/libwinapi-aabbfb32db59d649.rlib" "/private/tmp/trust-dns/target/debug/deps/libnix-e3c0cb7ca8e41f17.rlib" "/private/tmp/trust-dns/target/debug/deps/libbitflags-75746cc7f0e9d928.rlib" "/private/tmp/trust-dns/target/debug/deps/libslab-4f8b9e9b6e35857c.rlib" "/private/tmp/trust-dns/target/debug/deps/libtime-750bfdd52feafcb7.rlib" "/private/tmp/trust-dns/target/debug/deps/libbytes-f9fbfc75eb2416e0.rlib" "/private/tmp/trust-dns/target/debug/deps/liblog-bf16bb9a4912b11d.rlib" "/private/tmp/trust-dns/target/debug/deps/librustc_serialize-3561541d79c18212.rlib" "/private/tmp/trust-dns/target/debug/deps/libmemchr-c555f740a543880f.rlib" "/private/tmp/trust-dns/target/debug/deps/liblibc-30d46fdd62f8c2eb.rlib" "/private/tmp/trust-dns/target/debug/deps/libmiow-b827bf6129dcd844.rlib" "/private/tmp/trust-dns/target/debug/deps/libutf8_ranges-5c6a6dacba3be7ce.rlib" "/private/tmp/trust-dns/target/debug/deps/librustc_demangle-fadab49944cf4d3d.rlib" "/private/tmp/trust-dns/target/debug/deps/liblazy_static-359f5533c970cd71.rlib" "/user-homefolder/.rsvm/versions/beta.20160822184240/dist/lib/rustlib/x86_64-apple-darwin/lib/libstd-195e6261.rlib" "/user-homefolder/.rsvm/versions/beta.20160822184240/dist/lib/rustlib/x86_64-apple-darwin/lib/libpanic_unwind-195e6261.rlib" "/user-homefolder/.rsvm/versions/beta.20160822184240/dist/lib/rustlib/x86_64-apple-darwin/lib/libunwind-195e6261.rlib" "/user-homefolder/.rsvm/versions/beta.20160822184240/dist/lib/rustlib/x86_64-apple-darwin/lib/librand-195e6261.rlib" "/user-homefolder/.rsvm/versions/beta.20160822184240/dist/lib/rustlib/x86_64-apple-darwin/lib/libcollections-195e6261.rlib" "/user-homefolder/.rsvm/versions/beta.20160822184240/dist/lib/rustlib/x86_64-apple-darwin/lib/liballoc-195e6261.rlib" "/user-homefolder/.rsvm/versions/beta.20160822184240/dist/lib/rustlib/x86_64-apple-darwin/lib/liballoc_jemalloc-195e6261.rlib" "/user-homefolder/.rsvm/versions/beta.20160822184240/dist/lib/rustlib/x86_64-apple-darwin/lib/liblibc-195e6261.rlib" "/user-homefolder/.rsvm/versions/beta.20160822184240/dist/lib/rustlib/x86_64-apple-darwin/lib/librustc_unicode-195e6261.rlib" "/user-homefolder/.rsvm/versions/beta.20160822184240/dist/lib/rustlib/x86_64-apple-darwin/lib/libcore-195e6261.rlib" "-l" "ssl" "-l" "crypto" "-l" "sqlite3" "-l" "sqlite3" "-l" "sqlite3" "-l" "System" "-l" "pthread" "-l" "c" "-l" "m" "-l" "compiler-rt" = note: Undefined symbols for architecture x86_64: "_SSL_library_init", referenced from: openssl_sys::init::_$u7b$$u7b$closure$u7d$$u7d$::hd67a821b410a22ae in libopenssl_sys-1fd52a993b3834a7.rlib(openssl_sys-1fd52a993b3834a7.0.o) "_SSL_load_error_strings", referenced from: openssl_sys::init::_$u7b$$u7b$closure$u7d$$u7d$::hd67a821b410a22ae in libopenssl_sys-1fd52a993b3834a7.rlib(openssl_sys-1fd52a993b3834a7.0.o) "_EVP_MD_CTX_create", referenced from: openssl::crypto::hash::Hasher::new::h6168f3ff1db2d70d in libopenssl-6d8c7b7707d12a7d.rlib(openssl-6d8c7b7707d12a7d.0.o) "_CRYPTO_num_locks", referenced from: openssl_sys::init::_$u7b$$u7b$closure$u7d$$u7d$::hd67a821b410a22ae in libopenssl_sys-1fd52a993b3834a7.rlib(openssl_sys-1fd52a993b3834a7.0.o) "_CRYPTO_set_locking_callback", referenced from: openssl_sys::init::_$u7b$$u7b$closure$u7d$$u7d$::hd67a821b410a22ae in libopenssl_sys-1fd52a993b3834a7.rlib(openssl_sys-1fd52a993b3834a7.0.o) "_CRYPTO_set_id_callback", referenced from: openssl_sys::set_id_callback::h3aa1529931a76efd in libopenssl_sys-1fd52a993b3834a7.rlib(openssl_sys-1fd52a993b3834a7.0.o) "_EVP_MD_CTX_destroy", referenced from: _$LT$openssl..crypto..hash..Hasher$u20$as$u20$core..ops..Drop$GT$::drop::ha9bcb3fec7cd2f11 in libopenssl-6d8c7b7707d12a7d.rlib(openssl-6d8c7b7707d12a7d.0.o) ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) ```
Author
Owner

@bluejekyll commented on GitHub (Aug 22, 2016):

Have you tried these instructions from the OpenSSL project:

export OPENSSL_INCLUDE_DIR=`brew --prefix openssl`/include
export OPENSSL_LIB_DIR=`brew --prefix openssl`/lib
<!-- gh-comment-id:241507069 --> @bluejekyll commented on GitHub (Aug 22, 2016): Have you tried these instructions from the [OpenSSL project](https://github.com/sfackler/rust-openssl): ``` export OPENSSL_INCLUDE_DIR=`brew --prefix openssl`/include export OPENSSL_LIB_DIR=`brew --prefix openssl`/lib ```
Author
Owner

@19h commented on GitHub (Aug 22, 2016):

Holy moly, that worked.

So, summing it up:

  1. Add to cargo config:

  2. Prior to build:

export OPENSSL_INCLUDE_DIR=`brew --prefix openssl`/include
export OPENSSL_LIB_DIR=`brew --prefix openssl`/lib
export CFLAGS="-I$(brew --prefix openssl)/include -L$(brew --prefix openssl)/lib"
  1. cargo build

  2. 💰🍻

<!-- gh-comment-id:241517103 --> @19h commented on GitHub (Aug 22, 2016): Holy moly, that worked. So, summing it up: 1) <s>Add to cargo config:</s> 2) Prior to build: ``` export OPENSSL_INCLUDE_DIR=`brew --prefix openssl`/include export OPENSSL_LIB_DIR=`brew --prefix openssl`/lib export CFLAGS="-I$(brew --prefix openssl)/include -L$(brew --prefix openssl)/lib" ``` 3) `cargo build` 4) 💰🍻
Author
Owner

@bluejekyll commented on GitHub (Aug 22, 2016):

Is 1) actually necessary?

<!-- gh-comment-id:241524632 --> @bluejekyll commented on GitHub (Aug 22, 2016): Is 1) actually necessary?
Author
Owner

@19h commented on GitHub (Aug 22, 2016):

Let me check.. no.

<!-- gh-comment-id:241524704 --> @19h commented on GitHub (Aug 22, 2016): Let me check.. no.
Author
Owner

@19h commented on GitHub (Aug 31, 2016):

Thanks! 🐎 🍻

<!-- gh-comment-id:243638255 --> @19h commented on GitHub (Aug 31, 2016): Thanks! 🐎 🍻
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/hickory-dns#30
No description provided.