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

npm package release pipeline broken, because android armeabi-v7a fails to link #6117

Closed
Simon-Laux opened this issue Oct 26, 2024 · 3 comments
Assignees
Labels
blocker bug Something is not working

Comments

@Simon-Laux
Copy link
Member

https://github.com/deltachat/deltachat-core-rust/actions/runs/11506941231

Android (armeabi-v7a) fails to build and brings down the whole pipeline:

error: builder for '/nix/store/ph4yyjd4kc1vaqkqg8yhfjy0svai6znn-deltachat-1.148.4.drv' failed with exit code 101;
       last 25 log lines:
       >    Compiling deltachat-time v1.0.0 (/build/source/deltachat-time)
       >    Compiling deltachat v1.148.4 (/build/source)
       >    Compiling deltachat-jsonrpc v1.148.4 (/build/source/deltachat-jsonrpc)
       >    Compiling deltachat-rpc-server v1.148.4 (/build/source/deltachat-rpc-server)
       > error: could not compile `deltachat-rpc-server` (bin "deltachat-rpc-server") due to 2 previous errors
       > error: linking with `/nix/store/almayr53812j425x7nffpxvq4v57w97n-android-sdk-env/share/android-sdk/ndk/24.0.8215888/toolchains/llvm/prebuilt/linux-x86_64/bin/armv7a-linux-androideabi19-clang` failed: exit status: 1
       >   |
       >   = note: LC_ALL="C" PATH="/nix/store/iy063h867qdnr3gl5asvn38z2sv1731y-rust-mixed/lib/rustlib/x86_64-unknown-linux-gnu/bin:/nix/store/iy063h867qdnr3gl5asvn38z2sv1731y-rust-mixed/lib/rustlib/x86_64-unknown-linux-gnu/bin:/nix/store/iy063h867qdnr3gl5asvn38z2sv1731y-rust-mixed/lib/rustlib/x86_64-unknown-linux-gnu/bin:/nix/store/iy063h867qdnr3gl5asvn38z2sv1731y-rust-mixed/bin:/nix/store/v0azfsqv58llx12jal5ngx3mj0rj7km6-jq-1.7.1-bin/bin:/nix/store/v2rsppryxbv9z63fgg6kcim4mbr7ihrd-rsync-3.3.0/bin:/nix/store/mnnp3qlmkwgzl3lbnz7qlaqddwjjwa7v-perl-5.40.0/bin:/nix/store/dvfb5mrpfhg5211v6pl0a3fmz9idg6w7-patchelf-0.15.0/bin:/nix/store/vh9fsdhgxcnab2qk7vdp2palkkn6j3cp-gcc-wrapper-13.3.0/bin:/nix/store/0vsyw5bhwmisszyfd1a0sdnwvnf4qa5a-gcc-13.3.0/bin:/nix/store/vpsla1ivhavzd4fmi95yzmgb4g9rd072-glibc-2.40-36-bin/bin:/nix/store/ph44jcx3ddmlwh394mh1wb7f1qigxqb1-coreutils-9.5/bin:/nix/store/l7n97992gd5piaw8phkxzsz176gfk1yj-binutils-wrapper-2.43.1/bin:/nix/store/vcvhwiilizhijk7ywyn58p9l005n9sbn-binutils-2.43.1/bin:/nix/store/ph44jcx3ddmlwh394mh1wb7f1qigxqb1-coreutils-9.5/bin:/nix/store/yb8icljkwhk5lla4nci3myndq2m4ywly-findutils-4.10.0/bin:/nix/store/phqahkhjsk8sl2jjiid1d47l2s4wy33h-diffutils-3.10/bin:/nix/store/yd9vbyhbxx62j0cyhd6v0iacz11nxpvc-gnused-4.9/bin:/nix/store/lvnwdmnjm7nvaq0a3vhvvn46iy4ql7gr-gnugrep-3.11/bin:/nix/store/0np7q7np75csai2cwzx57n332vn9ig4i-gawk-5.2.2/bin:/nix/store/zvn9bvrl2g516d2hfnanljiw24qa6w8l-gnutar-1.35/bin:/nix/store/db379c3zrmncmbv5khqxpk6ggbhxjw61-gzip-1.13/bin:/nix/store/girfp68w14pxfii52ak8gcs212y4q2s2-bzip2-1.0.8-bin/bin:/nix/store/21y3gqgm2a3w94m0wcrz1xxshks80z7p-gnumake-4.4.1/bin:/nix/store/717iy55ncqs0wmhdkwc5fg2vci5wbmq8-bash-5.2p32/bin:/nix/store/91ixz3zw9ipc5j93gybir9fp5mzisq8w-patch-2.7.6/bin:/nix/store/6v73xwg2c7p5ap29ckyg18ng87pzlnxs-xz-5.6.2-bin/bin:/nix/store/a6nsbir3y5ni3wwkw933aqvcmyyywnnz-file-5.45/bin" VSLANG="1033" "/nix/store/almayr53812j425x7nffpxvq4v57w97n-android-sdk-env/share/android-sdk/ndk/24.0.8215888/toolchains/llvm/prebuilt/linux-x86_64/bin/armv7a-linux-androideabi19-clang" "-march=armv7-a" "/build/rustct3bDlf/symbols.o" "/build/source/target/armv7-linux-androideabi/release/deps/deltachat_rpc_server-7c00c9c40e495f0d.deltachat_rpc_server.2170be03c47152e-cgu.0.rcgu.o" "-Wl,--as-needed" "-Wl,-Bstatic" "/build/rustct3bDlf/libring-2d68bb9c1786bc5c.rlib" "/build/rustct3bDlf/liblibsqlite3_sys-87b7965adbc7688f.rlib" "/build/rustct3bDlf/libopenssl_sys-4dbf14e9b47837f0.rlib" "/nix/store/3g612hmdb2bpvmwf3jzh4m6b1iqm5qbg-rust-std-stable-2024-10-17/lib/rustlib/armv7-linux-androideabi/lib/libcompiler_builtins-b4f34c55ffa32a6b.rlib" "-Wl,-Bdynamic" "-latomic" "-ldl" "-llog" "-lunwind" "-ldl" "-lm" "-lc" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/build/source/target/armv7-linux-androideabi/release/build/openssl-sys-138a048c3db10536/out/openssl-build/install/lib" "-L" "/build/source/target/armv7-linux-androideabi/release/build/libsqlite3-sys-90708790b2273231/out" "-L" "/build/source/target/armv7-linux-androideabi/release/build/ring-19232211408cb915/out" "-o" "/build/source/target/armv7-linux-androideabi/release/deps/deltachat_rpc_server-7c00c9c40e495f0d" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-Wl,--strip-all" "-nodefaultlibs"
       >   = note: ld: error: undefined symbol: signal
       >           >>> referenced by deltachat_rpc_server.2170be03c47152e-cgu.0
       >           >>>               /build/source/target/armv7-linux-androideabi/release/deps/deltachat_rpc_server-7c00c9c40e495f0d.deltachat_rpc_server.2170be03c47152e-cgu.0.rcgu.o:(main)
       >           >>> did you mean: psignal
       >           >>> defined in: /nix/store/almayr53812j425x7nffpxvq4v57w97n-android-sdk-env/share/android-sdk/ndk/24.0.8215888/toolchains/llvm/prebuilt/linux-x86_64/bin/../sysroot/usr/lib/arm-linux-androideabi/19/libc.so
       >           
       >           ld: error: undefined symbol: dl_iterate_phdr
       >           >>> referenced by libs_dl_iterate_phdr.rs:15 (std/src/../../backtrace/src/symbolize/gimli/libs_dl_iterate_phdr.rs:15)
       >           >>>               /build/source/target/armv7-linux-androideabi/release/deps/deltachat_rpc_server-7c00c9c40e495f0d.deltachat_rpc_server.2170be03c47152e-cgu.0.rcgu.o:(std::backtrace_rs::symbolize::gimli::resolve::h17f8c15d45199ea9)
       >           clang-14: error: linker command failed with exit code 1 (use -v to see invocation)
       >           
       >
       >
       > error: aborting due to 1 previous error
       >
       >
       > [naersk] cargo returned with exit code 101, exiting
       For full logs, run 'nix log /nix/store/ph4yyjd4kc1vaqkqg8yhfjy0svai6znn-deltachat-1.148.4.drv'.
@Simon-Laux Simon-Laux added blocker bug Something is not working labels Oct 26, 2024
@r10s
Copy link
Member

r10s commented Oct 27, 2024

is rpc-server used in android?

i just learned from #6018 (comment) that it is used only by desktop and bots :)

or is ci just trying to compile even though it is not used?

@Simon-Laux
Copy link
Member Author

Simon-Laux commented Oct 27, 2024

there was someone using it to program and deploy bots on android.

Though that's probably not enough usage to make it a mandatory dependency of the upload.
I'm not sure how much time making it optional would cost, because it needs to be de-listed from optional dependencies in @deltachat/stdio-rpc-server if it failed to build, not sure how the ci currently works so could be an additional 0.5-1,5 hours (15min if waiting for ci work wouldn't slow everything down).

I'd say rather fix build and make it optional than removing it. But if all fails we can just remove it IMO and make an issue to restore it later (and move that to project resurrection).

@link2xt link2xt self-assigned this Oct 27, 2024
@link2xt
Copy link
Collaborator

link2xt commented Oct 27, 2024

Fixed with f57cdc3

Basically we cannot upgrade Rust anymore it seems.

Need to merge #5885, latest stable Rust broke old NDK compatibility for real.

@link2xt link2xt closed this as completed Oct 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
blocker bug Something is not working
Projects
None yet
Development

No branches or pull requests

3 participants