Cross-compilation under Nix is broken since #229
link2xt opened this issue · 0 comments
link2xt commented
#229 changed build scripts in a way that breaks builds of vendored OpenSSL under Nix.
On Linux I worked around by switching to statically built OpenSSL from nixpkgs: deltachat/deltachat-core-rust#5316
But for Windows platform this did not work.
Log failure when trying to build vendored OpenSSL for Windows:
2024-03-04T21:38:46.8132887Z > error: failed to run custom build command for `openssl-sys v0.9.101`
2024-03-04T21:38:46.8133558Z >
2024-03-04T21:38:46.8133860Z > Caused by:
2024-03-04T21:38:46.8135115Z > process didn't exit successfully: `/build/dummy-src/target/release/build/openssl-sys-60fc2e3a843f5bde/build-script-main` (exit status: 101)
2024-03-04T21:38:46.8136334Z > --- stdout
2024-03-04T21:38:46.8136991Z > cargo:rerun-if-env-changed=X86_64_PC_WINDOWS_GNU_OPENSSL_NO_VENDOR
2024-03-04T21:38:46.8137750Z > X86_64_PC_WINDOWS_GNU_OPENSSL_NO_VENDOR unset
2024-03-04T21:38:46.8138433Z > cargo:rerun-if-env-changed=OPENSSL_NO_VENDOR
2024-03-04T21:38:46.8139002Z > OPENSSL_NO_VENDOR unset
2024-03-04T21:38:46.8139428Z >
2024-03-04T21:38:46.8139760Z > --- stderr
2024-03-04T21:38:46.8141194Z > thread 'main' panicked at /nix/store/nqxnkxrqi9zx3zd60slbvg6pnyiprysv-crates-io-dependencies/openssl-src-300.2.3+3.2.1-5cff92b6f71555b61bb9315f7c64da3ca43d87531622120fea0195fc761b4843/src/lib.rs:648:13:
2024-03-04T21:38:46.8143424Z > can't copy symlink "/nix/store/nqxnkxrqi9zx3zd60slbvg6pnyiprysv-crates-io-dependencies/openssl-src-300.2.3+3.2.1-5cff92b6f71555b61bb9315f7c64da3ca43d87531622120fea0195fc761b4843/openssl/README.md"
2024-03-04T21:38:46.8144799Z > note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
2024-03-04T21:38:46.8145448Z > warning: build failed, waiting for other jobs to finish...
2024-03-04T21:38:46.8145980Z > [naersk] cargo returned with exit code 101, exiting