Re: [zstd-sys 2.0.1+zstd.1.5.2] crate failing on arm64
Date: Fri, 25 Nov 2022 19:18:32 UTC
> On Nov 25, 2022, at 8:16 AM, Nuno Teixeira <eduardo@freebsd.org> wrote: > > Ok, I'm a little lost... > > What you think about a short error message to send to upstream: > --- > error[E0554]: `#![feature]` may not be used on the stable release channel > --> <anon>:1:12 > | > 1 | #![feature(windows_by_handle)] > | ^^^^^^^^^^^^^^^^^ > > error[E0635]: unknown feature `windows_by_handle` > --> <anon>:1:12 > | > 1 | #![feature(windows_by_handle)] > | ^^^^^^^^^^^^^^^^^ > > error: aborting due to 2 previous errors > > Some errors have detailed explanations: E0554, E0635. > For more information about an error, try `rustc --explain E0554`. > --- > with link to full log. > > Thanks I will not have access to an amd64 context for compare/contrast with until next week. That might better identify things unique to aarch64. As stands, this is very exploratory for me. I’ve never programmed in rust. > Mark Millard <marklmi@yahoo.com> escreveu no dia quinta, 24/11/2022 à(s) 17:27: > On Nov 24, 2022, at 07:00, Mark Millard <marklmi@yahoo.com> wrote: > > > On Nov 24, 2022, at 03:03, Nuno Teixeira <eduardo@freebsd.org> wrote: > > > >> Hello Mark, > > Hello. > > >> I have compared some of errors/warnings with amd64 build logs and they are present in there too. > > Interesting. > > >> I think I found a glitch at the end of arm64 log: > >> --- > >> [zstd-sys 2.0.1+zstd.1.5.2] running: "ar" "cq" "/wrkdirs/usr/ports... > >> (...) > >> "/wrkdirs/usr/ports/editors/lapce/ > >> work/target/aarch64-unknown-freebsd/release/build/zstd-sys-97d70ebd740964f8/out/zstd/lib/decompress/huf_decompress_amd64.o" > >> ^^^^^ > > Well, in my older context, > > # grep "^#" /wrkdirs/usr/ports/editors/lapce/work/lapce-0.2.1/cargo-crates/zstd-sys-2.0.1+zstd.1.5.2/zstd/lib/decompress/huf_decompress_amd64.S | grep -v "#define " > #include "../common/portability_macros.h" > #if defined(__ELF__) && defined(__GNUC__) > #endif > #if ZSTD_ENABLE_ASM_X86_64_BMI2 > #undef GET_NEXT_DELT > #undef DECODE_FROM_DELT > #undef DECODE > #undef RELOAD_BITS > #undef DECODE > #undef RELOAD_BITS > #endif > > The #endif is the last line of the file and, ignoring > comments and blank lines for the most part, the rest > of the file before/at the #if ZSTD_ENABLE_ASM_X86_64_BMI2 > is just: > > #include "../common/portability_macros.h" > > /* Stack marking > * ref: https://wiki.gentoo.org/wiki/Hardened/GNU_stack_quickstart > */ > #if defined(__ELF__) && defined(__GNUC__) > .section .note.GNU-stack,"",%progbits > #endif > > #if ZSTD_ENABLE_ASM_X86_64_BMI2 > > > Looks like the ZSTD_ENABLE_ASM_X86_64_BMI2 test would eliminate the > amd64 specifics in an aarch64 context, so they do not bother avoiding > the file. > > > >> --- > >> and zstd-sys-2.0.1+zstd.1.5.2/zstd/lib/common/xxhash.h: > >> # if (defined(__aarch64__) || defined(__arm64__) || defined(_M_ARM64) || defined(_M_ARM64EC)) \ > >> > >> So I presume that this crate should be build on arm64/aarch64 but don't understant why it calls: > >> "huf_decompress_amd64.o" > >> > >> Any clues? > > > > Not at this point. I've got the system rebuilding the > > port so I can set up to look again. > > > >> . . . > > FYI: the better string for searching got: > > # find -s /wrkdirs/usr/ports/editors/lapce/ -name stderr -exec grep -l "aborting due to" {} \; | less > /wrkdirs/usr/ports/editors/lapce/work/target/aarch64-unknown-freebsd/debug/build/cap-fs-ext-10fe2c1f66453130/stderr > /wrkdirs/usr/ports/editors/lapce/work/target/aarch64-unknown-freebsd/debug/build/cap-primitives-ed08064314a4640b/stderr > /wrkdirs/usr/ports/editors/lapce/work/target/aarch64-unknown-freebsd/debug/build/cap-std-5acaec63374cb836/stderr > /wrkdirs/usr/ports/editors/lapce/work/target/aarch64-unknown-freebsd/debug/build/io-extras-e83e1591d250cc25/stderr > /wrkdirs/usr/ports/editors/lapce/work/target/aarch64-unknown-freebsd/debug/build/io-lifetimes-62b7366622512d7e/stderr > /wrkdirs/usr/ports/editors/lapce/work/target/aarch64-unknown-freebsd/debug/build/system-interface-56dbb6efd7f0321e/stderr > > The first line of the output is new compared to before: > > # more /wrkdirs/usr/ports/editors/lapce/work/target/aarch64-unknown-freebsd/debug/build/cap-fs-ext-10fe2c1f66453130/stderr > error[E0554]: `#![feature]` may not be used on the stable release channel > --> <anon>:1:12 > | > 1 | #![feature(windows_by_handle)] > | ^^^^^^^^^^^^^^^^^ > > error[E0635]: unknown feature `windows_by_handle` > --> <anon>:1:12 > | > 1 | #![feature(windows_by_handle)] > | ^^^^^^^^^^^^^^^^^ > > error: aborting due to 2 previous errors > > Some errors have detailed explanations: E0554, E0635. > For more information about an error, try `rustc --explain E0554`. > > So, not a new type of error compared to the others. > > === > Mark Millard > marklmi at yahoo.com > > > > -- > Nuno Teixeira > FreeBSD Committer (ports)