tldr-pages / tlrc

A tldr client written in Rust
http://tldr.sh/tlrc/
MIT License
350 stars 13 forks source link

Compilation error on Arch Linux #61

Closed noraj closed 9 months ago

noraj commented 9 months ago

I tried building https://aur.archlinux.org/packages/tlrc on ArchLinux both choosing rust 1.76.0 or rustup 1.76.0.

I tried with rust 1.75.0 from asdf.

I tried in a minimalist nspawn environment to be sure it was not something messing up from my system or PATH.

I tried building from last git commit instead of release 1.80.0.

In all cases I ended up with that error:

...
   Compiling toml v0.8.8
error: linking with `cc` failed: exit status: 1
  |
  = note: LC_ALL="C" PATH="/usr/lib64/rustlib/x86_64-unknown-linux-gnu/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl" VSLANG="1033" "cc" "-m64" "/tmp/rustcsp7KkM/symbols.o" "/build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o" "-Wl,--as-needed" "-L" "/build/tlrc/src/tlrc-1.8.0/target/release/deps" "-L" "/build/tlrc/src/tlrc-1.8.0/target/release/build/ring-25c75424ae8ad8b7/out" "-L" "/usr/lib64/rustlib/x86_64-unknown-linux-gnu/lib" "-Wl,-Bstatic" "/tmp/rustcsp7KkM/libring-cb75d4dbccddaabf.rlib" "/usr/lib64/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-dc359f8c64813cd3.rlib" "-Wl,-Bdynamic" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/usr/lib64/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-Wl,-O1" "-Wl,--strip-all" "-nodefaultlibs"
  = note: /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::aead::aes_gcm::aes_gcm_seal':
          tldr.88873424f1eaf6df-cgu.0:(.text._ZN4ring4aead7aes_gcm12aes_gcm_seal17h2d3249ed9497a571E+0x14b): undefined reference to `ring_core_0_17_6_OPENSSL_ia32cap_P'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::cpu::intel::Feature::available':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/cpu/intel.rs:34:(.text._ZN4ring4aead7aes_gcm12aes_gcm_seal17h2d3249ed9497a571E+0x28c): undefined reference to `ring_core_0_17_6_OPENSSL_ia32cap_P'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::aead::aes::encrypt_block_':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/aead/aes.rs:77:(.text._ZN4ring4aead7aes_gcm12aes_gcm_seal17h2d3249ed9497a571E+0x311): undefined reference to `ring_core_0_17_6_aes_nohw_encrypt'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::cpu::intel::Feature::available':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/cpu/intel.rs:34:(.text._ZN4ring4aead7aes_gcm12aes_gcm_open17he5c7da21e52d1aa5E+0x158): undefined reference to `ring_core_0_17_6_OPENSSL_ia32cap_P'
          /usr/bin/ld: /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/cpu/intel.rs:34:(.text._ZN4ring4aead7aes_gcm12aes_gcm_open17he5c7da21e52d1aa5E+0x349): undefined reference to `ring_core_0_17_6_OPENSSL_ia32cap_P'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::aead::aes::encrypt_block_':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/aead/aes.rs:77:(.text._ZN4ring4aead7aes_gcm12aes_gcm_open17he5c7da21e52d1aa5E+0x3e0): undefined reference to `ring_core_0_17_6_aes_nohw_encrypt'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::cpu::intel::Feature::available':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/cpu/intel.rs:34:(.text._ZN4ring4aead3gcm7Context12update_block17h810e8e26445be466E+0x1a): undefined reference to `ring_core_0_17_6_OPENSSL_ia32cap_P'
          /usr/bin/ld: /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/cpu/intel.rs:34:(.text._ZN4ring4aead7aes_gcm6finish17h3b43676c1f6311d9E+0x12d): undefined reference to `ring_core_0_17_6_OPENSSL_ia32cap_P'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::aead::aes::encrypt_block_':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/aead/aes.rs:77:(.text._ZN4ring4aead7aes_gcm6finish17h3b43676c1f6311d9E+0x1a6): undefined reference to `ring_core_0_17_6_aes_nohw_encrypt'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::cpu::intel::Feature::available':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/cpu/intel.rs:34:(.text._ZN4ring4aead3gcm7Context13update_blocks17h9eec3b7131584c38E+0x17): undefined reference to `ring_core_0_17_6_OPENSSL_ia32cap_P'
          /usr/bin/ld: /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/cpu/intel.rs:34:(.text._ZN4ring4aead3aes3Key20ctr32_encrypt_within17h4bf68921339a1a22E+0x2e): undefined reference to `ring_core_0_17_6_OPENSSL_ia32cap_P'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::aead::aes::ctr32_encrypt_blocks_':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/aead/aes.rs:123:(.text._ZN4ring4aead3aes3Key20ctr32_encrypt_within17h4bf68921339a1a22E+0xe7): undefined reference to `ring_core_0_17_6_aes_nohw_ctr32_encrypt_blocks'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::cpu::intel::Feature::available':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/cpu/intel.rs:34:(.text._ZN4ring4aead7aes_gcm4init17hf5f8f347caf1fd17E+0xba): undefined reference to `ring_core_0_17_6_OPENSSL_ia32cap_P'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::aead::aes::set_encrypt_key':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/aead/aes.rs:53:(.text._ZN4ring4aead7aes_gcm4init17hf5f8f347caf1fd17E+0x103): undefined reference to `ring_core_0_17_6_aes_nohw_set_encrypt_key'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::aead::aes::encrypt_block_':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/aead/aes.rs:77:(.text._ZN4ring4aead7aes_gcm4init17hf5f8f347caf1fd17E+0x1c3): undefined reference to `ring_core_0_17_6_aes_nohw_encrypt'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::cpu::intel::Feature::available':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/cpu/intel.rs:34:(.text._ZN4ring4aead17chacha20_poly130522chacha20_poly1305_seal17h4770abac335eacbbE+0x34): undefined reference to `ring_core_0_17_6_OPENSSL_ia32cap_P'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::aead::poly1305::Context::from_key':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/aead/poly1305.rs:93:(.text._ZN4ring4aead17chacha20_poly130522chacha20_poly1305_seal17h4770abac335eacbbE+0xdc): undefined reference to `ring_core_0_17_6_CRYPTO_poly1305_init'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::aead::poly1305::Context::update':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/aead/poly1305.rs:104:(.text._ZN4ring4aead17chacha20_poly130522chacha20_poly1305_seal17h4770abac335eacbbE+0x10c): undefined reference to `ring_core_0_17_6_CRYPTO_poly1305_update'
          /usr/bin/ld: /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/aead/poly1305.rs:104:(.text._ZN4ring4aead17chacha20_poly130522chacha20_poly1305_seal17h4770abac335eacbbE+0x132): undefined reference to `ring_core_0_17_6_CRYPTO_poly1305_update'
          /usr/bin/ld: /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/aead/poly1305.rs:104:(.text._ZN4ring4aead17chacha20_poly130522chacha20_poly1305_seal17h4770abac335eacbbE+0x16c): undefined reference to `ring_core_0_17_6_CRYPTO_poly1305_update'
          /usr/bin/ld: /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/aead/poly1305.rs:104:(.text._ZN4ring4aead17chacha20_poly130522chacha20_poly1305_seal17h4770abac335eacbbE+0x192): undefined reference to `ring_core_0_17_6_CRYPTO_poly1305_update'
          /usr/bin/ld: /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/aead/poly1305.rs:104:(.text._ZN4ring4aead17chacha20_poly130522chacha20_poly1305_seal17h4770abac335eacbbE+0x244): undefined reference to `ring_core_0_17_6_CRYPTO_poly1305_update'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::aead::poly1305::Context::finish':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/aead/poly1305.rs:113:(.text._ZN4ring4aead17chacha20_poly130522chacha20_poly1305_seal17h4770abac335eacbbE+0x26f): undefined reference to `ring_core_0_17_6_CRYPTO_poly1305_finish'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::cpu::intel::Feature::available':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/cpu/intel.rs:34:(.text._ZN4ring4aead17chacha20_poly130522chacha20_poly1305_open17h00052ce1cf169fb9E+0x38): undefined reference to `ring_core_0_17_6_OPENSSL_ia32cap_P'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::aead::poly1305::Context::from_key':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/aead/poly1305.rs:93:(.text._ZN4ring4aead17chacha20_poly130522chacha20_poly1305_open17h00052ce1cf169fb9E+0xd4): undefined reference to `ring_core_0_17_6_CRYPTO_poly1305_init'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::aead::poly1305::Context::update':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/aead/poly1305.rs:104:(.text._ZN4ring4aead17chacha20_poly130522chacha20_poly1305_open17h00052ce1cf169fb9E+0x105): undefined reference to `ring_core_0_17_6_CRYPTO_poly1305_update'
          /usr/bin/ld: /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/aead/poly1305.rs:104:(.text._ZN4ring4aead17chacha20_poly130522chacha20_poly1305_open17h00052ce1cf169fb9E+0x12b): undefined reference to `ring_core_0_17_6_CRYPTO_poly1305_update'
          /usr/bin/ld: /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/aead/poly1305.rs:104:(.text._ZN4ring4aead17chacha20_poly130522chacha20_poly1305_open17h00052ce1cf169fb9E+0x16c): undefined reference to `ring_core_0_17_6_CRYPTO_poly1305_update'
          /usr/bin/ld: /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/aead/poly1305.rs:104:(.text._ZN4ring4aead17chacha20_poly130522chacha20_poly1305_open17h00052ce1cf169fb9E+0x196): undefined reference to `ring_core_0_17_6_CRYPTO_poly1305_update'
          /usr/bin/ld: /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/aead/poly1305.rs:104:(.text._ZN4ring4aead17chacha20_poly130522chacha20_poly1305_open17h00052ce1cf169fb9E+0x268): undefined reference to `ring_core_0_17_6_CRYPTO_poly1305_update'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::aead::poly1305::Context::finish':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/aead/poly1305.rs:113:(.text._ZN4ring4aead17chacha20_poly130522chacha20_poly1305_open17h00052ce1cf169fb9E+0x293): undefined reference to `ring_core_0_17_6_CRYPTO_poly1305_finish'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::ec::curve25519::scalar::MaskedScalar::from_bytes_masked':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/ec/curve25519/scalar.rs:65:(.text._ZN4ring2ec10curve255196x2551926x25519_public_from_private17h734a95765c679bb4E+0x3e): undefined reference to `ring_core_0_17_6_x25519_sc_mask'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::cpu::intel::Feature::available':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/cpu/intel.rs:34:(.text._ZN4ring2ec10curve255196x2551926x25519_public_from_private17h734a95765c679bb4E+0x58): undefined reference to `ring_core_0_17_6_OPENSSL_ia32cap_P'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::ec::curve25519::x25519::x25519_public_from_private':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/ec/curve25519/x25519.rs:86:(.text._ZN4ring2ec10curve255196x2551926x25519_public_from_private17h734a95765c679bb4E+0x7d): undefined reference to `ring_core_0_17_6_x25519_public_from_private_generic_masked'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::ec::curve25519::scalar::MaskedScalar::from_bytes_masked':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/ec/curve25519/scalar.rs:65:(.text._ZN4ring2ec10curve255196x2551911x25519_ecdh17h198317cd4da18d40E+0x4c): undefined reference to `ring_core_0_17_6_x25519_sc_mask'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::cpu::intel::Feature::available':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/cpu/intel.rs:34:(.text._ZN4ring2ec10curve255196x2551911x25519_ecdh17h198317cd4da18d40E+0x7e): undefined reference to `ring_core_0_17_6_OPENSSL_ia32cap_P'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::ec::curve25519::x25519::x25519_ecdh::scalar_mult':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/ec/curve25519/x25519.rs:129:(.text._ZN4ring2ec10curve255196x2551911x25519_ecdh17h198317cd4da18d40E+0x95): undefined reference to `ring_core_0_17_6_x25519_scalar_mult_adx'
          /usr/bin/ld: /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/ec/curve25519/x25519.rs:141:(.text._ZN4ring2ec10curve255196x2551911x25519_ecdh17h198317cd4da18d40E+0x9d): undefined reference to `ring_core_0_17_6_x25519_scalar_mult_generic_masked'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::constant_time::verify_slices_are_equal':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/constant_time.rs:27:(.text._ZN4ring2ec10curve255196x2551911x25519_ecdh17h198317cd4da18d40E+0xba): undefined reference to `ring_core_0_17_6_CRYPTO_memcmp'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::ec::suite_b::ops::p256::p256_point_mul_base_impl':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/ec/suite_b/ops/p256.rs:106:(.text._ZN4ring2ec7suite_b3ops4p25624p256_point_mul_base_impl17h775ddddc090c4a34E+0x47): undefined reference to `ring_core_0_17_6_p256_point_mul_base'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::limb::limbs_less_than_limbs_consttime':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/limb.rs:70:(.text._ZN4ring2ec7suite_b5curve28p256_check_private_key_bytes17had8becd4dc0ba0beE+0x178): undefined reference to `ring_core_0_17_6_LIMBS_less_than'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::limb::limbs_are_zero_constant_time':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/limb.rs:86:(.text._ZN4ring2ec7suite_b5curve28p256_check_private_key_bytes17had8becd4dc0ba0beE+0x191): undefined reference to `ring_core_0_17_6_LIMBS_are_zero'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::limb::limbs_less_than_limbs_consttime':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/limb.rs:70:(.text._ZN4ring2ec7suite_b5curve25p256_generate_private_key17h7dc182e5eb039e7bE+0x1ba): undefined reference to `ring_core_0_17_6_LIMBS_less_than'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::limb::limbs_are_zero_constant_time':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/limb.rs:86:(.text._ZN4ring2ec7suite_b5curve25p256_generate_private_key17h7dc182e5eb039e7bE+0x1d2): undefined reference to `ring_core_0_17_6_LIMBS_are_zero'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::limb::limbs_less_than_limbs_consttime':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/limb.rs:70:(.text._ZN4ring4limb43parse_big_endian_in_range_and_pad_consttime17hd66b3688027a83faE+0x164): undefined reference to `ring_core_0_17_6_LIMBS_less_than'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::limb::limbs_are_zero_constant_time':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/limb.rs:86:(.text._ZN4ring4limb43parse_big_endian_in_range_and_pad_consttime17hd66b3688027a83faE+0x181): undefined reference to `ring_core_0_17_6_LIMBS_are_zero'
          /usr/bin/ld: /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/limb.rs:86:(.text._ZN4ring2ec7suite_b11private_key31big_endian_affine_from_jacobian17hc22cd4c6bc6a0c54E+0xb2): undefined reference to `ring_core_0_17_6_LIMBS_are_zero'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::limb::limbs_add_assign_mod':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/limb.rs:328:(.text._ZN4ring2ec7suite_b42verify_affine_point_is_on_the_curve_scaled17h1236b6a77e65a5bdE+0xa8): undefined reference to `ring_core_0_17_6_LIMBS_add_mod'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::limb::limbs_equal_limbs_consttime':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/limb.rs:64:(.text._ZN4ring2ec7suite_b42verify_affine_point_is_on_the_curve_scaled17h1236b6a77e65a5bdE+0xf2): undefined reference to `ring_core_0_17_6_LIMBS_equal'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::ec::suite_b::ops::p384::p384_elem_sqr_mont':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/ec/suite_b/ops/p384.rs:278:(.text._ZN4ring2ec7suite_b3ops4p38421p384_elem_inv_squared17h97c78d60da15fea1E+0x2b): undefined reference to `ring_core_0_17_6_p384_elem_mul_mont'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::ec::suite_b::ops::PrivateKeyOps::point_mul':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/ec/suite_b/ops.rs:187:(.text._ZN4ring2ec7suite_b3ops4p38424p384_point_mul_base_impl17h4fc89806584c2210E+0x55): undefined reference to `ring_core_0_17_6_p384_point_mul'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::ec::suite_b::ops::p384::p384_elem_sqr_mont':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/ec/suite_b/ops/p384.rs:278:(.text._ZN4ring2ec7suite_b3ops4p38418p384_elem_sqr_mont17hfd791d748e32a4fcE+0x5): undefined reference to `ring_core_0_17_6_p384_elem_mul_mont'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::ec::suite_b::ops::elem::binary_op':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/ec/suite_b/ops/elem.rs:84:(.text._ZN4ring2ec7suite_b3ops4p38423p384_scalar_inv_to_mont17hc87ec7cd526f26e1E+0x54): undefined reference to `ring_core_0_17_6_p384_scalar_mul_mont'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::ec::suite_b::ops::elem::binary_op':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/ec/suite_b/ops/elem.rs:84:(.text._ZN4ring2ec7suite_b3ops4p38423p384_scalar_inv_to_mont17hc87ec7cd526f26e1E+0xa24): undefined reference to `ring_core_0_17_6_p384_scalar_mul_mont'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::limb::limbs_less_than_limbs_consttime':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/limb.rs:70:(.text._ZN4ring2ec7suite_b5curve28p384_check_private_key_bytes17h53d3bb04ab1b09c1E+0x21c): undefined reference to `ring_core_0_17_6_LIMBS_less_than'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::limb::limbs_are_zero_constant_time':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/limb.rs:86:(.text._ZN4ring2ec7suite_b5curve28p384_check_private_key_bytes17h53d3bb04ab1b09c1E+0x235): undefined reference to `ring_core_0_17_6_LIMBS_are_zero'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::limb::limbs_less_than_limbs_consttime':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/limb.rs:70:(.text._ZN4ring2ec7suite_b5curve25p384_generate_private_key17h903e5ed85aed15bcE+0x25e): undefined reference to `ring_core_0_17_6_LIMBS_less_than'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::limb::limbs_are_zero_constant_time':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/limb.rs:86:(.text._ZN4ring2ec7suite_b5curve25p384_generate_private_key17h903e5ed85aed15bcE+0x276): undefined reference to `ring_core_0_17_6_LIMBS_are_zero'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::ec::suite_b::ops::p256::point_mul_base_vartime':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/ec/suite_b/ops/p256.rs:152:(.text._ZN4ring2ec7suite_b3ops4p25617twin_mul_nistz25617h635803b07342a2bdE+0x54): undefined reference to `ring_core_0_17_6_p256_point_mul_base_vartime'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::ec::suite_b::ops::PrivateKeyOps::point_mul':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/ec/suite_b/ops.rs:187:(.text._ZN4ring2ec7suite_b3ops4p25617twin_mul_nistz25617h635803b07342a2bdE+0xb8): undefined reference to `ring_core_0_17_6_p256_point_mul'
          /usr/bin/ld: /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/ec/suite_b/ops.rs:187:(.text._ZN4core3ops8function6FnOnce9call_once17h701fc64fe47d1d02E+0x5d): undefined reference to `ring_core_0_17_6_p384_point_mul'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::ec::suite_b::ops::CommonOps::point_sum':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/ec/suite_b/ops.rs:134:(.text._ZN4core3ops8function6FnOnce9call_once17h701fc64fe47d1d02E+0x122): undefined reference to `ring_core_0_17_6_p384_point_add'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::limb::limbs_less_than_limbs_consttime':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/limb.rs:70:(.text._ZN119_$LT$ring..ec..curve25519..ed25519..verification..EdDSAParameters$u20$as$u20$ring..signature..VerificationAlgorithm$GT$6verify17h65ea6fadfca1db9bE+0x20e): undefined reference to `ring_core_0_17_6_LIMBS_less_than'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::ec::curve25519::ops::ExtPoint::from_encoded_point_vartime':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/ec/curve25519/ops.rs:101:(.text._ZN119_$LT$ring..ec..curve25519..ed25519..verification..EdDSAParameters$u20$as$u20$ring..signature..VerificationAlgorithm$GT$6verify17h65ea6fadfca1db9bE+0x28b): undefined reference to `ring_core_0_17_6_x25519_ge_frombytes_vartime'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::ec::curve25519::ops::Elem<ring::ec::curve25519::ops::T>::negate':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/ec/curve25519/ops.rs:52:(.text._ZN119_$LT$ring..ec..curve25519..ed25519..verification..EdDSAParameters$u20$as$u20$ring..signature..VerificationAlgorithm$GT$6verify17h65ea6fadfca1db9bE+0x2b1): undefined reference to `ring_core_0_17_6_x25519_fe_neg'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::ec::curve25519::scalar::Scalar::from_sha512_digest_reduced':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/ec/curve25519/scalar.rs:51:(.text._ZN119_$LT$ring..ec..curve25519..ed25519..verification..EdDSAParameters$u20$as$u20$ring..signature..VerificationAlgorithm$GT$6verify17h65ea6fadfca1db9bE+0x4a4): undefined reference to `ring_core_0_17_6_x25519_sc_reduce'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `<ring::ec::curve25519::ed25519::verification::EdDSAParameters as ring::signature::VerificationAlgorithm>::verify':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/ec/curve25519/ed25519/verification.rs:65:(.text._ZN119_$LT$ring..ec..curve25519..ed25519..verification..EdDSAParameters$u20$as$u20$ring..signature..VerificationAlgorithm$GT$6verify17h65ea6fadfca1db9bE+0x52a): undefined reference to `ring_core_0_17_6_x25519_ge_double_scalarmult_vartime'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::ec::curve25519::ops::encode_point':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/ec/curve25519/ops.rs:141:(.text._ZN119_$LT$ring..ec..curve25519..ed25519..verification..EdDSAParameters$u20$as$u20$ring..signature..VerificationAlgorithm$GT$6verify17h65ea6fadfca1db9bE+0x627): undefined reference to `ring_core_0_17_6_x25519_fe_invert'
          /usr/bin/ld: /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/ec/curve25519/ops.rs:144:(.text._ZN119_$LT$ring..ec..curve25519..ed25519..verification..EdDSAParameters$u20$as$u20$ring..signature..VerificationAlgorithm$GT$6verify17h65ea6fadfca1db9bE+0x64d): undefined reference to `ring_core_0_17_6_x25519_fe_mul_ttt'
          /usr/bin/ld: /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/ec/curve25519/ops.rs:148:(.text._ZN119_$LT$ring..ec..curve25519..ed25519..verification..EdDSAParameters$u20$as$u20$ring..signature..VerificationAlgorithm$GT$6verify17h65ea6fadfca1db9bE+0x6a8): undefined reference to `ring_core_0_17_6_x25519_fe_tobytes'
          /usr/bin/ld: /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/ec/curve25519/ops.rs:150:(.text._ZN119_$LT$ring..ec..curve25519..ed25519..verification..EdDSAParameters$u20$as$u20$ring..signature..VerificationAlgorithm$GT$6verify17h65ea6fadfca1db9bE+0x6b1): undefined reference to `ring_core_0_17_6_x25519_fe_isnegative'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::limb::limbs_reduce_once_constant_time':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/limb.rs:135:(.text._ZN125_$LT$ring..ec..suite_b..ecdsa..verification..EcdsaVerificationAlgorithm$u20$as$u20$ring..signature..VerificationAlgorithm$GT$6verify17he0bff02e31493afbE+0x343): undefined reference to `ring_core_0_17_6_LIMBS_reduce_once'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::limb::limbs_are_zero_constant_time':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/limb.rs:86:(.text._ZN125_$LT$ring..ec..suite_b..ecdsa..verification..EcdsaVerificationAlgorithm$u20$as$u20$ring..signature..VerificationAlgorithm$GT$6verify17he0bff02e31493afbE+0x590): undefined reference to `ring_core_0_17_6_LIMBS_are_zero'
          /usr/bin/ld: /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/limb.rs:86:(.text._ZN125_$LT$ring..ec..suite_b..ecdsa..verification..EcdsaVerificationAlgorithm$u20$as$u20$ring..signature..VerificationAlgorithm$GT$6verify17he0bff02e31493afbE+0x714): undefined reference to `ring_core_0_17_6_LIMBS_are_zero'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::limb::limbs_less_than_limbs_consttime':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/limb.rs:70:(.text._ZN125_$LT$ring..ec..suite_b..ecdsa..verification..EcdsaVerificationAlgorithm$u20$as$u20$ring..signature..VerificationAlgorithm$GT$6verify17he0bff02e31493afbE+0xb58): undefined reference to `ring_core_0_17_6_LIMBS_less_than'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::limb::limbs_add_assign_mod':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/limb.rs:328:(.text._ZN125_$LT$ring..ec..suite_b..ecdsa..verification..EcdsaVerificationAlgorithm$u20$as$u20$ring..signature..VerificationAlgorithm$GT$6verify17he0bff02e31493afbE+0xb96): undefined reference to `ring_core_0_17_6_LIMBS_add_mod'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::limb::limbs_are_even_constant_time':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/limb.rs:92:(.text._ZN4ring3rsa12verification11verify_rsa_17h14e5d6a4f29f921bE+0x28e): undefined reference to `ring_core_0_17_6_LIMBS_are_even'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::limb::limbs_less_than_limb_constant_time':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/limb.rs:81:(.text._ZN4ring3rsa12verification11verify_rsa_17h14e5d6a4f29f921bE+0x2a9): undefined reference to `ring_core_0_17_6_LIMBS_less_than_limb'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::arithmetic::bigint::modulus::OwnedModulus<M>::from_be_bytes':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/arithmetic/bigint/modulus.rs:129:(.text._ZN4ring3rsa12verification11verify_rsa_17h14e5d6a4f29f921bE+0x2c0): undefined reference to `ring_core_0_17_6_bn_neg_inv_mod_r_u64'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::limb::limbs_minimal_bits':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/limb.rs:118:(.text._ZN4ring3rsa12verification11verify_rsa_17h14e5d6a4f29f921bE+0x32a): undefined reference to `ring_core_0_17_6_LIMB_shr'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `<core::ops::range::Range<T> as core::iter::range::RangeIteratorImpl>::spec_next':
          /usr/src/debug/rust/rustc-1.76.0-src/library/core/src/iter/range.rs:729:(.text._ZN4ring3rsa12verification11verify_rsa_17h14e5d6a4f29f921bE+0x4de): undefined reference to `ring_core_0_17_6_LIMBS_shl_mod'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::arithmetic::bigint::One<M,ring::arithmetic::montgomery::RR>::newRR':
          /usr/src/debug/rust/rustc-1.76.0-src/library/core/src/iter/range.rs:(.text._ZN4ring3rsa12verification11verify_rsa_17h14e5d6a4f29f921bE+0x506): undefined reference to `ring_core_0_17_6_LIMBS_shl_mod'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::limb::limbs_less_than_limbs_consttime':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/limb.rs:70:(.text._ZN4ring3rsa12verification11verify_rsa_17h14e5d6a4f29f921bE+0x890): undefined reference to `ring_core_0_17_6_LIMBS_less_than'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::limb::limbs_are_zero_constant_time':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/limb.rs:86:(.text._ZN4ring3rsa12verification11verify_rsa_17h14e5d6a4f29f921bE+0x8cc): undefined reference to `ring_core_0_17_6_LIMBS_are_zero'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::constant_time::verify_slices_are_equal':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/constant_time.rs:27:(.text._ZN108_$LT$rustls..tls12..cipher..ChaCha20Poly1305MessageDecrypter$u20$as$u20$rustls..cipher..MessageDecrypter$GT$7decrypt17h92abd9d70c7eb40fE+0x259): undefined reference to `ring_core_0_17_6_CRYPTO_memcmp'
          /usr/bin/ld: /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/constant_time.rs:27:(.text._ZN95_$LT$rustls..tls12..cipher..GcmMessageDecrypter$u20$as$u20$rustls..cipher..MessageDecrypter$GT$7decrypt17h345d1638df695818E+0x1b7): undefined reference to `ring_core_0_17_6_CRYPTO_memcmp'
          /usr/bin/ld: /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/constant_time.rs:27:(.text._ZN89_$LT$rustls..tls13..Tls13MessageDecrypter$u20$as$u20$rustls..cipher..MessageDecrypter$GT$7decrypt17h4967d7e3d1d71fa9E+0x164): undefined reference to `ring_core_0_17_6_CRYPTO_memcmp'
          /usr/bin/ld: /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/constant_time.rs:27:(.text._ZN142_$LT$rustls..client..tls12..ExpectFinished$u20$as$u20$rustls..common_state..State$LT$rustls..client..client_conn..ClientConnectionData$GT$$GT$6handle17h2c7d99d26d780947E+0x27d): undefined reference to `ring_core_0_17_6_CRYPTO_memcmp'
          /usr/bin/ld: /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/constant_time.rs:27:(.text._ZN142_$LT$rustls..client..tls13..ExpectFinished$u20$as$u20$rustls..common_state..State$LT$rustls..client..client_conn..ClientConnectionData$GT$$GT$6handle17h0429426e4bc9467aE+0x258): undefined reference to `ring_core_0_17_6_CRYPTO_memcmp'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o: in function `ring::cpu::features::{{closure}}':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/cpu.rs:51:(.text.unlikely._ZN4spin4once17Once$LT$T$C$R$GT$18try_call_once_slow17h5099c1b2d35f1638E+0x11): undefined reference to `ring_core_0_17_6_OPENSSL_cpuid_setup'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o:(.data.rel.ro._ZN4ring2ec7suite_b3ops4p25615PRIVATE_KEY_OPS17h13a3e4552b27003cE+0x18): undefined reference to `ring_core_0_17_6_p256_point_mul'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o:/build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/src/ec/suite_b/ops/p384.rs:20:(.data.rel.ro._ZN4ring2ec7suite_b3ops4p38410COMMON_OPS17h508f69093c91ca4fE+0x0): undefined reference to `ring_core_0_17_6_p384_elem_mul_mont'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o:(.data.rel.ro._ZN4ring2ec7suite_b3ops4p38410COMMON_OPS17h508f69093c91ca4fE+0x10): undefined reference to `ring_core_0_17_6_p384_point_add'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o:(.data.rel.ro._ZN4ring2ec7suite_b3ops4p38415PRIVATE_KEY_OPS17h5e37621ed92a456aE+0x18): undefined reference to `ring_core_0_17_6_p384_point_mul'
          /usr/bin/ld: /build/tlrc/src/tlrc-1.8.0/target/release/deps/tldr-cad54f60aee724ab.tldr.88873424f1eaf6df-cgu.0.rcgu.o:(.data.rel.ro._ZN4ring2ec7suite_b3ops4p38410SCALAR_OPS17h1ea31fe91af86b6cE+0x10): undefined reference to `ring_core_0_17_6_p384_scalar_mul_mont'
          /usr/bin/ld: /tmp/rustcsp7KkM/libring-cb75d4dbccddaabf.rlib(fb2341e01a1804e3-chacha-x86_64-elf.o): in function `ring_core_0_17_6_ChaCha20_ctr32':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/pregenerated/chacha-x86_64-elf.S:52:(.text+0x11): undefined reference to `ring_core_0_17_6_OPENSSL_ia32cap_P'
          /usr/bin/ld: /tmp/rustcsp7KkM/libring-cb75d4dbccddaabf.rlib(fb2341e01a1804e3-aesni-x86_64-elf.o): in function `ring_core_0_17_6_aes_hw_ctr32_encrypt_blocks':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/pregenerated/aesni-x86_64-elf.S:369:(.text+0x4bf): undefined reference to `ring_core_0_17_6_OPENSSL_ia32cap_P'
          /usr/bin/ld: /tmp/rustcsp7KkM/libring-cb75d4dbccddaabf.rlib(fb2341e01a1804e3-aesni-x86_64-elf.o): in function `ring_core_0_17_6_aes_hw_set_encrypt_key':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/pregenerated/aesni-x86_64-elf.S:881:(.text+0xd1a): undefined reference to `ring_core_0_17_6_OPENSSL_ia32cap_P'
          /usr/bin/ld: /tmp/rustcsp7KkM/libring-cb75d4dbccddaabf.rlib(fb2341e01a1804e3-x86_64-mont-elf.o): in function `ring_core_0_17_6_bn_mul_mont':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/pregenerated/x86_64-mont-elf.S:26:(.text+0x1c): undefined reference to `ring_core_0_17_6_OPENSSL_ia32cap_P'
          /usr/bin/ld: /tmp/rustcsp7KkM/libring-cb75d4dbccddaabf.rlib(fb2341e01a1804e3-x86_64-mont-elf.o): in function `bn_sqr8x_mont':
          /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/pregenerated/x86_64-mont-elf.S:788:(.text+0x8b7): undefined reference to `ring_core_0_17_6_OPENSSL_ia32cap_P'
          /usr/bin/ld: /tmp/rustcsp7KkM/libring-cb75d4dbccddaabf.rlib(fb2341e01a1804e3-x86_64-mont5-elf.o):/build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.6/pregenerated/x86_64-mont5-elf.S:24: more undefined references to `ring_core_0_17_6_OPENSSL_ia32cap_P' follow
          collect2: error: ld returned 1 exit status

  = note: some `extern` functions couldn't be found; some native libraries may need to be installed or have their path specified
  = note: use the `-l` flag to specify native libraries to link
  = note: use the `cargo:rustc-link-lib` directive to specify the native libraries to link with Cargo (see https://doc.rust-lang.org/cargo/reference/build-scripts.html#cargorustc-link-libkindname)

error: could not compile `tlrc` (bin "tldr") due to 1 previous error
kbdharun commented 9 months ago

Thanks for the issue, I don't have an active Arch installation so I used the Arch Docker image under Distrobox (running in Fedora) instead.

I couldn't replicate this issue on rustup 1.76.0 too and the compilation works fine.

Are you using Rust tools installed in local repositories from Pacman?

➜  tlrc git:(main) cargo build
    Updating crates.io index
  Downloaded clap_lex v0.6.0
  Downloaded clap_derive v4.4.7
  Downloaded once_cell v1.19.0
  Downloaded serde_spanned v0.6.5
  Downloaded toml_datetime v0.6.5
  Downloaded percent-encoding v2.3.1
  Downloaded form_urlencoded v1.2.1
  Downloaded getrandom v0.2.11
  Downloaded quote v1.0.35
  Downloaded sct v0.7.1
  Downloaded clap v4.4.18
  Downloaded proc-macro2 v1.0.78
  Downloaded serde_derive v1.0.196
  Downloaded toml v0.8.9
  Downloaded indexmap v2.1.0
  Downloaded anstream v0.6.11
  Downloaded base64 v0.21.5
  Downloaded serde v1.0.196
  Downloaded url v2.5.0
  Downloaded toml_edit v0.21.1
  Downloaded winnow v0.5.19
  Downloaded ureq v2.9.1
  Downloaded hashbrown v0.14.3
  Downloaded rustls-webpki v0.101.7
  Downloaded clap_builder v4.4.18
  Downloaded syn v2.0.48
  Downloaded webpki-roots v0.25.3
  Downloaded rustls v0.21.9
  Downloaded idna v0.5.0
  Downloaded libc v0.2.150
  Downloaded ring v0.17.7
  Downloaded 31 crates (7.5 MB) in 3.28s (largest was `ring` at 4.1 MB)
   Compiling libc v0.2.150
   Compiling proc-macro2 v1.0.78
   Compiling unicode-ident v1.0.12
   Compiling cfg-if v1.0.0
   Compiling serde v1.0.196
   Compiling tinyvec_macros v0.1.1
   Compiling untrusted v0.9.0
   Compiling spin v0.9.8
   Compiling utf8parse v0.2.1
   Compiling crc32fast v1.3.2
   Compiling colorchoice v1.0.0
   Compiling tinyvec v1.6.0
   Compiling percent-encoding v2.3.1
   Compiling anstyle-parse v0.2.2
   Compiling hashbrown v0.14.3
   Compiling anstyle v1.0.4
   Compiling adler v1.0.2
   Compiling unicode-bidi v0.3.13
   Compiling anstyle-query v1.0.0
   Compiling equivalent v1.0.1
   Compiling rustls v0.21.9
   Compiling miniz_oxide v0.7.1
   Compiling form_urlencoded v1.2.1
   Compiling anstream v0.6.11
   Compiling heck v0.4.1
   Compiling clap_lex v0.6.0
   Compiling strsim v0.10.0
   Compiling log v0.4.20
   Compiling winnow v0.5.19
   Compiling option-ext v0.2.0
   Compiling clap_builder v4.4.18
   Compiling byteorder v1.5.0
   Compiling tlrc v1.8.0 (/home/kbdharunkrishna/Downloads/tlrc)
   Compiling indexmap v2.1.0
   Compiling quote v1.0.35
   Compiling cc v1.0.83
   Compiling syn v2.0.48
   Compiling getrandom v0.2.11
   Compiling unicode-normalization v0.1.22
   Compiling dirs-sys v0.4.1
   Compiling flate2 v1.0.28
   Compiling once_cell v1.19.0
   Compiling webpki-roots v0.25.3
   Compiling base64 v0.21.5
   Compiling dirs v5.0.1
   Compiling yansi v0.5.1
   Compiling zip v0.6.6
   Compiling idna v0.5.0
   Compiling ring v0.17.7
   Compiling url v2.5.0
   Compiling serde_derive v1.0.196
   Compiling clap_derive v4.4.7
   Compiling clap v4.4.18
   Compiling sct v0.7.1
   Compiling rustls-webpki v0.101.7
   Compiling ureq v2.9.1
   Compiling toml_datetime v0.6.5
   Compiling serde_spanned v0.6.5
   Compiling toml_edit v0.21.1
   Compiling toml v0.8.9
    Finished dev [unoptimized + debuginfo] target(s) in 39.72s
➜  tlrc git:(main) cargo run
    Finished dev [unoptimized + debuginfo] target(s) in 0.07s
     Running `target/debug/tldr`
tlrc v1.8.0 (implementing the tldr client specification v2.1) - debug build (2a197f2)
Official tldr client written in Rust

Usage: tldr [OPTIONS] <PAGE>...

Arguments:
  <PAGE>...  The tldr page to show

Options:
  -u, --update                    Update the cache
  -l, --list                      List all pages in the current platform
  -a, --list-all                  List all pages
      --list-platforms            List available platforms
      --list-languages            List installed languages
  -i, --info                      Show cache information (path, age, installed languages and the number of pages)
  -r, --render <FILE>             Render the specified markdown file
      --clean-cache               Clean the cache
      --gen-config                Print the default config
      --config-path               Print the default config path and create the config directory
  -p, --platform <PLATFORM>       Specify the platform to use (linux, osx, windows, etc.) [default: linux]
  -L, --language <LANGUAGE_CODE>  Specify the languages to use
  -o, --offline                   Do not update the cache, even if it is stale
  -c, --compact                   Strip empty lines from output
      --no-compact                Do not strip empty lines from output (overrides --compact)
  -R, --raw                       Print pages in raw markdown instead of rendering them
      --no-raw                    Render pages instead of printing raw file contents (overrides --raw)
  -q, --quiet                     Suppress status messages and warnings
      --color <WHEN>              Specify when to enable color [default: auto] [possible values: auto, always, never]
      --config <FILE>             Specify an alternative path to the config file
  -v, --version                   Print version
  -h, --help                      Print help

See 'man tldr' or https://tldr.sh/tlrc for more information.
kbdharun commented 9 months ago

Update: Tried installing rust from the native repositories too (i.e. sudo pacman -Syu rust) and tlrc compiles and runs fine. I think it is possible an external dependency or some config is affecting compilation for you locally.

noraj commented 9 months ago

Directly from the repository seeams to work:

git clone https://github.com/tldr-pages/tlrc.git && cd tlrc
git checkout v1.8.0
cargo build # ✅
rm -r target
cargo build --release --locked # ✅
rm -r target
COMPLETION_DIR=completions cargo build --release --frozen # ✅

But when using the AUR package with any pacman wrapper or directly with makepkg, it doesn't work while it's using the same rust and same build arguments.

git clone https://aur.archlinux.org/tlrc.git tlrc-aur && cd tlrc-aur
makepkg -srf # ❌
acuteenvy commented 9 months ago

This is very weird. I always test if the package builds correctly, and it has always worked. I can reproduce this error on pacman v6.0.2-9, and downgrading to 6.0.2-8 fixes the issue.

Specifically, 6.0.2-9 for some reason changes OPTIONS=(!lto) to OPTIONS=(lto) in /etc/makepkg.conf. Adding the ! back fixes the issue. I have no idea why though.

Also, it's ring that fails to compile, not tlrc.

noraj commented 9 months ago

Ok I found the root cause. It's because LTO (link time optimization) is enabled by default https://gitlab.archlinux.org/archlinux/rfcs/-/blob/master/rfcs/0004-lto-by-default.rst. That why it would work with cargo directly but no through makepkg. A similar issue in ring: https://github.com/briansmith/ring/issues/1444

Note: I made a tlrc-git where I disabled LTO, yo umay want to disable that flag for tlrc package as well.