Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Debian 12 on x86_64 (QEMU pc-q35-7.2) – cryptography.hazmat.bindings._rust.openssl raises SIGILL #12069

Closed
odkr opened this issue Nov 29, 2024 · 12 comments
Labels
waiting-on-reporter Issue is waiting on a reply from the reporter. It will be automatically cloesd if there is no reply.

Comments

@odkr
Copy link

odkr commented Nov 29, 2024

First of all, thank you for your work on cryptography. Unfortunately, I encountered a bug when trying to debug another package. Loading any of cryptography.hazmat.bindings._rust.openssl (and consequently any module that depends on it) on an x86_64 build of Debian 12 running in QEMU's pc-q35-7.2 emulation on an Apple M1 raises SIGILL.

Host

$ uname -mor
Darwin 23.6.0 arm64

VM

QEMU command:

qemu-system-x86_64 -L /Applications/UTM.app/Contents/Resources/qemu -S -spice unix=on,addr=6DCA196C-C4CB-40A1-A67E-89E3C99A9EA5.spice,disable-ticketing=on,image-compression=off,playback-compression=off,streaming-video=off,gl=off -chardev spiceport,name=org.qemu.monitor.qmp.0,id=org.qemu.monitor.qmp -mon chardev=org.qemu.monitor.qmp,mode=control -nodefaults -vga none -device e1000,mac=B2:34:87:DE:FB:69,netdev=net0 -netdev vmnet-shared,id=net0 -device virtio-gpu-pci -smp cpus=1,sockets=1,cores=1,threads=1 -machine q35,vmport=off,i8042=off,hpet=off -accel tcg,tb-size=1024 -global PIIX4_PM.disable_s3=1 -global ICH9-LPC.disable_s3=1 -drive if=pflash,format=raw,unit=0,file.filename=/Applications/UTM.app/Contents/Resources/qemu/edk2-x86_64-code.fd,file.locking=off,readonly=on -drive if=pflash,unit=1,file=/Users/odin/Library/Containers/com.utmapp.UTM/Data/Documents/Linux.utm/Data/efi_vars.fd -m 4096 -audiodev coreaudio,id=audio1 -audiodev spice,id=audio0 -device intel-hda -device hda-output,audiodev=audio1 -usb -device usb-tablet,bus=usb-bus.0 -device usb-mouse,bus=usb-bus.0 -device usb-kbd,bus=usb-bus.0 -device nec-usb-xhci,id=usb-controller-0 -chardev spicevmc,name=usbredir,id=usbredirchardev0 -device usb-redir,chardev=usbredirchardev0,id=usbredirdev0,bus=usb-controller-0.0 -chardev spicevmc,name=usbredir,id=usbredirchardev1 -device usb-redir,chardev=usbredirchardev1,id=usbredirdev1,bus=usb-controller-0.0 -chardev spicevmc,name=usbredir,id=usbredirchardev2 -device usb-redir,chardev=usbredirchardev2,id=usbredirdev2,bus=usb-controller-0.0 -device ide-cd,bus=ide.0,drive=drive003DE5BE-3CCC-4E05-80C0-38729864B0CB,bootindex=0 -drive if=none,media=cdrom,id=drive003DE5BE-3CCC-4E05-80C0-38729864B0CB,readonly=on -device ide-hd,bus=ide.1,drive=drive1433D49F-A8F4-4543-A5D4-7ED4AF101D18,bootindex=1 -drive if=none,media=disk,id=drive1433D49F-A8F4-4543-A5D4-7ED4AF101D18,file.filename=/Users/odin/Library/Containers/com.utmapp.UTM/Data/Documents/Linux.utm/Data/1433D49F-A8F4-4543-A5D4-7ED4AF101D18.qcow2,discard=unmap,detect-zeroes=unmap -device virtio-serial -device virtserialport,chardev=org.qemu.guest_agent,name=org.qemu.guest_agent.0 -chardev spiceport,name=org.qemu.guest_agent.0,id=org.qemu.guest_agent -device virtserialport,chardev=vdagent,name=com.redhat.spice.0 -chardev spicevmc,id=vdagent,debug=0,name=vdagent -name Linux -uuid 6DCA196C-C4CB-40A1-A67E-89E3C99A9EA5 -device virtio-rng-pci
$ uname -mor
6.1.0-28-amd64 x86_64 GNU/Linux
$ python --version
Python 3.11.2
$ pip list
Package      Version
------------ -------
cffi         1.17.1
cryptography 44.0.0
pip          24.3.1
pycparser    2.22
setuptools   66.1.1

Steps to reproduce

$ python3 -mvenv cryptography-test
$ . cryptography-test/bin/activate
$ pip install --upgrade pip
[...]
$ pip install cryptography
[...]
$ python -mcryptography.hazmat.bindings._rust.openssl
Illegal instruction
$ python -mpdb cryptography-test/lib/python3.11/site-packages/cryptography/hazmat/bindings/_rust/openssl/__init__.pyi 
> /home/odin/cryptography-test/lib/python3.11/site-packages/cryptography/hazmat/bindings/_rust/openssl/__init__.pyi(5)<module>()
-> import typing
(Pdb) n
> /home/odin/cryptography-test/lib/python3.11/site-packages/cryptography/hazmat/bindings/_rust/openssl/__init__.pyi(7)<module>()
-> from cryptography.hazmat.bindings._rust.openssl import (
(Pdb) 
Illegal instruction
@alex
Copy link
Member

alex commented Nov 29, 2024

Does this reproduce with older versions of cryptography?

I don't suppose its possible to figure out which instruction leads to the SIGILL?

@alex alex added the waiting-on-reporter Issue is waiting on a reply from the reporter. It will be automatically cloesd if there is no reply. label Nov 29, 2024
@odkr
Copy link
Author

odkr commented Nov 29, 2024

Does this reproduce with older versions of cryptography?

No, version 43.0.3 appears to work:

$ python3 -mvenv cryptography-test
$ . cryptography-test/bin/activate
$ pip install --upgrade pip
$ pip install cryptography==43.0.3
# These instructions raise SIGILL in 44.0.0, because they load cryptography.hazmat.bindings._rust.openssl
$ python <<EOF
from cryptography.hazmat.primitives import serialization, hashes, padding
EOF
$ echo $?
0

I don't suppose its possible to figure out which instruction leads to the SIGILL?

Could you give me some pointers? I tried to hunt down the offending instruction, but at some point I had the impression I was going in circles, cryptography.hazmat.bindings._rust.openssl was raising SIGILL when it loaded some other module, and that other module was raising SIGILL when it tried to load cryptography.hazmat.bindings._rust.openssl. I just don't know where to start looking.

I cloned to repo, reset it to 44.0.0 and tried to run the test suite, but while cargo build works, cargo test fails with:

   Compiling cryptography-rust v0.1.0 (/home/odin/cryptography/src/rust)
error: linking with `cc` failed: exit status: 1
  |
  = note: LC_ALL="C" PATH="/home/odin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/bin:/home/odin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/bin:/home/odin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/bin:/home/odin/old-crypto-test/bin:/home/odin/.cargo/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games" VSLANG="1033" "cc" "-m64" "/tmp/rustcLr0WvQ/symbols.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.01gys7ese3rdicxigzxobfmd3.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.04cqry2xyk9f761eto44j4lrk.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.04t6zai1y2f616cgwxmpy6ywv.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.05lct7o91ugwscta1688z7lfl.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.08nak9a6pk4nqcdxij0g18d84.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.0buudgh3lvdabp8l5y16a5oxw.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.0cvrfbjrk2chkzfv341riz9xn.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.0egichiu50lf6nsu9q33ylso8.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.0gnjy8g4znvuzkdusn6x301xf.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.0hxz2geo6ocebkcufopv44mzs.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.0oggqpm05buc9h6vhtk2g56d6.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.0pmhlv8juu2kx99pa8gbsfxam.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.0secbbf71db8u4m5b8knie21s.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.0si4ce7wj7vdgdg0bsbzafryu.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.0syn6lfgnn3vh038hn08wa2x0.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.0tj37e1h9mbw6o42w41deero1.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.0ueyigibydxkjkxowrrp397mj.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.10k45pnfcht3076c6auwf8u2k.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.11omxwa63ga218vku64mw07hu.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.16l52e5fiisihochjyxiffu3u.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.17d7rhzolesdp34aqlpcqqehg.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.184qtk46b95w7o8lutu90bzj8.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.18o2zwl7ngppaul3l88issgmv.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.1huwcv2o1srh95xq9wibmx3g6.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.1iydahu6fwh4ani4o5949f8bl.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.1ptiko993twlt1mdg33jl8x90.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.1r8beytxpi7hft8ft77pcu2sc.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.1y9ier7xay6y9y1gxtb9fl7wy.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.1ynoqy1i8aexuj2kcl7jkskv5.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.22x2l1nwkz7yu6k48w2fa3ac6.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.23danbf6a9kkiv2n9c1pyray2.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.244bin0fev13kxzes4wuzbsnx.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.25ibwp0feirnrzxu1uui9pixs.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.2bfw8yehgfwwklund6fg7sj2t.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.2erpngr0n2cz9wh2j32j10zxk.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.2gokdy6pga7shxrlzd6lo6kod.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.2h356wot51qmscknohc9gbozp.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.2hdlgshkv8zrs4meuvwasnr6e.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.2iuxg3tl9mjhk0fc4y2huue84.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.2jetb97y722j77uk47e954dlx.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.2jrlibf5dbnroiyvcqhw60rsd.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.2ku32ktq17lt7md9qnmefv5w3.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.2r662e535aje8lkhknvm5g3rh.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.2txsy7xptn029t19c63jonlh1.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.2ugm8xz2jkhcgc6m91t0ma59k.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.30ectehpzdkps8yvk2rokq3h8.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.339w6z3m85j5rzxekpj81yic3.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.354vji61gl0hy4f1javgio1em.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.36gwvd8tt5zrphh706v0quf74.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.3fhjwr1pdlqxx8rc9mwm29n72.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.3gnluhesi9om6kycellwihbt0.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.3gsgkashmrpp20oxtfguje0h0.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.3kzklzfvnfahr1gp8bq1mtl8s.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.3l18zzxj2spydepyqul789v44.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.3l5qm1ch2m8vff73f7s71y040.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.3m6iv5tny6edor5wfqmgtwy8m.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.3myimhq4uf4be5z9muybuuhx9.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.3nhogv0d2b78f2my5yj3m73wq.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.3nlaoyq03vxlput9gb72u1k9t.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.3p7q12m1cczl9mp22y2vqrs54.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.3q9z9sb6hm9uv18a3pz0ar2ta.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.3qh79g16f2owhim5s36wo9i24.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.3rlztqadk1ud5a2uoan4nt9w1.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.3uh3xlpzcaxqex2zul75nc44m.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.3vqe13oq4r10wzsl6t3nep3hk.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.3x4lasztkgfmetlaga7zoy56n.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.3yg4qpk0x0erxqw7j5qwxxvt0.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.40b8fghor88e5heubdqaehq45.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.40pbrukygd6hl17gy6usoiof2.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.41q07hsgs5a3x3w4hspd94z5i.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.42w1svf6tmnmrzmzanxnlaa1r.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.42ytac0zffmp4lkzftftcsjv4.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.43bec17zb09etw4wyuhb8m1qk.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.4444n6c3o760h5lmr9t29hhdy.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.4c8662cyx95agmadty2fbs8kv.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.4ee3um26aipkhj7g5drh4r420.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.4emnwra8nssqemnzz89qm6h76.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.4eos4snxjxk8dl907xg7e1k1h.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.4hbn9rvfu6hjhb91e010pa4ox.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.4hhd7qi4ulekspdqr5tjp26h4.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.4ii08zlfhs7hwzx6dm0h4l5rr.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.4j8a56mk2u22gxopfcr6u18a5.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.4l2zhd0arcs6kcaglit0la4jh.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.4rvg6rr9oruun83qr1plu7a16.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.4sxojza93yc4y9zl2nlysvw8v.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.4v12c2zlknzkqa1h9jwk0p6y5.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.4zhh3vea0zseg7kykpwl10ffb.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.51pc1ro9v5r92r0em7z32lvpf.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.52t3rm1n7ohwxu9snbp21oukr.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.55i5cdmzpftquwb5mhvew2d9j.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.58tvn36eifvk5y5wpqfkj6s1c.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.59f70tmzt0zpfnq846vb8564o.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.59zwhgt6gxpaf4ohh1nhc6kzs.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.5ejw4zqc8fm52vbsrznlqfq5l.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.5f1ig8mckvvbuelg4195mcwi5.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.5g90i53tumlja7k5gqsit74gr.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.5ifxi5jhgwxqw7v4giojwjcdu.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.5jdd0lfblyzm2j4z78pbz152t.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.5jdjw0rfutjcbihiceo5ym3ub.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.5qkehw5jz6iwaq25o3g213lfn.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.5sz8gsvkfyocam91cxwe1j0sb.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.5u0rd3djxfx2iqph12aahn873.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.62kkucvopwu8r1ntr0vjivp9s.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.64oyccn80ntl1x25fwdpm5oar.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.65sc14iw37zk76mkkafw5c6sd.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.66u9eg1tqv4jn4aewnwira9ug.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.676myrzpd5m3n8dfp30l5chax.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.67849d7facsfdakysq2bid9mr.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.6b3b5euyzqsg2f0ujo4ufxyu4.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.6chionz0upxuhqgch5t2f3i80.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.6eputcilmwcv24zzix05ee7up.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.6frkwdvgacmhdld7hg5kenaok.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.6fw8o9y9zz5cudh0wz4iww792.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.6h8n4dnggppf15ye66y7j62u5.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.6hcxdv0z2ynjr53235ijek2i2.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.6heccnya28m2tmsau73u9vtzo.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.6j9otsyzjzxpu0i7il1spcy3g.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.6ninpeck1pq4fhgetbpn1knte.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.6ovzgfhtfpkvki0jr8k51c02s.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.6tovzrt8oqdo83ifj5msibtb2.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.6v4err2er5pn5rgjyn6drlcq8.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.765q3w4qfvmkm4zcc9tf1kuxw.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.77nz9rpwn3lmljdykivmgp4x2.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.785kh2x5f8hw9qgh4jypr7ru3.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.7895h60kvnddphbq51mpag0r0.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.7avo4tfh8d4g58txl4nig49uv.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.7bkr6y03ki9p60ewbf1oygnwr.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.7d2w4fxr1rx2p7xotwxd7iywi.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.7dddqfgdq0estyfktmx17v3wz.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.7dmjm2m8svqqh2vimtxqvxc3o.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.7gqv0s0uyekoro4zp2p4o9dhd.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.7ietmj9160jc1vd3a3ge6mxob.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.7ms06s1m8oufytzilva5e83ef.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.7nbizqdtf6byus8xeh8zfgtxt.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.7pb9ta6k43w6oiz9ilhvv99x4.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.7pllkut4wrua7al3fcop0senb.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.7q0di49eyo8x86v850s4ky16u.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.7t2f1n5uk5g514xwj2chrs3d3.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.7tnls5c966cyl7ssp2ce2557s.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.7tv93erucm8q3uxlm7ez8eojq.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.7ugny8lqlkkmqsgz03sh4rkwe.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.7wcev45gv8qfglqzw6h3aikkl.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.7wm1eancjauhacao315w2b6zm.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.7zmz9l3lbycs5xiybz906h9lz.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.7zt7ab9wew49zjgziu5qo8b3i.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.82jofr9h421tle7f1idavilxv.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.8506phg4bbnr2hkxy05crzuff.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.8l9me1xn0ap2oc6plr60nzxki.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.8msus9ry4xc9beqm78y9w73bb.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.8p0lr829y08rt0wfz3e7ufty5.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.8pzg6rgnhv2iwx4mfe6e8ujfm.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.8v2senv1nydxa637482reuobf.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.8wk20gnw0e65h6bapzdq6pbqw.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.8wn5vwlg3ozoijnfvx40f4egg.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.8yqdotr55lrotoqs7qtrogseu.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.91reeh0aw38zsardb8px5bhap.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.91wjtgw6zowy2tdbojdxcyxjj.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.92pgv6ujd0scvulkxx18wjuk8.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.96759m8tlyf48wiqc9ubz6yc7.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.977igt7v83o0yqd4p7ylrbom4.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.98n1hgfs3fpzxtfrq1xgkxxdn.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.9ae0320p9g508dy68u5tuberk.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.9cdptdhv2f2hfj69zsq82cefs.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.9cmwvm6kiwyp7uqjq6eyj5sza.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.9el0fpphiy5p1ram0a5v54zzc.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.9f5okqzi9t5k5bh62muhy327g.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.9g1h4nnbvuerr72q55jck6c8g.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.9k3ynql0ha7tmt2yueyoyryzx.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.9kva73m1tr0f6w51zduz8d2kc.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.9ooptfg1qhglcpog14acsrri6.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.9pq814k0g2dzz32jg6xgmwid8.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.9r4r6mgd02nlfaq5q8ab1pvdq.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.9ub919fcn3fknpvvedophpqxk.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.9wpz0yz6b8zel2v3b39glp76z.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.9x3ec5qgp8ycpi53o4khhqmma.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.a0oc3sxez6ghypm6p58f1t0a0.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.a0ol8qplojxnroqivm7oumren.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.a0s7m19zyfspo1k6xv9y8qe0o.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.a8x7g8c7395252jmqh9ixb2mf.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.aicn0gyawbgjdy79pp0avaro6.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.aokdxj0uxhx22t33rc39a9bn3.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.aolx15l0z7jqua5woxil6y5v9.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.apd3l6klw6epao6vidu45sb7l.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.aq6hfrltt2v26jm329hi9hhe1.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.aqfnknqd6c7kbyhuv7upg2wqd.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.aqta4g5y8tyzzcezaoymmxpdt.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.atqxyjl8mcpvxh1s390baxj4a.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.atvebfd01r8g9w5maufyqghox.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.axf70003opmwuu8gi1dqect0d.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.axr3cex59dpvbjyselwb5hq65.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.b0trx6fs4wciozc0m6xzqlo7t.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.b29p4zwmvaj5roneb17a776rh.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.b3cf4eqbps1iji5chqw5rsghq.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.b3t7ktzvk8q9ji9ij6mw9iwxa.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.b51q4mry718lws2y75wghc3ma.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.b82gciast7875kjisvmv4iix9.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.baxk9d8xpo1wuwbvbczimext4.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.bc7axro1mdi7g463ve73vs38o.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.bdfnl1ldow3stdm59tu9kh867.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.bggsgm3uvvqq9a9lpmeji84mc.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.bl1wp3c78hpjpk9uo42k3tno6.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.bl2xkw5jov3bbodftguqr8vuc.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.bl3k8pxulzcsn9ma6ij4ak8c4.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.bo4yyofws8a9lcgetn1po0c53.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.bora6hxdvqu51h2ofz8cr9aa6.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.br6sx5nupk0orb9exg05yff8i.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.bsb6yidjsn642cqcznckwh3jy.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.bvfhu9cp07e3r2dl5vtn7n4no.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.c0bu1jvuvytmbb8dr0y3829fd.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.c2lzd2g1wj6rib633aje6b7jm.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.c9roe3rjpjulk9fo4d79i6pf0.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.cb2wdmv0r76bzeklqhn3xs2gh.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.cbk72wonpefduhx20wj1ox04k.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.ccaej8ui7l66h6vkj5r9pu9a7.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.cdq8heg22glxmahc1iky8jxrm.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.cfg41lhtswmz0lb9is2ropl2d.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.cgpm3r2o547rbkha6lul9atha.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.cj61rirlusz93b4pmbkdv4yrn.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.ck0j6of709kash82wyxlc7fjw.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.clxjdez8gpwxnynakn9pa3vph.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.cs52dh2hqmzzfn5pklsram77c.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.cteworhe6gvyeztw4kv9mgwse.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.cw7twturx5z6cdz80nybt8bk6.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.cywdakotxfojuczlk8a383s2j.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.czq77typhaixx2ctyqu0v8yc7.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.d0qvirjjdxxehqdt69y0ikl06.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.d5mt5ag6a7gny27umfejzsw7i.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.d8n2s99jo4k84tvwm68338xut.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.d9hksyf6i4in1trdhfpb4bm7m.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.db081n7n16v0pjww4we8khxk8.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.dcgqftygcq8tn9e4tjoym0x8d.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.ddk0tt51lu0pjeighmcih40ao.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.dgug9rhp1z2h54raghpn5fx34.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.djmi9rg5otjtbpcqr91i5fuph.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.dkdsvt9zf2ykaoero4lh2w0n9.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.dllwfcsyxvhegpkjxdurnc9bb.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.dr8fl8eqksv8h0tkgz0980qiw.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.du3eefxho36ky2zcw0grmn6s3.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.dzdmx5v1fxzhgy0sf7x7ymclw.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.dzi0lgnaemze6056y8ydstowd.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.dzrmephcctu7tzvcr7a100vsn.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.e2kxmqnhnlzhs2pgt5ji0vf50.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.e53pcimog2t1o1nmhawl8mjy0.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.e76ovo57x6812mmlsqztg2zl2.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.e8z8x9204qyg6s7n1xw2f1ppy.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.ebi29xc1gez131z8qpkrt6d6a.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.econx3eca2os9ewp1fmu0vzu5.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.efa8mbzf2amzfdqxozipfhwq6.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.ei9fs07rpufhilgf2ldy40rgp.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.ej5uos58yxobee2kx9duabtq2.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.ejfhz58aewp9874ct79ezv003.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.en9rgxra6hvxp99ohf10cfqpi.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.enkzs07xhag18v87o82dmte32.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.enmdubbbgu7bcdzubl6mdumdq.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.epal6iftqyll4aq7ub8t9ppo2.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.etzrxzv1044nvyzy5v7k2j9wg.rcgu.o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.cvueeaeofp474dgknklh84orc.rcgu.o" "-Wl,--as-needed" "-Wl,-Bstatic" "/home/odin/cryptography/target/debug/deps/libcryptography_cffi-ffdf869c0f55b4d2.rlib" "/home/odin/cryptography/target/debug/deps/libcryptography_keepalive-8b7e8fda118b638e.rlib" "/home/odin/cryptography/target/debug/deps/libcryptography_openssl-6d954b11a87616f7.rlib" "/home/odin/cryptography/target/debug/deps/libpem-55bbe6770f384531.rlib" "/home/odin/cryptography/target/debug/deps/libbase64-3c6c62a2f6b929ed.rlib" "/home/odin/cryptography/target/debug/deps/libself_cell-695bc1da0f9a8de6.rlib" "/home/odin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libtest-a989982ba63bcd62.rlib" "/home/odin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libgetopts-3825e34b685b08d8.rlib" "/home/odin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunicode_width-f069f18ea6e4e9b7.rlib" "/home/odin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_std-1959fbeea9d98f5c.rlib" "/home/odin/cryptography/target/debug/deps/libcryptography_x509_verification-c5b5d79903835b1b.rlib" "/home/odin/cryptography/target/debug/deps/libcryptography_key_parsing-f5bdd609034a4b93.rlib" "/home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib" "/home/odin/cryptography/target/debug/deps/libmemoffset-fdb18bf72526c627.rlib" "/home/odin/cryptography/target/debug/deps/libpyo3_ffi-995111e9368fd90e.rlib" "/home/odin/cryptography/target/debug/deps/libunindent-03d2ce4aaafbc59e.rlib" "/home/odin/cryptography/target/debug/deps/libcryptography_x509-2ba87035f98dae8b.rlib" "/home/odin/cryptography/target/debug/deps/libasn1-7868bb5d48b808fc.rlib" "/home/odin/cryptography/target/debug/deps/libitoa-e6f86edc0590ab38.rlib" "/home/odin/cryptography/target/debug/deps/libopenssl-47f102aa2d7a471a.rlib" "/home/odin/cryptography/target/debug/deps/libonce_cell-81fced44dd10fca0.rlib" "/home/odin/cryptography/target/debug/deps/libbitflags-841c437b5900c723.rlib" "/home/odin/cryptography/target/debug/deps/libforeign_types-4853df7e7527f248.rlib" "/home/odin/cryptography/target/debug/deps/libforeign_types_shared-739f192f81e59559.rlib" "/home/odin/cryptography/target/debug/deps/libcfg_if-f331783c409103a0.rlib" "/home/odin/cryptography/target/debug/deps/libopenssl_sys-c0014c2774c12203.rlib" "/home/odin/cryptography/target/debug/deps/liblibc-853e8d1a61570ec1.rlib" "/home/odin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-22be60875a4ac8d7.rlib" "/home/odin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-4b832a03827ff95e.rlib" "/home/odin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libobject-a25e7f31e2204719.rlib" "/home/odin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libmemchr-1f1858edbb50ccb5.rlib" "/home/odin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libaddr2line-1319b75889377807.rlib" "/home/odin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libgimli-c9972d847170eb93.rlib" "/home/odin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-0868a75d0b80f801.rlib" "/home/odin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd_detect-f4254a923640cbea.rlib" "/home/odin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libhashbrown-f21de9b2e2c92770.rlib" "/home/odin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_alloc-cf868f78468d45dd.rlib" "/home/odin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libminiz_oxide-cce9a55233783113.rlib" "/home/odin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libadler-6ef1f692f91f321e.rlib" "/home/odin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-d2b4a3bc57672e2c.rlib" "/home/odin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-9d8e4e6f4cb45592.rlib" "/home/odin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-858b7338441a56b6.rlib" "/home/odin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-d182631d04e1eed2.rlib" "/home/odin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_core-7874c355ab5ed077.rlib" "/home/odin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-46b25da62cc69443.rlib" "/home/odin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-c71612932829263c.rlib" "-Wl,-Bdynamic" "-lssl" "-lcrypto" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/home/odin/cryptography/target/debug/build/cryptography-cffi-a29230901072c31a/out" "-L" "/home/odin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-nodefaultlibs"
  = note: /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.0buudgh3lvdabp8l5y16a5oxw.rcgu.o: in function `<pyo3::exceptions::PyMemoryError as pyo3::type_object::PyTypeInfo>::type_object_raw::{{closure}}':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/exceptions.rs:281: undefined reference to `PyExc_MemoryError'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.1y9ier7xay6y9y1gxtb9fl7wy.rcgu.o: in function `<pyo3::pycell::impl_::PyClassObjectBase<U> as pyo3::pycell::impl_::PyClassObjectLayout<T>>::tp_dealloc':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/pycell/impl_.rs:244: undefined reference to `PyBaseObject_Type'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.42w1svf6tmnmrzmzanxnlaa1r.rcgu.o: in function `pyo3_ffi::boolobject::Py_True':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/boolobject.rs:41: undefined reference to `_Py_TrueStruct'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.42w1svf6tmnmrzmzanxnlaa1r.rcgu.o: in function `pyo3_ffi::boolobject::Py_False':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/boolobject.rs:33: undefined reference to `_Py_FalseStruct'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.4c8662cyx95agmadty2fbs8kv.rcgu.o: in function `pyo3::impl_::pyclass::tp_dealloc_with_gc':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/impl_/pyclass.rs:1154: undefined reference to `PyObject_GC_UnTrack'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.4c8662cyx95agmadty2fbs8kv.rcgu.o: in function `pyo3::impl_::pyclass::tp_dealloc_with_gc':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/impl_/pyclass.rs:1154: undefined reference to `PyObject_GC_UnTrack'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.4c8662cyx95agmadty2fbs8kv.rcgu.o: in function `pyo3::impl_::pyclass::tp_dealloc_with_gc':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/impl_/pyclass.rs:1154: undefined reference to `PyObject_GC_UnTrack'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.4c8662cyx95agmadty2fbs8kv.rcgu.o: in function `pyo3::impl_::pyclass::tp_dealloc_with_gc':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/impl_/pyclass.rs:1154: undefined reference to `PyObject_GC_UnTrack'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.4c8662cyx95agmadty2fbs8kv.rcgu.o: in function `pyo3::impl_::pyclass::tp_dealloc_with_gc':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/impl_/pyclass.rs:1154: undefined reference to `PyObject_GC_UnTrack'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.4c8662cyx95agmadty2fbs8kv.rcgu.o:/home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/impl_/pyclass.rs:1154: more undefined references to `PyObject_GC_UnTrack' follow
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.4j8a56mk2u22gxopfcr6u18a5.rcgu.o: in function `<pyo3::instance::Bound<pyo3::types::any::PyAny> as pyo3::types::any::PyAnyMethods>::is_instance':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/any.rs:1488: undefined reference to `PyObject_IsInstance'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.62kkucvopwu8r1ntr0vjivp9s.rcgu.o: in function `<pyo3::types::dict::borrowed_iter::BorrowedDictIter as core::iter::traits::iterator::Iterator>::next':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/dict.rs:699: undefined reference to `PyDict_Next'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.67849d7facsfdakysq2bid9mr.rcgu.o: in function `pyo3_ffi::object::Py_NotImplemented':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:881: undefined reference to `_Py_NotImplementedStruct'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.67849d7facsfdakysq2bid9mr.rcgu.o: in function `pyo3_ffi::object::PyObject_TypeCheck':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:379: undefined reference to `PyType_IsSubtype'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.67849d7facsfdakysq2bid9mr.rcgu.o: in function `pyo3_ffi::object::Py_None':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:852: undefined reference to `_Py_NoneStruct'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.7dddqfgdq0estyfktmx17v3wz.rcgu.o: in function `pyo3_ffi::object::Py_DECREF':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:697: undefined reference to `_Py_DecRef'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:697: undefined reference to `_Py_DecRef'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:697: undefined reference to `_Py_DecRef'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:697: undefined reference to `_Py_DecRef'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:697: undefined reference to `_Py_DecRef'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.7dddqfgdq0estyfktmx17v3wz.rcgu.o:/home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:697: more undefined references to `_Py_DecRef' follow
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.apd3l6klw6epao6vidu45sb7l.rcgu.o: in function `<pyo3::internal::get_slot::Slot<_> as pyo3::internal::get_slot::GetSlotImpl>::get_slot':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/internal/get_slot.rs:115: undefined reference to `PyType_GetSlot'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.bo4yyofws8a9lcgetn1po0c53.rcgu.o: in function `pyo3::err::PyErr::is_instance':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/err/mod.rs:526: undefined reference to `PyErr_GivenExceptionMatches'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.bo4yyofws8a9lcgetn1po0c53.rcgu.o: in function `pyo3::err::PyErr::write_unraisable':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/err/mod.rs:583: undefined reference to `PyErr_WriteUnraisable'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.bo4yyofws8a9lcgetn1po0c53.rcgu.o: in function `pyo3_ffi::compat::py_3_9::PyObject_CallMethodNoArgs':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/compat/py_3_9.rs:19: undefined reference to `PyObject_CallMethodObjArgs'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.bsb6yidjsn642cqcznckwh3jy.rcgu.o: in function `pyo3_ffi::object::Py_INCREF':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:633: undefined reference to `_Py_IncRef'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:633: undefined reference to `_Py_IncRef'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:633: undefined reference to `_Py_IncRef'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:633: undefined reference to `_Py_IncRef'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:633: undefined reference to `_Py_IncRef'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.bsb6yidjsn642cqcznckwh3jy.rcgu.o:/home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:633: more undefined references to `_Py_IncRef' follow
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.e53pcimog2t1o1nmhawl8mjy0.rcgu.o: in function `<pyo3::types::any::PyAny as pyo3::type_object::PyTypeInfo>::type_object_raw::{{closure}}':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/mod.rs:149: undefined reference to `PyBaseObject_Type'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.enkzs07xhag18v87o82dmte32.rcgu.o: in function `pyo3::types::bytes::PyBytes::new_with':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/bytes.rs:104: undefined reference to `PyBytes_FromStringAndSize'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/bytes.rs:107: undefined reference to `PyBytes_AsString'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.enkzs07xhag18v87o82dmte32.rcgu.o: in function `pyo3::types::bytes::PyBytes::new_with':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/bytes.rs:104: undefined reference to `PyBytes_FromStringAndSize'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/bytes.rs:107: undefined reference to `PyBytes_AsString'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.enkzs07xhag18v87o82dmte32.rcgu.o: in function `pyo3::types::bytes::PyBytes::new_with':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/bytes.rs:104: undefined reference to `PyBytes_FromStringAndSize'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/bytes.rs:107: undefined reference to `PyBytes_AsString'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.enkzs07xhag18v87o82dmte32.rcgu.o: in function `pyo3::types::bytes::PyBytes::new_with':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/bytes.rs:104: undefined reference to `PyBytes_FromStringAndSize'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/bytes.rs:107: undefined reference to `PyBytes_AsString'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.enkzs07xhag18v87o82dmte32.rcgu.o: in function `pyo3::types::bytes::PyBytes::new_with':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/bytes.rs:104: undefined reference to `PyBytes_FromStringAndSize'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/bytes.rs:107: undefined reference to `PyBytes_AsString'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.enkzs07xhag18v87o82dmte32.rcgu.o: in function `pyo3::types::bytes::PyBytes::new_with':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/bytes.rs:104: undefined reference to `PyBytes_FromStringAndSize'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/bytes.rs:107: undefined reference to `PyBytes_AsString'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.enkzs07xhag18v87o82dmte32.rcgu.o: in function `pyo3::types::bytes::PyBytes::new_with':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/bytes.rs:104: undefined reference to `PyBytes_FromStringAndSize'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/bytes.rs:107: undefined reference to `PyBytes_AsString'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.enkzs07xhag18v87o82dmte32.rcgu.o: in function `pyo3::types::bytes::PyBytes::new_with':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/bytes.rs:104: undefined reference to `PyBytes_FromStringAndSize'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/bytes.rs:107: undefined reference to `PyBytes_AsString'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/cryptography_rust-a5be7737693cabdb.enkzs07xhag18v87o82dmte32.rcgu.o: in function `pyo3::types::bytes::PyBytes::new_with':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/bytes.rs:104: undefined reference to `PyBytes_FromStringAndSize'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/bytes.rs:107: undefined reference to `PyBytes_AsString'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.00.rcgu.o): in function `pyo3_ffi::object::Py_DECREF':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:697: undefined reference to `_Py_DecRef'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:697: undefined reference to `_Py_DecRef'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:697: undefined reference to `_Py_DecRef'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:697: undefined reference to `_Py_DecRef'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:697: undefined reference to `_Py_DecRef'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.00.rcgu.o):/home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:697: more undefined references to `_Py_DecRef' follow
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.00.rcgu.o): in function `pyo3_ffi::object::Py_INCREF':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:633: undefined reference to `_Py_IncRef'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:633: undefined reference to `_Py_IncRef'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:633: undefined reference to `_Py_IncRef'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:633: undefined reference to `_Py_IncRef'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:633: undefined reference to `_Py_IncRef'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.00.rcgu.o):/home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:633: more undefined references to `_Py_IncRef' follow
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.00.rcgu.o): in function `<pyo3::instance::Bound<pyo3::types::any::PyAny> as pyo3::types::any::PyAnyMethods>::call0':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/any.rs:1235: undefined reference to `PyObject_CallNoArgs'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.00.rcgu.o): in function `<pyo3::instance::Bound<pyo3::types::any::PyAny> as pyo3::types::any::PyAnyMethods>::is_truthy':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/any.rs:1282: undefined reference to `PyObject_IsTrue'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.00.rcgu.o): in function `<pyo3::instance::Bound<pyo3::types::any::PyAny> as pyo3::types::any::PyAnyMethods>::repr':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/any.rs:1452: undefined reference to `PyObject_Repr'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.00.rcgu.o): in function `<pyo3::instance::Bound<pyo3::types::any::PyAny> as pyo3::types::any::PyAnyMethods>::str':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/any.rs:1460: undefined reference to `PyObject_Str'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.00.rcgu.o): in function `<pyo3::instance::Bound<pyo3::types::any::PyAny> as pyo3::types::any::PyAnyMethods>::hash':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/any.rs:1467: undefined reference to `PyObject_Hash'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.00.rcgu.o): in function `<pyo3::instance::Bound<pyo3::types::any::PyAny> as pyo3::types::any::PyAnyMethods>::len':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/any.rs:1473: undefined reference to `PyObject_Size'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.00.rcgu.o): in function `<pyo3::instance::Bound<pyo3::types::bytearray::PyByteArray> as pyo3::types::bytearray::PyByteArrayMethods>::len':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/bytearray.rs:277: undefined reference to `PyByteArray_Size'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.00.rcgu.o): in function `pyo3::types::bytearray::<impl pyo3::instance::Borrowed<pyo3::types::bytearray::PyByteArray>>::data':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/bytearray.rs:315: undefined reference to `PyByteArray_AsString'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.00.rcgu.o): in function `pyo3::types::bytes::<impl pyo3::instance::Borrowed<pyo3::types::bytes::PyBytes>>::as_bytes':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/bytes.rs:181: undefined reference to `PyBytes_AsString'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/bytes.rs:182: undefined reference to `PyBytes_Size'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.00.rcgu.o): in function `pyo3::types::string::<impl pyo3::instance::Borrowed<pyo3::types::string::PyString>>::to_str':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/string.rs:324: undefined reference to `PyUnicode_AsUTF8AndSize'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.00.rcgu.o): in function `pyo3::types::string::<impl pyo3::instance::Borrowed<pyo3::types::string::PyString>>::to_string_lossy':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/string.rs:363: undefined reference to `PyUnicode_AsEncodedString'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.00.rcgu.o): in function `<pyo3::instance::Bound<pyo3::types::tuple::PyTuple> as pyo3::types::tuple::PyTupleMethods>::len':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/tuple.rs:238: undefined reference to `PyTuple_Size'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.00.rcgu.o): in function `pyo3::types::tuple::<impl pyo3::instance::Borrowed<pyo3::types::tuple::PyTuple>>::get_borrowed_item':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/tuple.rs:324: undefined reference to `PyTuple_GetItem'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.00.rcgu.o): in function `<pyo3::instance::Bound<pyo3::types::typeobject::PyType> as pyo3::types::typeobject::PyTypeMethods>::name':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/typeobject.rs:119: undefined reference to `PyType_GetName'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.00.rcgu.o): in function `<pyo3::instance::Bound<pyo3::types::typeobject::PyType> as pyo3::types::typeobject::PyTypeMethods>::qualname':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/typeobject.rs:138: undefined reference to `PyType_GetQualName'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.05.rcgu.o): in function `pyo3::conversions::std::num::<impl pyo3::conversion::IntoPyObject for i32>::into_pyobject':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/conversions/std/num.rs:191: undefined reference to `PyLong_FromLong'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.05.rcgu.o): in function `pyo3::conversions::std::num::<impl pyo3::conversion::FromPyObject for i32>::extract_bound':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/conversions/std/num.rs:92: undefined reference to `PyLong_AsLong'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.05.rcgu.o): in function `pyo3::conversions::std::num::<impl pyo3::conversion::IntoPyObject for u32>::into_pyobject':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/conversions/std/num.rs:191: undefined reference to `PyLong_FromLong'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.05.rcgu.o): in function `pyo3::conversions::std::num::<impl pyo3::conversion::IntoPyObject for isize>::into_pyobject':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/conversions/std/num.rs:191: undefined reference to `PyLong_FromLong'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.05.rcgu.o): in function `pyo3::conversions::std::num::<impl pyo3::conversion::IntoPyObject for u64>::into_pyobject':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/conversions/std/num.rs:128: undefined reference to `PyLong_FromUnsignedLongLong'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.05.rcgu.o): in function `pyo3::conversions::std::num::<impl pyo3::conversion::FromPyObject for u64>::extract_bound':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/conversions/std/num.rs:95: undefined reference to `PyLong_AsUnsignedLongLong'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/conversions/std/num.rs:98: undefined reference to `PyNumber_Index'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/conversions/std/num.rs:99: undefined reference to `PyLong_AsUnsignedLongLong'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.07.rcgu.o): in function `pyo3::err::PyErr::into_value':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/err/mod.rs:318: undefined reference to `PyException_SetTraceback'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.07.rcgu.o): in function `pyo3::err::PyErr::print_panic_and_unwind':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/err/mod.rs:382: undefined reference to `PyErr_PrintEx'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.07.rcgu.o): in function `pyo3::err::PyErr::new_type':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/err/mod.rs:444: undefined reference to `PyErr_NewExceptionWithDoc'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.07.rcgu.o): in function `pyo3::err::PyErr::print':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/err/mod.rs:500: undefined reference to `PyErr_PrintEx'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.07.rcgu.o): in function `pyo3::err::PyErr::write_unraisable':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/err/mod.rs:583: undefined reference to `PyErr_WriteUnraisable'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.07.rcgu.o): in function `pyo3::err::PyErr::warn':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/err/mod.rs:622: undefined reference to `PyErr_WarnEx'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.07.rcgu.o): in function `pyo3::err::PyErr::cause':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/err/mod.rs:732: undefined reference to `PyException_GetCause'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.07.rcgu.o): in function `pyo3::err::PyErr::set_cause':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/err/mod.rs:749: undefined reference to `PyException_SetCause'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.07.rcgu.o): in function `pyo3::err::panic_after_error':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/err/mod.rs:937: undefined reference to `PyErr_Print'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.07.rcgu.o): in function `<pyo3::types::num::PyInt as pyo3::type_object::PyTypeInfo>::type_object_raw::{{closure}}':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/mod.rs:149: undefined reference to `PyLong_Type'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.08.rcgu.o): in function `pyo3::types::module::PyModule::import':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/module.rs:96: undefined reference to `PyImport_Import'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.10.rcgu.o): in function `pyo3::pyclass::create_type_object::PyTypeBuilder::finalize_methods_and_properties':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/pyclass/create_type_object.rs:264: undefined reference to `PyObject_GenericGetDict'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/pyclass/create_type_object.rs:265: undefined reference to `PyObject_GenericSetDict'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.10.rcgu.o): in function `pyo3::pyclass::create_type_object::PyTypeBuilder::build':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/pyclass/create_type_object.rs:493: undefined reference to `PyType_FromSpec'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.10.rcgu.o): in function `pyo3::types::tuple::PyTuple::empty':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/tuple.rs:125: undefined reference to `PyTuple_New'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.10.rcgu.o): in function `pyo3::types::tuple::array_into_tuple':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/tuple.rs:603: undefined reference to `PyTuple_New'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/tuple.rs:609: undefined reference to `PyTuple_SetItem'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.10.rcgu.o): in function `pyo3::types::tuple::array_into_tuple':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/tuple.rs:603: undefined reference to `PyTuple_New'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/tuple.rs:609: undefined reference to `PyTuple_SetItem'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.10.rcgu.o): in function `pyo3::types::tuple::array_into_tuple':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/tuple.rs:603: undefined reference to `PyTuple_New'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/tuple.rs:609: undefined reference to `PyTuple_SetItem'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.11.rcgu.o): in function `pyo3::impl_::pyclass::get_sequence_item_from_mapping':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/impl_/pyclass.rs:1163: undefined reference to `PyLong_FromSsize_t'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/impl_/pyclass.rs:1167: undefined reference to `PyObject_GetItem'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.11.rcgu.o): in function `pyo3_ffi::object::Py_DECREF':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:697: undefined reference to `_Py_DecRef'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.11.rcgu.o): in function `pyo3::impl_::pyclass::assign_sequence_item_from_mapping':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/impl_/pyclass.rs:1177: undefined reference to `PyLong_FromSsize_t'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/impl_/pyclass.rs:1184: undefined reference to `PyObject_SetItem'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/impl_/pyclass.rs:1182: undefined reference to `PyObject_DelItem'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.11.rcgu.o): in function `pyo3_ffi::object::Py_DECREF':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:697: undefined reference to `_Py_DecRef'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.12.rcgu.o): in function `pyo3_ffi::compat::py_3_13::PyDict_GetItemRef':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/compat/py_3_13.rs:12: undefined reference to `PyDict_GetItemWithError'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/compat/py_3_13.rs:14: undefined reference to `Py_NewRef'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/compat/py_3_13.rs:18: undefined reference to `PyErr_Occurred'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.12.rcgu.o): in function `pyo3::err::err_state::PyErrStateNormalized::new':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/err/err_state.rs:146: undefined reference to `PyException_GetTraceback'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.12.rcgu.o): in function `pyo3::err::err_state::PyErrStateNormalized::take':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/err/err_state.rs:199: undefined reference to `PyErr_Fetch'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/err/err_state.rs:203: undefined reference to `PyErr_NormalizeException'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.12.rcgu.o): in function `pyo3::err::err_state::PyErrStateInner::restore':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/err/err_state.rs:306: undefined reference to `PyErr_Restore'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.12.rcgu.o): in function `pyo3::err::err_state::lazy_into_normalized_ffi_tuple':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/err/err_state.rs:332: undefined reference to `PyErr_Fetch'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/err/err_state.rs:333: undefined reference to `PyErr_NormalizeException'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.12.rcgu.o): in function `pyo3::err::err_state::raise_lazy':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/err/err_state.rs:349: undefined reference to `PyErr_SetString'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/err/err_state.rs:354: undefined reference to `PyErr_SetObject'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.12.rcgu.o): in function `<pyo3::instance::Bound<pyo3::types::any::PyAny> as pyo3::types::any::PyAnyMethods>::getattr::inner':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/any.rs:963: undefined reference to `PyObject_GetAttr'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.12.rcgu.o): in function `<pyo3::instance::Bound<pyo3::types::any::PyAny> as pyo3::types::any::PyAnyMethods>::rich_compare::inner':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/any.rs:1057: undefined reference to `PyObject_RichCompare'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.12.rcgu.o): in function `<pyo3::instance::Bound<pyo3::types::any::PyAny> as pyo3::types::any::PyAnyMethods>::pow::inner':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/any.rs:1193: undefined reference to `PyNumber_Power'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.12.rcgu.o): in function `<pyo3::instance::Bound<pyo3::types::any::PyAny> as pyo3::types::any::PyAnyMethods>::call::inner':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/any.rs:1220: undefined reference to `PyObject_Call'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.12.rcgu.o): in function `pyo3::types::dict::PyDict::new':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/dict.rs:67: undefined reference to `PyDict_New'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.12.rcgu.o): in function `<pyo3::instance::Bound<pyo3::types::dict::PyDict> as pyo3::types::dict::PyDictMethods>::set_item::inner':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/dict.rs:298: undefined reference to `PyDict_SetItem'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.12.rcgu.o): in function `pyo3::types::dict::dict_len':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/dict.rs:408: undefined reference to `PyDict_Size'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.12.rcgu.o): in function `pyo3::types::list::PyList::empty':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/list.rs:132: undefined reference to `PyList_New'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.12.rcgu.o): in function `<pyo3::instance::Bound<pyo3::types::list::PyList> as pyo3::types::list::PyListMethods>::append::inner':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/list.rs:380: undefined reference to `PyList_Append'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.12.rcgu.o): in function `<pyo3::instance::Bound<pyo3::types::any::PyAny> as pyo3::types::any::PyAnyMethods>::mul::inner':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/any.rs:919: undefined reference to `PyNumber_Multiply'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.12.rcgu.o): in function `<pyo3::instance::Bound<pyo3::types::any::PyAny> as pyo3::types::any::PyAnyMethods>::bitand::inner':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/any.rs:919: undefined reference to `PyNumber_And'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.12.rcgu.o): in function `<pyo3::types::dict::PyDict as pyo3::type_object::PyTypeInfo>::type_object_raw::{{closure}}':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/mod.rs:149: undefined reference to `PyDict_Type'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.13.rcgu.o): in function `pyo3::impl_::pyclass::lazy_type_object::initialize_tp_dict':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/impl_/pyclass/lazy_type_object.rs:216: undefined reference to `PyObject_SetAttrString'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.13.rcgu.o): in function `<pyo3::types::boolobject::PyBool as pyo3::type_object::PyTypeInfo>::type_object_raw::{{closure}}':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/mod.rs:149: undefined reference to `PyBool_Type'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.14.rcgu.o): in function `<pyo3::impl_::pyclass_init::PyNativeTypeInitializer<T> as pyo3::impl_::pyclass_init::PyObjectInit<T>>::into_new_object::inner':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/impl_/pyclass_init.rs:41: undefined reference to `PyBaseObject_Type'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/impl_/pyclass_init.rs:48: undefined reference to `PyType_GenericAlloc'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.14.rcgu.o): in function `pyo3::types::bytes::PyBytes::new':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/bytes.rs:61: undefined reference to `PyBytes_FromStringAndSize'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.14.rcgu.o): in function `pyo3::types::string::PyString::new':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/string.rs:171: undefined reference to `PyUnicode_FromStringAndSize'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.14.rcgu.o): in function `pyo3::types::string::PyString::intern':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/string.rs:196: undefined reference to `PyUnicode_FromStringAndSize'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/string.rs:198: undefined reference to `PyUnicode_InternInPlace'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.14.rcgu.o): in function `<pyo3::internal::get_slot::Slot<_> as pyo3::internal::get_slot::GetSlotImpl>::get_slot':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/internal/get_slot.rs:115: undefined reference to `PyType_GetSlot'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.14.rcgu.o): in function `<pyo3::internal::get_slot::Slot<_> as pyo3::internal::get_slot::GetSlotImpl>::get_slot':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/internal/get_slot.rs:115: undefined reference to `PyType_GetSlot'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.14.rcgu.o): in function `<pyo3::internal::get_slot::Slot<_> as pyo3::internal::get_slot::GetSlotImpl>::get_slot':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/internal/get_slot.rs:115: undefined reference to `PyType_GetSlot'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.14.rcgu.o): in function `<pyo3::internal::get_slot::Slot<_> as pyo3::internal::get_slot::GetSlotImpl>::get_slot':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/internal/get_slot.rs:115: undefined reference to `PyType_GetSlot'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.14.rcgu.o): in function `<pyo3::exceptions::PyBaseException as pyo3::type_object::PyTypeInfo>::type_object_raw::{{closure}}':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/exceptions.rs:281: undefined reference to `PyExc_BaseException'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.14.rcgu.o): in function `<pyo3::exceptions::PyOverflowError as pyo3::type_object::PyTypeInfo>::type_object_raw::{{closure}}':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/exceptions.rs:281: undefined reference to `PyExc_OverflowError'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.14.rcgu.o): in function `<pyo3::exceptions::PyRuntimeError as pyo3::type_object::PyTypeInfo>::type_object_raw::{{closure}}':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/exceptions.rs:281: undefined reference to `PyExc_RuntimeError'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.14.rcgu.o): in function `<pyo3::exceptions::PyTypeError as pyo3::type_object::PyTypeInfo>::type_object_raw::{{closure}}':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/exceptions.rs:281: undefined reference to `PyExc_TypeError'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.14.rcgu.o): in function `<pyo3::exceptions::PyValueError as pyo3::type_object::PyTypeInfo>::type_object_raw::{{closure}}':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/exceptions.rs:281: undefined reference to `PyExc_ValueError'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.14.rcgu.o): in function `<pyo3::types::bytearray::PyByteArray as pyo3::type_object::PyTypeInfo>::type_object_raw::{{closure}}':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/mod.rs:149: undefined reference to `PyByteArray_Type'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.14.rcgu.o): in function `<pyo3::types::bytes::PyBytes as pyo3::type_object::PyTypeInfo>::type_object_raw::{{closure}}':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/mod.rs:149: undefined reference to `PyBytes_Type'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.14.rcgu.o): in function `<pyo3::types::string::PyString as pyo3::type_object::PyTypeInfo>::type_object_raw::{{closure}}':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/mod.rs:149: undefined reference to `PyUnicode_Type'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.14.rcgu.o): in function `<pyo3::types::typeobject::PyType as pyo3::type_object::PyTypeInfo>::type_object_raw::{{closure}}':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/types/mod.rs:149: undefined reference to `PyType_Type'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.15.rcgu.o): in function `pyo3_ffi::boolobject::Py_True':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/boolobject.rs:41: undefined reference to `_Py_TrueStruct'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.15.rcgu.o): in function `pyo3_ffi::object::PyType_HasFeature':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:907: undefined reference to `PyType_GetFlags'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.15.rcgu.o): in function `pyo3_ffi::object::PyObject_TypeCheck':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:379: undefined reference to `PyType_IsSubtype'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.15.rcgu.o): in function `pyo3_ffi::object::Py_None':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:852: undefined reference to `_Py_NoneStruct'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.15.rcgu.o): in function `pyo3::gil::prepare_freethreaded_python::{{closure}}':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/gil.rs:68: undefined reference to `Py_IsInitialized'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/gil.rs:69: undefined reference to `Py_InitializeEx'
          /usr/bin/ld: /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/gil.rs:72: undefined reference to `PyEval_SaveThread'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.15.rcgu.o): in function `pyo3::gil::GILGuard::acquire_unchecked':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/gil.rs:207: undefined reference to `PyGILState_Ensure'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.15.rcgu.o): in function `<pyo3::gil::GILGuard as core::ops::drop::Drop>::drop':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/gil.rs:242: undefined reference to `PyGILState_Release'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.15.rcgu.o): in function `pyo3_ffi::object::Py_DECREF':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:697: undefined reference to `_Py_DecRef'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.15.rcgu.o): in function `pyo3::gil::SuspendGIL::new':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/gil.rs:303: undefined reference to `PyEval_SaveThread'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.15.rcgu.o): in function `<pyo3::gil::SuspendGIL as core::ops::drop::Drop>::drop':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/gil.rs:313: undefined reference to `PyEval_RestoreThread'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.15.rcgu.o): in function `pyo3_ffi::object::Py_DECREF':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-ffi-0.23.2/src/object.rs:697: undefined reference to `_Py_DecRef'
          /usr/bin/ld: /home/odin/cryptography/target/debug/deps/libpyo3-69837badf7fea025.rlib(pyo3-69837badf7fea025.pyo3.9637b03040e616b-cgu.15.rcgu.o): in function `pyo3::gil::GILGuard::acquire::{{closure}}':
          /home/odin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.23.2/src/gil.rs:182: undefined reference to `Py_IsInitialized'
          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#rustc-link-lib)

error: could not compile `cryptography-rust` (lib test) due to 1 previous error

I did install python development libraries with apt install python3-dev. So I don't quite see why those Python functions should be missing.

@alex
Copy link
Member

alex commented Nov 29, 2024

If you want to run cargo test you need: cargo test --no-default-features --all. You can also use nox to run the various environments. nox -e local is generally used for running all tests locally.

It's interesting that 43.x works but 44.x doesn't. When you install 44.x, which .whl is being downloaded?

@reaperhulk
Copy link
Member

I built a new Debian 12.8 x86_64 emulated VM on an M1 Max using the latest UTM and I can't replicate this error.

@odkr
Copy link
Author

odkr commented Nov 29, 2024

If you want to run cargo test you need: cargo test --no-default-features --all. You can also use nox to run the various environments. nox -e local is generally used for running all tests locally.

nox -e local passes 🤷.

It's interesting that 43.x works but 44.x doesn't. When you install 44.x, which .whl is being downloaded?

cryptography-44.0.0-cp39-abi3-manylinux_2_34_x86_64.whl

@odkr
Copy link
Author

odkr commented Nov 29, 2024

I built a new Debian 12.8 x86_64 emulated VM on an M1 Max using the latest UTM and I can't replicate this error.

My version of UTM was indeed outdated. I upgraded it and can no longer reproduce the issue.

What confuses me is that the module cryptography.hazmat.bindings._rust.openssl would seem to have disappeared:

$ python3 -mvenv cryptography-test
$ . cryptography-test/bin/activate
$ pip install --upgrade pip
[...]
# Same wheel
$ pip install cryptography
Collecting cryptography
  Using cached cryptography-44.0.0-cp39-abi3-manylinux_2_34_x86_64.whl (4.2 MB)
Collecting cffi>=1.12
  Using cached cffi-1.17.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (467 kB)
Collecting pycparser
  Using cached pycparser-2.22-py3-none-any.whl (117 kB)
Installing collected packages: pycparser, cffi, cryptography
Successfully installed cffi-1.17.1 cryptography-44.0.0 pycparser-2.22
$ python -mcryptography.hazmat.bindings._rust.openssl
/home/odin/cryptography-test/bin/python: Error while finding module specification for 'cryptography.hazmat.bindings._rust.openssl' (ModuleNotFoundError: __path__ attribute not found on 'cryptography.hazmat.bindings._rust' while trying to find 'cryptography.hazmat.bindings._rust.openssl')
$ python -mpdb cryptography-test/lib/python3.11/site-packages/cryptography/hazmat/bindings/_rust/openssl/__init__.pyi
> /home/odin/cryptography-test/lib/python3.11/site-packages/cryptography/hazmat/bindings/_rust/openssl/__init__.pyi(5)<module>()
-> import typing
(Pdb) n
> /home/odin/cryptography-test/lib/python3.11/site-packages/cryptography/hazmat/bindings/_rust/openssl/__init__.pyi(7)<module>()
-> from cryptography.hazmat.bindings._rust.openssl import (
(Pdb)
ModuleNotFoundError: No module named 'cryptography.hazmat.bindings._rust.openssl'; 'cryptography.hazmat.bindings._rust' is not a package
> /home/odin/cryptography-test/lib/python3.11/site-packages/cryptography/hazmat/bindings/_rust/openssl/__init__.pyi(7)<module>()
-> from cryptography.hazmat.bindings._rust.openssl import (
(Pdb)

Thanks for having looked into this!

@odkr odkr closed this as completed Nov 29, 2024
@NotStatilko
Copy link

NotStatilko commented Dec 11, 2024

Hi guys.

It's interesting, but me too encounter the Illegal instruction with specifically v44.0.0 on Debian 12 (not VM, regular x86_64 machine — 6.1.0-28-amd64 x86_64 GNU/Linux). How can I possibly fix that?

image

@reaperhulk
Copy link
Member

Could you give us some details on the processor model? Pasting the output of cat /proc/cpuinfo would probably be enough data.

@NotStatilko
Copy link

Could you give us some details on the processor model? Pasting the output of cat /proc/cpuinfo would probably be enough data.

Hi! No problem.

processor	: 0
vendor_id	: AuthenticAMD
cpu family	: 16
model		: 5
model name	: AMD Athlon(tm) II X3 455 Processor
stepping	: 3
microcode	: 0x10000c8
cpu MHz		: 3300.000
cache size	: 512 KB
physical id	: 0
siblings	: 3
core id		: 0
cpu cores	: 3
apicid		: 0
initial apicid	: 0
fpu		: yes
fpu_exception	: yes
cpuid level	: 5
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc rep_good nopl nonstop_tsc cpuid extd_apicid pni monitor cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt hw_pstate vmmcall npt lbrv svm_lock nrip_save
bugs		: tlb_mmatch fxsave_leak sysret_ss_attrs null_seg spectre_v1 spectre_v2
bogomips	: 6630.03
TLB size	: 1024 4K pages
clflush size	: 64
cache_alignment	: 64
address sizes	: 48 bits physical, 48 bits virtual
power management: ts ttp tm stc 100mhzsteps hwpstate

processor	: 1
vendor_id	: AuthenticAMD
cpu family	: 16
model		: 5
model name	: AMD Athlon(tm) II X3 455 Processor
stepping	: 3
microcode	: 0x10000c8
cpu MHz		: 2100.000
cache size	: 512 KB
physical id	: 0
siblings	: 3
core id		: 1
cpu cores	: 3
apicid		: 1
initial apicid	: 1
fpu		: yes
fpu_exception	: yes
cpuid level	: 5
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc rep_good nopl nonstop_tsc cpuid extd_apicid pni monitor cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt hw_pstate vmmcall npt lbrv svm_lock nrip_save
bugs		: tlb_mmatch fxsave_leak sysret_ss_attrs null_seg spectre_v1 spectre_v2
bogomips	: 6630.03
TLB size	: 1024 4K pages
clflush size	: 64
cache_alignment	: 64
address sizes	: 48 bits physical, 48 bits virtual
power management: ts ttp tm stc 100mhzsteps hwpstate

processor	: 2
vendor_id	: AuthenticAMD
cpu family	: 16
model		: 5
model name	: AMD Athlon(tm) II X3 455 Processor
stepping	: 3
microcode	: 0x10000c8
cpu MHz		: 2600.000
cache size	: 512 KB
physical id	: 0
siblings	: 3
core id		: 2
cpu cores	: 3
apicid		: 2
initial apicid	: 2
fpu		: yes
fpu_exception	: yes
cpuid level	: 5
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc rep_good nopl nonstop_tsc cpuid extd_apicid pni monitor cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt hw_pstate vmmcall npt lbrv svm_lock nrip_save
bugs		: tlb_mmatch fxsave_leak sysret_ss_attrs null_seg spectre_v1 spectre_v2
bogomips	: 6630.03
TLB size	: 1024 4K pages
clflush size	: 64
cache_alignment	: 64
address sizes	: 48 bits physical, 48 bits virtual
power management: ts ttp tm stc 100mhzsteps hwpstate

@reaperhulk
Copy link
Member

Thanks, this is a non-AVX CPU, which suggests our manylinux_2_34 is using a later x86_64 ABI. In fact, I think your processor would fall into the x86_64 v1 category. I suspect AlmaLinux 9.x (which is what manylinux_2_34 is based on) uses v2. Unfortunately, this concept is not encoded into the manylinux tag spec AFAIK...

@reaperhulk
Copy link
Member

reaperhulk commented Dec 11, 2024

I think we're going to need to file an issue with manylinux around how to handle this. In the meantime we've removed the manylinux_2_34_x86_64 wheels for 44.0.0.

Thanks for the continued report @NotStatilko

@NotStatilko
Copy link

Thanks for the continued report @NotStatilko

You welcome. I'm pretty much noob when there is a "hardware" in question, but I can test something / give command outputs if you'll need it down the line. Feel free to tag me. No wonder something breaks on this ol' pile of trash xD

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
waiting-on-reporter Issue is waiting on a reply from the reporter. It will be automatically cloesd if there is no reply.
Development

No branches or pull requests

4 participants