Reqwest: would you please replace hyper-tls with hyper-rustls

Created on 25 Jul 2017  路  6Comments  路  Source: seanmonstar/reqwest

https://github.com/ctz/hyper-rustls

The rustls is the pure rust tls solution. no more need openssl.
I got trouble in compile reqwest with openssl static linked.

I can not solve the problem .

All 6 comments

I had the same problem, that's one of the reasons I'm still using Hyper instead of Reqwest. Although Rustls is still not stable according to their site, so a more conservative approach would be to make it an opt-in feature.

A problem that shows up if this is a Cargo feature is that some libraries might elect to use the default native-tls feature, and others to use a rustls feature.


To the question in the title: I would not move reqwest from using native-tls to rustls by default at this point in time. native-tls leads to smaller binaries on Windows and OSX. It also uses more mature libraries. rustls, while I am excited for its existence and am rooting for it, is not at a point where I could responsibly say it should be the default used in a fundamental crate. It doesn't support all TLS versions, and it hasn't been audited.

In the future: hopefully!

The current openssl rust can not build .

  |
  = note: "cc" "-Wl,--as-needed" "-Wl,-z,noexecstack" "-m64" "-L" "/home/huzhifeng/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/jk_build_rs-d469181c7e3571aa.0.o" "-o" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/jk_build_rs-d469181c7e3571aa" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/jk_build_rs-d469181c7e3571aa.crate.allocator.o" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-nodefaultlibs" "-L" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps" "-L" "/usr/lib64/libssl*" "-L" "/usr/lib/x86_64-linux-gnu/libcrypto*" "-L" "/home/huzhifeng/workspace/jk-build-rs/lib" "-L" "/home/huzhifeng/workspace/jk-build-rs/target/debug/build/ring-b3e59686ec982ef2/out" "-L" "/home/huzhifeng/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-l" "ssl" "-l" "crypto" "-l" "dl" "-l" "rt" "-l" "pthread" "-Wl,-Bstatic" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/librocket-663b369b3d7b1f72.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libstate-d20fb1d39ae4777f.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libreqwest-4b66434764e76db9.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libserde_json-4ad3ab8cda71017d.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libnum_traits-07a9b3af20999100.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libhyper-03459fb2c32e0a66.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libtraitobject-54991f3444725b4d.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libbase64-b5a418fe6289581f.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libtoml-155b2f011195980e.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libisatty-41c84e8198d59fc6.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libyansi-e29745c4304c271a.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libunicase-71870074bdccf48e.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libmime-cdcabcd5c0791942.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libordermap-f37421cb3f116adc.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/liblibflate-3064fe75c412ed23.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libadler32-5faba30139d40556.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libpear-21bc9c36fea004eb.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libserde_urlencoded-80d3a2100017284d.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libserde-0bb25bace944d830.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libitoa-d1f9a69a38804495.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libsmallvec-bd0e50e464671403.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libhyper_tls-27dc5b8d8921eb61.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libhyper-9c33ba19798ef7eb.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libtokio_proto-8ab31bb4adc7061e.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libtokio_service-98f59112cd64309c.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libtake-19a1308ec4259631.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libsmallvec-e249bebdfcfe6496.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/librand-b3434551e57d2b99.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libmime-77f441cc0ce032c1.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libunicase-f3b849874a9dc3b9.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/liblanguage_tags-7e7cfaf5fe688a15.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libhttparse-99ca16920e148ee7.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libfutures_cpupool-39d4c322d5e17599.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libnum_cpus-a64009634eee0276.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libtokio_tls-4d768154796fe5e7.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libnative_tls-334cc03fd69deb97.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libopenssl-106e6ad3c17077e8.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libopenssl_sys-1e31c4b23609fc6a.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libforeign_types-39264d84b299166d.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libbitflags-44981c95b88ddc16.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libdtoa-3f0a2f20544559bb.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libtypeable-8446ee8e1f9d62ac.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libcookie-a164a8ae2b705f90.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libbase64-f697c80c98a805f1.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libsafemem-469dc4fbbdc4c274.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libring-4e6deef10c84a017.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libuntrusted-5715f781043e1625.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/liblazy_static-101ef5c814d6fea8.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libtime-2d378b61407bfe19.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/liburl-a9e41a3fb250f7c9.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libpercent_encoding-67cafd97c5a6ca47.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libidna-2e8b1433e7eeb1b4.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libunicode_normalization-77a54c7f12822b0a.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libunicode_bidi-9a73864550729237.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libmatches-6ea8f97cfe825339.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libmemchr-61c894178cd00b0e.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libtokio_core-93be93563e095dd9.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libscoped_tls-c10b6863588f60d2.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libmio-39897a2ce9558490.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libslab-92e2ea55b1832021.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libnet2-6aa80a942dad9e40.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libcfg_if-33256bd33714fbbd.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/liblazycell-2a54020ccfae2d8c.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libtokio_io-05f5426a9b3f2b2b.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libbytes-20571815ed868f32.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libiovec-3ffaf9955c648664.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/liblibc-30791a71d36b7a8d.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libbyteorder-659f238ecfabb848.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libfutures-25dde6922fff5cfd.rlib" "/home/huzhifeng/workspace/jk-build-rs/target/debug/deps/liblog-90e57d9517f2ede7.rlib" "/home/huzhifeng/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-b98703028eeb0b98.rlib" "/home/huzhifeng/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-df06b7c9333176b4.rlib" "/home/huzhifeng/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc_jemalloc-0ea31ee21d34a52d.rlib" "/home/huzhifeng/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-77192286e2789a5e.rlib" "/home/huzhifeng/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc_system-00e45d43a3d13d69.rlib" "/home/huzhifeng/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-2d38da47e5a811a3.rlib" "/home/huzhifeng/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-f7a3da3bbe1ffd00.rlib" "/home/huzhifeng/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd_unicode-c3534fd271b8e97f.rlib" "/home/huzhifeng/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librand-f74b744ab8325f3f.rlib" "/home/huzhifeng/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-687794b7c779bbae.rlib" "/home/huzhifeng/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-3d13ef12161f3f21.rlib" "-Wl,-Bdynamic" "-l" "ssl" "-l" "crypto" "-l" "util" "-l" "dl" "-l" "rt" "-l" "pthread" "-l" "pthread" "-l" "gcc_s" "-l" "c" "-l" "m" "-l" "rt" "-l" "pthread" "-l" "util"
  = note: /home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libreqwest-4b66434764e76db9.rlib(reqwest-4b66434764e76db9.0.o): In function `openssl::ssl::bio::new<tokio_core::net::tcp::TcpStream>':
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:44: undefined reference to `BIO_set_data'
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:45: undefined reference to `BIO_set_init'
          /home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libreqwest-4b66434764e76db9.rlib(reqwest-4b66434764e76db9.0.o): In function `openssl::ssl::bio::new<hyper_tls::stream::MaybeHttpsStream<tokio_core::net::tcp::TcpStream>>':
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:44: undefined reference to `BIO_set_data'
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:45: undefined reference to `BIO_set_init'
          /home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libreqwest-4b66434764e76db9.rlib(reqwest-4b66434764e76db9.0.o): In function `openssl::ssl::bio::state<tokio_core::net::tcp::TcpStream>':
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:71: undefined reference to `BIO_get_data'
          /home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libreqwest-4b66434764e76db9.rlib(reqwest-4b66434764e76db9.0.o): In function `openssl::ssl::bio::state<hyper_tls::stream::MaybeHttpsStream<tokio_core::net::tcp::TcpStream>>':
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:71: undefined reference to `BIO_get_data'
          /home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libreqwest-4b66434764e76db9.rlib(reqwest-4b66434764e76db9.0.o): In function `openssl::ssl::bio::compat::{{impl}}::new<tokio_core::net::tcp::TcpStream>':
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:192: undefined reference to `BIO_meth_new'
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:195: undefined reference to `BIO_meth_set_write'
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:196: undefined reference to `BIO_meth_set_read'
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:197: undefined reference to `BIO_meth_set_puts'
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:198: undefined reference to `BIO_meth_set_ctrl'
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:199: undefined reference to `BIO_meth_set_create'
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:200: undefined reference to `BIO_meth_set_destroy'
          /home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libreqwest-4b66434764e76db9.rlib(reqwest-4b66434764e76db9.0.o): In function `openssl::ssl::bio::compat::{{impl}}::new<hyper_tls::stream::MaybeHttpsStream<tokio_core::net::tcp::TcpStream>>':
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:192: undefined reference to `BIO_meth_new'
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:195: undefined reference to `BIO_meth_set_write'
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:196: undefined reference to `BIO_meth_set_read'
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:197: undefined reference to `BIO_meth_set_puts'
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:198: undefined reference to `BIO_meth_set_ctrl'
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:199: undefined reference to `BIO_meth_set_create'
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:200: undefined reference to `BIO_meth_set_destroy'
          /home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libreqwest-4b66434764e76db9.rlib(reqwest-4b66434764e76db9.0.o): In function `openssl::ssl::bio::destroy<hyper_tls::stream::MaybeHttpsStream<tokio_core::net::tcp::TcpStream>>':
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:168: undefined reference to `BIO_get_data'
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:171: undefined reference to `BIO_set_data'
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:172: undefined reference to `BIO_set_init'
          /home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libreqwest-4b66434764e76db9.rlib(reqwest-4b66434764e76db9.0.o): In function `openssl::ssl::bio::destroy<tokio_core::net::tcp::TcpStream>':
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:168: undefined reference to `BIO_get_data'
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:171: undefined reference to `BIO_set_data'
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:172: undefined reference to `BIO_set_init'
          /home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libopenssl-106e6ad3c17077e8.rlib(openssl-106e6ad3c17077e8.0.o): In function `openssl::ssl::bio::create':
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:156: undefined reference to `BIO_set_init'
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:158: undefined reference to `BIO_set_data'
          /home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libopenssl-106e6ad3c17077e8.rlib(openssl-106e6ad3c17077e8.0.o): In function `openssl::ssl::bio::compat::{{impl}}::drop':
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/bio.rs:213: undefined reference to `BIO_meth_free'
          /home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libopenssl-106e6ad3c17077e8.rlib(openssl-106e6ad3c17077e8.0.o): In function `openssl::ssl::{{impl}}::set_options':
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/mod.rs:639: undefined reference to `SSL_CTX_set_options'
          /home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libopenssl-106e6ad3c17077e8.rlib(openssl-106e6ad3c17077e8.0.o): In function `openssl::ssl::{{impl}}::clone':
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/mod.rs:833: undefined reference to `SSL_CTX_up_ref'
          /home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libopenssl-106e6ad3c17077e8.rlib(openssl-106e6ad3c17077e8.0.o): In function `openssl::ssl::{{impl}}::_param_mut':
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/mod.rs:1407: undefined reference to `SSL_get0_param'
          /home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libopenssl-106e6ad3c17077e8.rlib(openssl-106e6ad3c17077e8.0.o): In function `openssl::ssl::compat::tls_method':
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/ssl/mod.rs:1914: undefined reference to `TLS_method'
          /home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libopenssl-106e6ad3c17077e8.rlib(openssl-106e6ad3c17077e8.0.o): In function `openssl::verify::{{impl}}::set_hostflags':
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/verify.rs:33: undefined reference to `X509_VERIFY_PARAM_set_hostflags'
          /home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libopenssl-106e6ad3c17077e8.rlib(openssl-106e6ad3c17077e8.0.o): In function `openssl::verify::{{impl}}::set_host':
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.15/src/verify.rs:39: undefined reference to `X509_VERIFY_PARAM_set1_host'
          /home/huzhifeng/workspace/jk-build-rs/target/debug/deps/libopenssl_sys-1e31c4b23609fc6a.rlib(openssl_sys-1e31c4b23609fc6a.0.o): In function `openssl_sys::ossl110::init::{{closure}}':
          /home/huzhifeng/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-sys-0.9.15/src/ossl110.rs:65: undefined reference to `OPENSSL_init_ssl'
          collect2: error: ld returned 1 exit status


error: aborting due to previous error

I felt like fall into shit.

Rust lang mother fucker.. stupid.

@netroby looks like the linker can't find symbols from the openssl library.

  • Do you have the headers installed? As rust-openssl points out, the headers are sometimes not included in the main openssl package, but a separate package like libssl-dev or openssl-devel.
  • If you do have them, maybe they aren't installed in the usual place? You can tell rust-openssl where the library is with some environment variables.

Couldn't this issue be solved by allowing clients to be set up with custom hyper::client::Connects? They you would be able to pass in a hyper_rustls::HttpsConnector.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

martinlindhe picture martinlindhe  路  3Comments

kpcyrd picture kpcyrd  路  4Comments

CGQAQ picture CGQAQ  路  4Comments

AmarOk1412 picture AmarOk1412  路  5Comments

encombhat picture encombhat  路  6Comments