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

[BUG] Build fails with --target armv7-unknown-linux-gnueabi #1428

Open
1 task done
hgy59 opened this issue Nov 24, 2023 · 2 comments
Open
1 task done

[BUG] Build fails with --target armv7-unknown-linux-gnueabi #1428

hgy59 opened this issue Nov 24, 2023 · 2 comments
Labels

Comments

@hgy59
Copy link

hgy59 commented Nov 24, 2023

Checks

  • I have read the troubleshooting section and still think this is a bug.

Describe the bug you encountered:

Until fd 8.7.0 build with --target armv7-unknown-linux-gnueabi works fine.

For fd 8.7.1 there is a linker error

error: linking with `/spksrc/toolchain/syno-hi3535-6.2.4/work/arm-cortexa9-linux-gnueabi/bin/arm-cortexa9-linux-gnueabi-gcc` failed: exit status: 1
  |
  = note: LC_ALL="C" PATH="/spksrc/distrib/rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/bin:/spksrc/distrib/cargo/bin:/spksrc/cross/fd/../../distrib/cargo/bin:/spksrc/cross/fd/../../distrib/cargo/bin:/spksrc/toolchain/syno-x86-6.2.4/../../distrib/cargo/bin:/scripts:/usr/local/bin:/usr/bin:/bin:/usr/games" VSLANG="1033" "/spksrc/toolchain/syno-hi3535-6.2.4/work/arm-cortexa9-linux-gnueabi/bin/arm-cortexa9-linux-gnueabi-gcc" "/tmp/rustcbOW9bB/symbols.o" "/spksrc/cross/fd/work-hi3535-6.2.4/fd-8.7.1/target/armv7-unknown-linux-gnueabi/release/deps/fd-f2cff162ee66e01d.fd.e477d554b120399b-cgu.0.rcgu.o" "-Wl,--as-needed" "-L" "/spksrc/cross/fd/work-hi3535-6.2.4/fd-8.7.1/target/armv7-unknown-linux-gnueabi/release/deps" "-L" "/spksrc/cross/fd/work-hi3535-6.2.4/fd-8.7.1/target/release/deps" "-L" "/spksrc/cross/fd/work-hi3535-6.2.4/fd-8.7.1/target/armv7-unknown-linux-gnueabi/release/build/jemalloc-sys-a9978fef0ba428ab/out/build/lib" "-L" "/spksrc/distrib/rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/armv7-unknown-linux-gnueabi/lib" "-Wl,-Bstatic" "/tmp/rustcbOW9bB/libjemalloc_sys-7d1a32bd7f6af56f.rlib" "/spksrc/distrib/rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/armv7-unknown-linux-gnueabi/lib/libcompiler_builtins-c7422c3976ceb70a.rlib" "-Wl,-Bdynamic" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/spksrc/distrib/rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/armv7-unknown-linux-gnueabi/lib" "-o" "/spksrc/cross/fd/work-hi3535-6.2.4/fd-8.7.1/target/armv7-unknown-linux-gnueabi/release/deps/fd-f2cff162ee66e01d" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-Wl,-O1" "-Wl,--strip-all" "-nodefaultlibs"
  = note: /spksrc/toolchain/syno-hi3535-6.2.4/work/arm-cortexa9-linux-gnueabi/bin/../lib/gcc/arm-cortexa9-linux-gnueabi/4.8.3/../../../../arm-cortexa9-linux-gnueabi/bin/ld.bfd: BFD (crosstool-NG 1.20.0) 2.24 assertion fail /home/cpt/hi3535/.build/src/binutils-2.24/bfd/elf32-arm.c:12387
          /spksrc/toolchain/syno-hi3535-6.2.4/work/arm-cortexa9-linux-gnueabi/bin/../lib/gcc/arm-cortexa9-linux-gnueabi/4.8.3/../../../../arm-cortexa9-linux-gnueabi/bin/ld.bfd: BFD (crosstool-NG 1.20.0) 2.24 assertion fail /home/cpt/hi3535/.build/src/binutils-2.24/bfd/elf32-arm.c:12387
          /spksrc/toolchain/syno-hi3535-6.2.4/work/arm-cortexa9-linux-gnueabi/bin/../lib/gcc/arm-cortexa9-linux-gnueabi/4.8.3/../../../../arm-cortexa9-linux-gnueabi/bin/ld.bfd: BFD (crosstool-NG 1.20.0) 2.24 assertion fail /home/cpt/hi3535/.build/src/binutils-2.24/bfd/elf32-arm.c:12387
          /spksrc/toolchain/syno-hi3535-6.2.4/work/arm-cortexa9-linux-gnueabi/bin/../lib/gcc/arm-cortexa9-linux-gnueabi/4.8.3/../../../../arm-cortexa9-linux-gnueabi/bin/ld.bfd: BFD (crosstool-NG 1.20.0) 2.24 assertion fail /home/cpt/hi3535/.build/src/binutils-2.24/bfd/elf32-arm.c:12387
          /spksrc/toolchain/syno-hi3535-6.2.4/work/arm-cortexa9-linux-gnueabi/bin/../lib/gcc/arm-cortexa9-linux-gnueabi/4.8.3/../../../../arm-cortexa9-linux-gnueabi/bin/ld.bfd: BFD (crosstool-NG 1.20.0) 2.24 assertion fail /home/cpt/hi3535/.build/src/binutils-2.24/bfd/elf32-arm.c:12387
          /spksrc/toolchain/syno-hi3535-6.2.4/work/arm-cortexa9-linux-gnueabi/bin/../lib/gcc/arm-cortexa9-linux-gnueabi/4.8.3/../../../../arm-cortexa9-linux-gnueabi/bin/ld.bfd: BFD (crosstool-NG 1.20.0) 2.24 assertion fail /home/cpt/hi3535/.build/src/binutils-2.24/bfd/elf32-arm.c:12387
          /spksrc/toolchain/syno-hi3535-6.2.4/work/arm-cortexa9-linux-gnueabi/bin/../lib/gcc/arm-cortexa9-linux-gnueabi/4.8.3/../../../../arm-cortexa9-linux-gnueabi/bin/ld.bfd: BFD (crosstool-NG 1.20.0) 2.24 assertion fail /home/cpt/hi3535/.build/src/binutils-2.24/bfd/elf32-arm.c:12387
          /spksrc/toolchain/syno-hi3535-6.2.4/work/arm-cortexa9-linux-gnueabi/bin/../lib/gcc/arm-cortexa9-linux-gnueabi/4.8.3/../../../../arm-cortexa9-linux-gnueabi/bin/ld.bfd: BFD (crosstool-NG 1.20.0) 2.24 assertion fail /home/cpt/hi3535/.build/src/binutils-2.24/bfd/elf32-arm.c:12387
          /spksrc/toolchain/syno-hi3535-6.2.4/work/arm-cortexa9-linux-gnueabi/bin/../lib/gcc/arm-cortexa9-linux-gnueabi/4.8.3/../../../../arm-cortexa9-linux-gnueabi/bin/ld.bfd: BFD (crosstool-NG 1.20.0) 2.24 assertion fail /home/cpt/hi3535/.build/src/binutils-2.24/bfd/elf32-arm.c:12387
          /spksrc/toolchain/syno-hi3535-6.2.4/work/arm-cortexa9-linux-gnueabi/bin/../lib/gcc/arm-cortexa9-linux-gnueabi/4.8.3/../../../../arm-cortexa9-linux-gnueabi/bin/ld.bfd: BFD (crosstool-NG 1.20.0) 2.24 assertion fail /home/cpt/hi3535/.build/src/binutils-2.24/bfd/elf32-arm.c:12387
          /spksrc/toolchain/syno-hi3535-6.2.4/work/arm-cortexa9-linux-gnueabi/bin/../lib/gcc/arm-cortexa9-linux-gnueabi/4.8.3/../../../../arm-cortexa9-linux-gnueabi/bin/ld.bfd: BFD (crosstool-NG 1.20.0) 2.24 assertion fail /home/cpt/hi3535/.build/src/binutils-2.24/bfd/elf32-arm.c:12387
          collect2: error: ld returned 1 exit status
          

error: could not compile `fd-find` (bin "fd") due to previous error

probably this is an issue with the older synology toolchain for hi3535 arch.

for other targets/toolchains the build succeeds:

Describe what you expected to happen:

No response

What version of fd are you using?

8.7.1

Which operating system / distribution are you on?

Synology toolchain:
- gcc: arm-cortexa9-linux-gnueabi-gcc (crosstool-NG 1.20.0) 4.8.3 20140106 (prerelease)
- ld: GNU ld (crosstool-NG 1.20.0) 2.24

build env:
- Linux spksrc 4.19.0-24-amd64 #1 SMP Debian 4.19.282-1 (2023-04-29) x86_64 GNU/Linux

rust:
- rustc 1.74.0 (79e9716c9 2023-11-13)
@hgy59 hgy59 added the bug label Nov 24, 2023
@sharkdp
Copy link
Owner

sharkdp commented Nov 29, 2023

Thank you. It looks like this is a problem in a dependency (binutils). Do you think it should be reported upstream?

@th0ma7
Copy link

th0ma7 commented Sep 2, 2024

Thank you. It looks like this is a problem in a dependency (binutils). Do you think it should be reported upstream?

As this version of binutils is provided part of the Synology toolchain, and that support from Synology for this specific architecture has ended, there isn't much that can be done from an upstreaming point of view. Further as it uses v2.24 of binutils dating from 2013.

I've hit this issue once again SynoCommunity/spksrc#6210 where it no longer "only" fails to build with fd >= 8.7.1, but it's now also failing with latest functional version (8.7.0) in conjunction with newer rust >= 1.80.1. We can workaround that by fixing rust version to 1.7x but this leaves a gap for future (and limited) support for updated apps.

If there is anything that can be done on fd sources side to fix this would be really nice albeit that could be a burden to maintain later on.

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

No branches or pull requests

3 participants