Problem compiling tokio?

I just got an error I wasn't expecting.

ubuntu@ip-172-26-13-111:~$ cargo install rustdb-axum-example
    Updating crates.io index
  Downloaded rustdb-axum-example v0.1.13
  Downloaded 1 crate (15.4 KB) in 0.76s
  Installing rustdb-axum-example v0.1.13
  Downloaded tokio-native-tls v0.3.0
  Downloaded signal-hook-registry v1.4.0
  Downloaded 2 crates (38.7 KB) in 0.43s
   Compiling proc-macro2 v1.0.42
   Compiling futures-macro v0.3.21
   Compiling tokio-macros v1.8.0
   Compiling pin-project-internal v1.0.11
   Compiling openssl-macros v0.1.0
   Compiling time-macros-impl v0.1.2
error: could not compile `tokio`

Caused by:
  process didn't exit successfully: `rustc --crate-name tokio --edition=2018 /home/ubuntu/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.20.1/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no --cfg 'feature="bytes"' --cfg 'feature="default"' --cfg 'feature="fs"' --cfg 'feature="io-std"' --cfg 'feature="io-util"' --cfg 'feature="libc"' --cfg 'feature="macros"' --cfg 'feature="memchr"' --cfg 'feature="mio"' --cfg 'feature="net"' --cfg 'feature="num_cpus"' --cfg 'feature="once_cell"' --cfg 'feature="parking_lot"' --cfg 'feature="process"' --cfg 'feature="rt"' --cfg 'feature="rt-multi-thread"' --cfg 'feature="signal-hook-registry"' --cfg 'feature="socket2"' --cfg 'feature="sync"' --cfg 'feature="time"' --cfg 'feature="tokio-macros"' -C metadata=f9c8f8ddbc5de6e3 -C extra-filename=-f9c8f8ddbc5de6e3 --out-dir /tmp/cargo-installMjlwJ3/release/deps -L dependency=/tmp/cargo-installMjlwJ3/release/deps --extern bytes=/tmp/cargo-installMjlwJ3/release/deps/libbytes-a1b8130388413bf4.rmeta --extern libc=/tmp/cargo-installMjlwJ3/release/deps/liblibc-9f97bcea9300047f.rmeta --extern memchr=/tmp/cargo-installMjlwJ3/release/deps/libmemchr-fc15e50643861acc.rmeta --extern mio=/tmp/cargo-installMjlwJ3/release/deps/libmio-b95934dc6948dc67.rmeta --extern num_cpus=/tmp/cargo-installMjlwJ3/release/deps/libnum_cpus-873156d1a5f53482.rmeta --extern once_cell=/tmp/cargo-installMjlwJ3/release/deps/libonce_cell-f9c3b3dabf16b2bf.rmeta --extern parking_lot=/tmp/cargo-installMjlwJ3/release/deps/libparking_lot-ccb016a99302a9f0.rmeta --extern pin_project_lite=/tmp/cargo-installMjlwJ3/release/deps/libpin_project_lite-9af214e0bad53a1c.rmeta --extern signal_hook_registry=/tmp/cargo-installMjlwJ3/release/deps/libsignal_hook_registry-21ea4cff0c734c8f.rmeta --extern socket2=/tmp/cargo-installMjlwJ3/release/deps/libsocket2-604b412ccb7ab6fe.rmeta --extern tokio_macros=/tmp/cargo-installMjlwJ3/release/deps/libtokio_macros-d29d64aeed69b5eb.so --cap-lints allow` (signal: 9, SIGKILL: kill)
error: failed to compile `rustdb-axum-example v0.1.13`, intermediate artifacts can be found at `/tmp/cargo-installMjlwJ3`
ubuntu@ip-172-26-13-111:~$

It compiled ok on my local windows machine ( I just published the program ok ).
I guess it has something to do with SSL and OpenSSL, although this was working ok for me yesterday ( I am using lettre to send emails using SMTP ). Did something break in the mean-time?

I'm not aware of anything breaking in tokio. Does it not print any firm of error?

2 Likes

I figured out what caused the problem. It was this in my cargo.Toml

lettre = { version = "0.10.1", features = ["tokio1","tokio1-native-tls"] }

I changed it back to simply

lettre = { version = "0.10.1" }

and it now installs ok on Ubuntu again.

Exactly why this caused the mysterious install error I do not understand.