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

Compilation failed while installing cargo-watch on Docker #210

Open
leandronsp opened this issue Aug 10, 2022 · 1 comment
Open

Compilation failed while installing cargo-watch on Docker #210

leandronsp opened this issue Aug 10, 2022 · 1 comment

Comments

@leandronsp
Copy link

Hello, I'm trying to install using cargo install cargo-watch in a fresh Docker image linux/amd64 based. No success due to compilation error on the termcolor crate.

Environment

  • Docker 20.10
  • Macbook Pro M1, macOS Monterey 12.1
  • Docker Hub image official image, rust:latest linux:amd64
  • rustc 1.62.1 (e092d0b6b 2022-07-16)
  • cargo 1.62.1 (a748cf5a3 2022-06-08)

Steps

$ cargo install cargo-watch

Updating crates.io index      
Installing cargo-watch v8.1.2   
...

Output

Compiling termcolor v1.1.3

/usr/local/rustup/toolchains/1.62.1-x86_64-unknown-linux-gnu/bin/../lib/librustc_driver-1bde28880ea8bde8.so(+0x4e54e3)[0x40021864e3]
...
/usr/local/rustup/toolchains/1.62.1-x86_64-unknown-linux-gnu/bin/../lib/libstd-69edc9ac8de4d39c.so(rust_metadata_std_8996aeeb2a45fe64+0xab3c3)[0x4005ccb3c3]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x8ea7)[0x4005fb2ea7]
/lib/x86_64-linux-gnu/libc.so.6(clone+0x3f)[0x40060d4def]
qemu: uncaught target signal 11 (Segmentation fault) - core dumped
error: could not compile `strsim`

Caused by:
  process didn't exit successfully: `rustc --crate-name strsim /usr/local/cargo/registry/src/github.com-1ecc6299db9ec823/strsim-0.8.0/src/lib.rs --error-format=json --json=d
iagnostic-rendered-ansi,artifacts,future-incompat --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C panic=abort -C linker-plugin-lto -C codegen-units=1 -C met
adata=7c4474c11a45725d -C extra-filename=-7c4474c11a45725d --out-dir /tmp/cargo-installJwbEQY/release/deps -L dependency=/tmp/cargo-installJwbEQY/release/deps --cap-lints al
low` (signal: 11, SIGSEGV: invalid memory reference)

qemu: uncaught target signal 11 (Segmentation fault) - core dumped
error: could not compile `termcolor`

Caused by:
  process didn't exit successfully: `rustc --crate-name termcolor --edition=2018 /usr/local/cargo/registry/src/github.com-1ecc6299db9ec823/termcolor-1.1.3/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 panic=abort -C linker-plugin-lto -C codegen-units=1 -C metadata=9ea925993c53af48 -C extra-filename=-9ea925993c53af48 --out-dir /tmp/cargo-installJwbEQY/release/deps -L dependency=/tmp/cargo-installJwbEQY/release/deps --cap-lints allow` (signal: 11, SIGSEGV: invalid memory reference)

Conclusion

It seems like it's getting a segmentation fault while compiling strsim on emulated environments?

Anyway, I appreciate any help in case anyone already faced the same issue. Thanks in advance.

@leandronsp leandronsp changed the title Compilation failed while installing cargo-watch on emulated environment Compilation failed while installing cargo-watch on Docker Aug 10, 2022
@passcod
Copy link
Member

passcod commented Aug 11, 2022

Well that's... highly annoying. I'll investigate this.

In the meantime you can install with cargo-binstall or directly from a build, it will probably help your Dockerfile build times too ^^

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants