emk / rust-musl-builder

Docker images for compiling static Rust binaries using musl-libc and musl-gcc, with static versions of useful C libraries. Supports openssl and diesel crates.
Apache License 2.0
1.54k stars 193 forks source link

Link error while building libsodium-ffi #84

Closed zonyitoo closed 3 years ago

zonyitoo commented 4 years ago

What did you try to do?

Build my project (libsodium-ffi) that depends on openssl v0.10.26.

What happened?

   Compiling libsodium-ffi v0.2.0 (https://github.com/zonyitoo/libsodium-ffi#6939cb14)
error: linking with `cc` failed: exit code: 1
  |
  = note: "cc" "-Wl,--as-needed" "-Wl,-z,noexecstack" "-m64" "-L" "/home/rust/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "/home/rust/src/build/target/release/build/libsodium-ffi-dc5e125d276a0928/build_script_build-dc5e125d276a0928.build_script_build.bnih0bei-cgu.0.rcgu.o" "/home/rust/src/build/target/release/build/libsodium-ffi-dc5e125d276a0928/build_script_build-dc5e125d276a0928.build_script_build.bnih0bei-cgu.1.rcgu.o" "/home/rust/src/build/target/release/build/libsodium-ffi-dc5e125d276a0928/build_script_build-dc5e125d276a0928.build_script_build.bnih0bei-cgu.10.rcgu.o" "/home/rust/src/build/target/release/build/libsodium-ffi-dc5e125d276a0928/build_script_build-dc5e125d276a0928.build_script_build.bnih0bei-cgu.11.rcgu.o" "/home/rust/src/build/target/release/build/libsodium-ffi-dc5e125d276a0928/build_script_build-dc5e125d276a0928.build_script_build.bnih0bei-cgu.12.rcgu.o" "/home/rust/src/build/target/release/build/libsodium-ffi-dc5e125d276a0928/build_script_build-dc5e125d276a0928.build_script_build.bnih0bei-cgu.13.rcgu.o" "/home/rust/src/build/target/release/build/libsodium-ffi-dc5e125d276a0928/build_script_build-dc5e125d276a0928.build_script_build.bnih0bei-cgu.14.rcgu.o" "/home/rust/src/build/target/release/build/libsodium-ffi-dc5e125d276a0928/build_script_build-dc5e125d276a0928.build_script_build.bnih0bei-cgu.15.rcgu.o" "/home/rust/src/build/target/release/build/libsodium-ffi-dc5e125d276a0928/build_script_build-dc5e125d276a0928.build_script_build.bnih0bei-cgu.2.rcgu.o" "/home/rust/src/build/target/release/build/libsodium-ffi-dc5e125d276a0928/build_script_build-dc5e125d276a0928.build_script_build.bnih0bei-cgu.3.rcgu.o" "/home/rust/src/build/target/release/build/libsodium-ffi-dc5e125d276a0928/build_script_build-dc5e125d276a0928.build_script_build.bnih0bei-cgu.4.rcgu.o" "/home/rust/src/build/target/release/build/libsodium-ffi-dc5e125d276a0928/build_script_build-dc5e125d276a0928.build_script_build.bnih0bei-cgu.5.rcgu.o" "/home/rust/src/build/target/release/build/libsodium-ffi-dc5e125d276a0928/build_script_build-dc5e125d276a0928.build_script_build.bnih0bei-cgu.6.rcgu.o" "/home/rust/src/build/target/release/build/libsodium-ffi-dc5e125d276a0928/build_script_build-dc5e125d276a0928.build_script_build.bnih0bei-cgu.7.rcgu.o" "/home/rust/src/build/target/release/build/libsodium-ffi-dc5e125d276a0928/build_script_build-dc5e125d276a0928.build_script_build.bnih0bei-cgu.8.rcgu.o" "/home/rust/src/build/target/release/build/libsodium-ffi-dc5e125d276a0928/build_script_build-dc5e125d276a0928.build_script_build.bnih0bei-cgu.9.rcgu.o" "-o" "/home/rust/src/build/target/release/build/libsodium-ffi-dc5e125d276a0928/build_script_build-dc5e125d276a0928" "/home/rust/src/build/target/release/build/libsodium-ffi-dc5e125d276a0928/build_script_build-dc5e125d276a0928.2a5wim8xoi4mbo6i.rcgu.o" "-Wl,--gc-sections" "-pie" "-Wl,-zrelro" "-Wl,-znow" "-Wl,-O1" "-nodefaultlibs" "-L" "/home/rust/src/build/target/release/deps" "-L" "/home/rust/src/build/target/release/build/libloading-4a588d1597a83c76/out" "-L" "/home/rust/src/build/target/release/build/curl-sys-a1ee93c85eb3f0ee/out/build" "-L" "/home/rust/src/build/target/release/build/libz-sys-5d342e48a432aa99/out/build" "-L" "/usr/local/musl/lib/" "-L" "/home/rust/src/build/target/release/build/bzip2-sys-9dd30e91332cdfed/out/lib" "-L" "/home/rust/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-Wl,-Bstatic" "/home/rust/src/build/target/release/deps/libtar-4ce831b6567e5cdc.rlib" "/home/rust/src/build/target/release/deps/libxattr-b4caecac3fbaf408.rlib" "/home/rust/src/build/target/release/deps/libfiletime-b93df941a06570ec.rlib" "/home/rust/src/build/target/release/deps/libflate2-74b381de6426473c.rlib" "/home/rust/src/build/target/release/deps/libminiz_oxide-73afae185d6472f6.rlib" "/home/rust/src/build/target/release/deps/libadler32-a852c4cdf7cd424f.rlib" "/home/rust/src/build/target/release/deps/libcrc32fast-bf77d59b530bb8df.rlib" "/home/rust/src/build/target/release/deps/libcurl-bc33bb4c85029626.rlib" "/home/rust/src/build/target/release/deps/libopenssl_probe-b3f4d63ad4a9acde.rlib" "/home/rust/src/build/target/release/deps/libsocket2-ef9a08b0959bcf31.rlib" "/home/rust/src/build/target/release/deps/libcurl_sys-025fa5b458e1f5ea.rlib" "/home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib" "/home/rust/src/build/target/release/deps/liblibz_sys-36e0a7d22fe5b948.rlib" "/home/rust/src/build/target/release/deps/libvcpkg-b131f8757213c327.rlib" "/home/rust/src/build/target/release/deps/libunwrap-85da7c60bec687f0.rlib" "/home/rust/src/build/target/release/deps/libpkg_config-282c51251224ed33.rlib" "/home/rust/src/build/target/release/deps/libbindgen-9b61b1a94ceef126.rlib" "/home/rust/src/build/target/release/deps/liblog-65e694d3a3fb773c.rlib" "/home/rust/src/build/target/release/deps/libwhich-caf69975b28b580a.rlib" "/home/rust/src/build/target/release/deps/libshlex-08a2ce2a87bd5c10.rlib" "/home/rust/src/build/target/release/deps/libregex-4f66b44627e6df0a.rlib" "/home/rust/src/build/target/release/deps/libthread_local-f56aa0e4023c7ca1.rlib" "/home/rust/src/build/target/release/deps/libregex_syntax-3416d0a6cf61d267.rlib" "/home/rust/src/build/target/release/deps/libaho_corasick-d262485751494da2.rlib" "/home/rust/src/build/target/release/deps/libquote-161320b9a7674f48.rlib" "/home/rust/src/build/target/release/deps/libproc_macro2-d2c4cd9ff5535ed3.rlib" "/home/rust/src/build/target/release/deps/libunicode_xid-320011c721979f04.rlib" "/home/rust/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libproc_macro-4cee5e7a25d52465.rlib" "/home/rust/src/build/target/release/deps/libpeeking_take_while-37c1b8d09070cc05.rlib" "/home/rust/src/build/target/release/deps/liblazy_static-d83054ad2e19b3d0.rlib" "/home/rust/src/build/target/release/deps/librustc_hash-3ba07092ac5e2b67.rlib" "/home/rust/src/build/target/release/deps/libbyteorder-18799715848c9b25.rlib" "/home/rust/src/build/target/release/deps/liblazycell-f0916af75ce6367b.rlib" "/home/rust/src/build/target/release/deps/libclang_sys-ed5796569ab05ee9.rlib" "/home/rust/src/build/target/release/deps/liblibloading-1433e40d9975399d.rlib" "/home/rust/src/build/target/release/deps/liblibc-d9747841b1f0f152.rlib" "/home/rust/src/build/target/release/deps/libglob-f04d132da5c6aa6a.rlib" "/home/rust/src/build/target/release/deps/libcfg_if-25f614ba7c013ebe.rlib" "/home/rust/src/build/target/release/deps/libcexpr-d06ce66e8e308aa7.rlib" "/home/rust/src/build/target/release/deps/libnom-f566bd1eb7b5d9a2.rlib" "/home/rust/src/build/target/release/deps/libmemchr-88937c17f3f226cc.rlib" "/home/rust/src/build/target/release/deps/libbitflags-c9392e45df57ed6e.rlib" "-Wl,--start-group" "/home/rust/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-fae576517123aa4e.rlib" "/home/rust/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-a72070139220275e.rlib" "/home/rust/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libhashbrown-093434daf7d99801.rlib" "/home/rust/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_alloc-24daf38551b7a03b.rlib" "/home/rust/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libbacktrace-36d70d9746402ce9.rlib" "/home/rust/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libbacktrace_sys-7acfc843240167a8.rlib" "/home/rust/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-eb2e0f5fe057b8b3.rlib" "/home/rust/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-75e9ddd83715a368.rlib" "/home/rust/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-af51e7c6fd7d1248.rlib" "/home/rust/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-27f2a77b2995d98c.rlib" "/home/rust/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-ad10152c26711a1e.rlib" "/home/rust/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_core-291bd2456cb6c9fe.rlib" "/home/rust/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-fc6e9071307a3016.rlib" "-Wl,--end-group" "/home/rust/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-ebe4001ded7f33e7.rlib" "-Wl,-Bdynamic" "-ldl" "-lutil" "-lutil" "-ldl" "-lrt" "-lpthread" "-lgcc_s" "-lc" "-lm" "-lrt" "-lpthread" "-lutil" "-lutil"
  = note: /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(s3_clnt.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(s3_lib.o): relocation R_X86_64_32S against symbol `ssl3_ciphers' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(s3_enc.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(s3_pkt.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(s3_both.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(s3_cbc.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(s23_meth.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(s23_srvr.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(s23_clnt.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(s23_lib.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(t1_meth.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(t1_srvr.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(t1_clnt.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(t1_lib.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(t1_enc.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(t1_ext.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(d1_clnt.o): relocation R_X86_64_32S against symbol `dtls1_connect' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(d1_lib.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(d1_pkt.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(d1_both.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(d1_srtp.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ssl_lib.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ssl_cert.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ssl_sess.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ssl_ciph.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ssl_stat.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ssl_rsa.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ssl_asn1.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ssl_algs.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bio_ssl.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ssl_err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(t1_reneg.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(tls_srp.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(cryptlib.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(mem.o): relocation R_X86_64_32S against `.text' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(mem_dbg.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(cversion.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ex_data.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(o_names.o): relocation R_X86_64_32 against `.text' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(obj_dat.o): relocation R_X86_64_32 against `.text' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(obj_lib.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(obj_xref.o): relocation R_X86_64_32 against `.text' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(sha256.o): relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(sha512.o): relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(hmac.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bn_lib.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bn_ctx.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bn_print.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bn_shift.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ec_lib.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ec_mult.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ec_curve.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ec_key.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ec_oct.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ecp_nistz256.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(rsa_lib.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(rsa_sign.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(rsa_asn1.o): relocation R_X86_64_32 against symbol `RSA_PSS_PARAMS_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(rsa_crpt.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(dsa_asn1.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(dsa_sign.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(dh_key.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(dh_lib.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(dh_ameth.o): relocation R_X86_64_32S against symbol `dhx_asn1_meth' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(eng_lib.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(eng_list.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(eng_init.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(eng_ctrl.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(eng_pkey.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(eng_fat.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(tb_rsa.o): relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(tb_dsa.o): relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(tb_ecdsa.o): relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(tb_dh.o): relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(tb_ecdh.o): relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(tb_rand.o): relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(tb_cipher.o): relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(tb_digest.o): relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(tb_pkmeth.o): relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(tb_asnmth.o): relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(eng_dyn.o): relocation R_X86_64_32 against `.text' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(eng_rdrand.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(buffer.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(buf_str.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bio_lib.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bss_mem.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bss_file.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bss_sock.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bss_conn.o): relocation R_X86_64_32S against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bf_buff.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(b_print.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(b_sock.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(stack.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(lhash.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(randfile.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(err.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(digest.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(evp_enc.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(e_des.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(e_idea.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(e_des3.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(e_camellia.o): relocation R_X86_64_32S against symbol `Camellia_encrypt' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(e_rc4.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(e_aes.o): relocation R_X86_64_32 against symbol `bsaes_xts_decrypt' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(names.o): relocation R_X86_64_32 against `.text' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(e_seed.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(e_rc2.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(m_md5.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(m_sha1.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(m_dss1.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(m_ecdsa.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(p_sign.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(p_verify.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(p_lib.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(evp_err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(e_null.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(c_allc.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(c_alld.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(evp_lib.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(evp_pbe.o): relocation R_X86_64_32 against `.text' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(p5_crpt.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(p5_crpt2.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(pmeth_lib.o): relocation R_X86_64_32 against `.text' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(pmeth_fn.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(pmeth_gn.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(m_sigver.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(e_aes_cbc_hmac_sha1.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(e_aes_cbc_hmac_sha256.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(e_rc4_hmac_md5.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(a_object.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(a_int.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(a_dup.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(a_strex.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(x_algor.o): relocation R_X86_64_32 against symbol `X509_ALGOR_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(x_pubkey.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(x_sig.o): relocation R_X86_64_32 against symbol `X509_SIG_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(x_attrib.o): relocation R_X86_64_32 against symbol `X509_ATTRIBUTE_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(x_bignum.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(x_long.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(x_name.o): relocation R_X86_64_32 against symbol `X509_NAME_ENTRY_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(x_x509.o): relocation R_X86_64_32 against symbol `X509_CINF_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(x_x509a.o): relocation R_X86_64_32 against symbol `X509_CERT_AUX_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(d2i_pr.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(t_x509.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(t_x509a.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(t_pkey.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(tasn_new.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(tasn_fre.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(tasn_enc.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(tasn_dec.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(tasn_utl.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(tasn_typ.o): relocation R_X86_64_32 against symbol `ASN1_INTEGER_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ameth_lib.o): relocation R_X86_64_32S against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(x_exten.o): relocation R_X86_64_32 against symbol `X509_EXTENSION_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(asn1_par.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(asn1_lib.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(asn1_err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(evp_asn1.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(p5_pbe.o): relocation R_X86_64_32 against symbol `PBEPARAM_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(p5_pbev2.o): relocation R_X86_64_32 against symbol `PBE2PARAM_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(p8_pkey.o): relocation R_X86_64_32 against symbol `PKCS8_PRIV_KEY_INFO_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(pem_lib.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(pem_all.o): relocation R_X86_64_32 against symbol `d2i_X509_REQ' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(pem_err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(pem_x509.o): relocation R_X86_64_32 against symbol `d2i_X509' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(pem_xaux.o): relocation R_X86_64_32 against symbol `d2i_X509_AUX' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(pem_oth.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(pem_pkey.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(x509_cmp.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(x509_obj.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(x509_vfy.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(x509_err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(x509name.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(x509_v3.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(x509_lu.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(x_all.o): relocation R_X86_64_32 against symbol `X509_CINF_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(x509_txt.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(x509_trs.o): relocation R_X86_64_32S against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(by_file.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(by_dir.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(x509_vpm.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(v3_lib.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(v3_prn.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(v3_utl.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(v3err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(v3_genn.o): relocation R_X86_64_32 against symbol `GENERAL_NAME_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(v3_alt.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(v3_skey.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(v3_akey.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(v3_pku.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(v3_sxnet.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(v3_cpols.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(v3_crld.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(v3_purp.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(v3_info.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(v3_ocsp.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(v3_akeya.o): relocation R_X86_64_32 against symbol `AUTHORITY_KEYID_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(v3_pmaps.o): relocation R_X86_64_32 against symbol `POLICY_MAPPING_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(v3_pcons.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(v3_ncons.o): relocation R_X86_64_32 against symbol `NAME_CONSTRAINTS_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(v3_pcia.o): relocation R_X86_64_32 against symbol `PROXY_POLICY_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(v3_pci.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(pcy_cache.o): relocation R_X86_64_32 against symbol `policy_data_free' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(pcy_data.o): relocation R_X86_64_32 against symbol `POLICYQUALINFO_free' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(pcy_map.o): relocation R_X86_64_32 against symbol `POLICY_MAPPING_free' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(pcy_tree.o): relocation R_X86_64_32 against `.text' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(v3_scts.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(conf_err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(conf_mod.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(pk7_asn1.o): relocation R_X86_64_32 against symbol `PKCS7_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(pk7_lib.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(pkcs7err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(pk7_doit.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(pk7_attr.o): relocation R_X86_64_32 against symbol `X509_ALGORS_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(p12_asn.o): relocation R_X86_64_32 against symbol `PKCS12_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(p12_crpt.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(p12_key.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(p12_kiss.o): relocation R_X86_64_32 against symbol `PKCS12_SAFEBAG_free' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(p12_mutl.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(p12_utl.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(pk12err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(p12_p8d.o): relocation R_X86_64_32 against symbol `PKCS8_PRIV_KEY_INFO_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(comp_lib.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(comp_err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(c_zlib.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ocsp_asn.o): relocation R_X86_64_32 against symbol `OCSP_SIGNATURE_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ocsp_ht.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ocsp_cl.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ocsp_prn.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ocsp_vfy.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ocsp_err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ui_err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ui_lib.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ui_openssl.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(cms_err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(cms_env.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(cms_enc.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(cms_pwri.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(cms_kari.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(pqueue.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ts_err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(srp_lib.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(srp_vfy.o): relocation R_X86_64_32S against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(cm_pmeth.o): relocation R_X86_64_32S against `.text' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(e_4758cca.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(e_aep.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(e_atalla.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(e_cswift.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(e_chil.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(e_nuron.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(e_sureware.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(e_ubsec.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(gost_eng.o): relocation R_X86_64_32S against symbol `digest_gost' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(gost_md.o): relocation R_X86_64_32 against symbol `GostR3411_94_CryptoProParamSet' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(gost_pmeth.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(gost_sign.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(s3_meth.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(s3_srvr.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(d1_meth.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(d1_srvr.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(cpt_err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(obj_err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(sha1_one.o): relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(hm_ameth.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(hm_pmeth.o): relocation R_X86_64_32S against `.text' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(set_key.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ecb_enc.o): relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(cfb64ede.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(cfb_enc.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(des_enc.o): relocation R_X86_64_32S against symbol `DES_SPtrans' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(aes_misc.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(aes_wrap.o): relocation R_X86_64_32 against symbol `AES_encrypt' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(rc2_skey.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(rc2_cbc.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(i_cbc.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(i_ecb.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(seed.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(seed_cbc.o): relocation R_X86_64_32 against symbol `SEED_decrypt' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(seed_cfb.o): relocation R_X86_64_32S against symbol `SEED_encrypt' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(seed_ofb.o): relocation R_X86_64_32S against symbol `SEED_encrypt' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(gcm128.o): relocation R_X86_64_32S against symbol `gcm_gmult_clmul' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(wrap128.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bn_add.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bn_div.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bn_exp.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bn_mul.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bn_mod.o): relocation R_X86_64_32 against symbol `BN_add' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bn_rand.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bn_blind.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bn_gcd.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bn_prime.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bn_err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(rsaz_exp.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bn_recp.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bn_mont.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ecp_smpl.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ecp_mont.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ec_err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ec_asn1.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ec2_smpl.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ec2_mult.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ec_ameth.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ec_pmeth.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(eck_prn.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ecp_oct.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ec2_oct.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(rsa_eay.o): relocation R_X86_64_32S against symbol `BN_mod_exp_mont' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(rsa_err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(rsa_pk1.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(rsa_ssl.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(rsa_none.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(rsa_oaep.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(rsa_x931.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(rsa_ameth.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(rsa_pmeth.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(dsa_lib.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(dsa_err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(dsa_ossl.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(dsa_ameth.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(dsa_pmeth.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ecs_lib.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ecs_asn1.o): relocation R_X86_64_32 against symbol `ECDSA_SIG_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ecs_ossl.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ecs_err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(dh_asn1.o): relocation R_X86_64_32 against symbol `DHparams_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(dh_err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(dh_pmeth.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(dh_rfc5114.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(dh_kdf.o): relocation R_X86_64_32S against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ech_lib.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ech_ossl.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ech_err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(dso_err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(dso_lib.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(eng_err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(eng_table.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(eng_cnf.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(buf_err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bio_err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bss_null.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(b_dump.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(md_rand.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(rand_err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(rand_unix.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(err_prn.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(encode.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(evp_key.o): relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(evp_cnf.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(e_bf.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(e_xcbc_d.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(e_cast.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(m_md4.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(m_sha.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(m_wp.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(m_dss.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(m_mdc2.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(m_ripemd.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bio_md.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bio_enc.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(evp_pkey.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(a_bitstr.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(a_utctm.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(a_gentm.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(a_time.o): relocation R_X86_64_32 against symbol `ASN1_TIME_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(a_d2i_fp.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(a_i2d_fp.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(a_enum.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(a_sign.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(a_digest.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(a_verify.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(a_mbstr.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(x_req.o): relocation R_X86_64_32 against symbol `X509_REQ_INFO_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(x_crl.o): relocation R_X86_64_32 against `.text' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(x_info.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(nsseq.o): relocation R_X86_64_32 against symbol `NETSCAPE_CERT_SEQUENCE_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(i2d_pr.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(tasn_prn.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(f_int.o): relocation R_X86_64_32S against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(f_string.o): relocation R_X86_64_32S against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(x_pkey.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(a_bool.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(asn1_gen.o): relocation R_X86_64_32 against `.text' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(a_bytes.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(a_strnid.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(asn_pack.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(asn_moid.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(pem_info.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(pem_pk8.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(x509_def.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(x509_req.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(x509_att.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(v3_bcons.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(v3_bitst.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(v3_conf.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(v3_extku.o): relocation R_X86_64_32 against symbol `ASN1_OBJECT_free' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(v3_ia5.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(pcy_node.o): relocation R_X86_64_32 against `.text' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(conf_lib.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(conf_api.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(conf_def.o): relocation R_X86_64_32S against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(txt_db.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(p12_add.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(p12_decr.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(p12_p8e.o): relocation R_X86_64_32 against symbol `PKCS8_PRIV_KEY_INFO_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ocsp_lib.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(cms_lib.o): relocation R_X86_64_32 against symbol `CMS_ContentInfo_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(cms_asn1.o): relocation R_X86_64_32 against symbol `CMS_SharedInfo_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(cms_io.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(cms_sd.o): relocation R_X86_64_32 against symbol `CMS_SignedData_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(cms_dd.o): relocation R_X86_64_32 against symbol `CMS_DigestedData_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(cmac.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(e_gost_err.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(gost2001_keyx.o): relocation R_X86_64_32 against symbol `GostR3411_94_CryptoProParamSet' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(gost2001.o): relocation R_X86_64_32 against symbol `R3410_2001_paramset' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(gost89.o): relocation R_X86_64_32 against symbol `GostR3411_94_TestParamSet' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(gost94_keyx.o): relocation R_X86_64_32 against symbol `GostR3411_94_CryptoProParamSet' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(gost_ameth.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(gost_asn1.o): relocation R_X86_64_32 against symbol `GOST_KEY_TRANSPORT_it' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(gost_crypt.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(gost_ctl.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(wp_dgst.o): relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(xcbc_enc.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bf_skey.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bf_ecb.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bf_enc.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(c_skey.o): relocation R_X86_64_32S against symbol `CAST_S_table5' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(c_enc.o): relocation R_X86_64_32S against symbol `CAST_S_table0' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bn_kron.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bn_sqrt.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bn_exp2.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bn_gf2m.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(ec_print.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(rsa_gen.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(rsa_saos.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(rsa_pss.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(dsa_gen.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(dh_gen.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(dso_dlfcn.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(a_set.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bio_ndef.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(asn_mime.o): relocation R_X86_64_32 against `.text' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bio_b64.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: /home/rust/src/build/target/release/deps/libopenssl_sys-5b028e1d44eca017.rlib(bio_asn1.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
          /usr/bin/ld: final link failed: Nonrepresentable section on output
          collect2: error: ld returned 1 exit status

error: aborting due to previous error

Does ./test-image work?

Don't know, ./test-image blocks on Updating crates.io index (Network issue).

Nokel81 commented 4 years ago

Even with:

[dependencies.openssl]
version = "*"
features = ["vendored"] 

This still fails

emk commented 4 years ago

Thank you for the bug report! This looks like the same error as https://github.com/sfackler/rust-openssl/issues/1198.

I think this might be a problem in libsodium-ffi. It looks like the error occurs when building build.rs (see the line with build_script_build-dc5e125d276a0928.build_script_build.bnih0bei-cgu.0.rcgu.o, etc.).

This might be a host vs. target problem. The "host" is the Ubuntu image that provides the Rust toolchain, and the "target" is the musl-libc environment.

build.rs is compiled in the host environment, and it looks like it's trying to link against OpenSSL in the host environment, at compile-time. This is super tricky when cross-compiling, and it usually requires careful setting and reading of environment variables. If everything isn't set up carefully, then you might wind up trying to link against the target OpenSSL instead of the host OpenSSL, and everything with fail noisily.

Unfortunately, these issues can be frustrating to fix.

sneakycrowllc commented 4 years ago

I'm experiencing the same issue trying to compile a project that depends on diesel. Is there a quick fix for this?

emk commented 4 years ago

Unfortunately, no, there are no easy fixes for adding new C libraries. Somebody will have to take a look at libsodium-ffi and figure out what needs to be tweaked, and submit PRs. I can leave this issue open for now, but I won't have time to work on this myself. My apologies. :-(

Marwes commented 4 years ago

Seeing what seems to be the same problem when using openssl in a build script.

fn main() {
    native_tls::Identity::from_pkcs12(b"", "").unwrap();
}

In a build script fails, but the same code in a crate works just fine.

emk commented 4 years ago

@Marwes If you have a problem with openssl, please file a separate issue. This bug is for libsodium-ffi, which we do not currently support, and which I have no plans to work on myself (unless I need it someday).

JMLX42 commented 4 years ago

My understanding is this:

Since we have no way to configure how build.rs is built (build and link flags for example), we're stuck. And build.rs must have its dependencies limited as much as possible to avoid native C/C++ libs such as openssl.

Am I getting this right?

emk commented 4 years ago

@promethe42 I'm not actually sure what the underlying problem is, but that seems like a reasonable hypothesis.

In general, rust-musl-builder aims to support a small number of essential C libraries. To do this, it needs to configure everything for cross-compilation and static linking. This can be a complicated and frustrating process, because:

  1. The C libraries need to be configured for cross compilation and static linking.
  2. The Rust libraries need to be configured to find the cross-compiled C libraries and link them statically. This will almost certainly involve hours of debugging, and you'll need to file PRs against other people's Rust libraries.
  3. When Rust libraries need to work with other Rust libraries that share the same C dependencies, any issues will need to be sorted out.

I choose to take on this work for PostgreSQL and OpenSSL and their supporting libraries, because they're extremely common dependencies (and because I need them personally). For less common C libraries, and libraries that I don't use myself, I simply don't have enough time to investigate and write the necessary PRs against other people's code.

emk commented 4 years ago

Please note that I have recently updated rust-musl-builder to support sqlx. In order to do this, I had to set things up so that we can build openssl as both a shared host library and static target library in the same build. This may improve the situation with libsodium-ffi.

See https://github.com/sfackler/rust-openssl/issues/1337 for more details.

zonyitoo commented 4 years ago

I have migrated my build script to build with other docker mirrors. So I am not quite sure about whether this issue have been fixed. It is ok to be closed, btw.