andrewgazelka / hyperion

The most advanced Minecraft game engine built in Rust.
Apache License 2.0
464 stars 20 forks source link

docker musl #502

Closed andrewgazelka closed 1 month ago

andrewgazelka commented 1 month ago
nux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib/self-contained" "-L" "/root/.rustup/toolchains/nightly-2024-10-22-aarch64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib" "-o" "/app/target/debug/deps/nyc-c6f9fb782006a65b" "-Wl,--gc-sections" "-static" "-no-pie" "-Wl,-z,relro,-z,now" "-nodefaultlibs" "-latomic" "/root/.rustup/toolchains/nightly-2024-10-22-aarch64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib/self-contained/crtend.o" "/root/.rustup/toolchains/nightly-2024-10-22-aarch64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib/self-contained/crtn.o"
55.85   = note: /usr/lib/gcc/aarch64-alpine-linux-musl/13.2.1/../../../../aarch64-alpine-linux-musl/bin/ld: /app/target/debug/deps/libflecs_ecs_sys-72dce39a459d72f3.rlib(2e40c9e35e9506f4-flecs_rust.o): in function `posix_ainc':
55.85           /root/.cargo/git/checkouts/flecs-rust-ff75a97755951fdf/947b976/flecs_ecs_sys/src/flecs.c:52083:(.text.posix_ainc+0x20): undefined reference to `__aarch64_ldadd4_sync'
55.85           /usr/lib/gcc/aarch64-alpine-linux-musl/13.2.1/../../../../aarch64-alpine-linux-musl/bin/ld: /app/target/debug/deps/libflecs_ecs_sys-72dce39a459d72f3.rlib(2e40c9e35e9506f4-flecs_rust.o): in function `posix_adec':
55.85           /root/.cargo/git/checkouts/flecs-rust-ff75a97755951fdf/947b976/flecs_ecs_sys/src/flecs.c:52103:(.text.posix_adec+0x1c): undefined reference to `__aarch64_ldadd4_sync'
55.85           /usr/lib/gcc/aarch64-alpine-linux-musl/13.2.1/../../../../aarch64-alpine-linux-musl/bin/ld: /app/target/debug/deps/libflecs_ecs_sys-72dce39a459d72f3.rlib(2e40c9e35e9506f4-flecs_rust.o): in function `posix_lainc':
55.85           /root/.cargo/git/checkouts/flecs-rust-ff75a97755951fdf/947b976/flecs_ecs_sys/src/flecs.c:52123:(.text.posix_lainc+0x20): undefined reference to `__aarch64_ldadd8_sync'
55.85           /usr/lib/gcc/aarch64-alpine-linux-musl/13.2.1/../../../../aarch64-alpine-linux-musl/bin/ld: /app/target/debug/deps/libflecs_ecs_sys-72dce39a459d72f3.rlib(2e40c9e35e9506f4-flecs_rust.o): in function `posix_ladec':
55.85           /root/.cargo/git/checkouts/flecs-rust-ff75a97755951fdf/947b976/flecs_ecs_sys/src/flecs.c:52143:(.text.posix_ladec+0x1c): undefined reference to `__aarch64_ldadd8_sync'
55.85           collect2: error: ld returned 1 exit status
55.85
Indra-db commented 1 month ago

initial thoughts:

looks flecs related (not rust specific)

image

secondly: what if you set the OS API yourself for ainc and adec etc? I suppose it might be set wrongly on this linux ?

also with what you're doing, Bruce mentioned:

I was looking at someone doing cross-compilation and testing for arm64 They were using https://crates.io/crates/cross but not sure since that still ends up with Docker and at least for compilation only there are easier things to do.

andrewgazelka commented 1 month ago

closing as just doing ubuntu docker for now... a lot easier