Closed eitsupi closed 5 months ago
The is due to the
-pedantic
flag being passed viaCMAKE_C_FLAGS
here, but I'm not sure where that's coming from.
Thanks for your reply and the fixes!
I think I have been able to suppress the error and work around it for now, but another problem caused it to fail to compile.
Copying platform assembly files from C:/Users/runneradmin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/aws-lc-sys-0.17.0/aws-lc/generated-src/win-x86_64/crypto/ to D:/a/r-glaredb/r-glaredb/src/rust/target/x86_64-pc-windows-gnu/debug/build/aws-lc-sys-50dad33b9ae93e0d/out/build/aws-lc/crypto
D:/a/r-glaredb/r-glaredb/src/rust/target/x86_64-pc-windows-gnu/debug/build/aws-lc-sys-50dad33b9ae93e0d/out/build/aws-lc/crypto/fipsmodule/aesni-xts-avx512.asm:136: error: undefined symbol `zmm25' (first use)
D:/a/r-glaredb/r-glaredb/src/rust/target/x86_64-pc-windows-gnu/debug/build/aws-lc-sys-50dad33b9ae93e0d/out/build/aws-lc/crypto/fipsmodule/aesni-xts-avx512.asm:136: error: (Each undefined symbol is reported only once.)
I know this is off-topic, is it worth submitting a new issue?
Do you have a link to the full output? I believe "zmm25" is related to AVX-512 support, which is supported by NASM v2.11 and later: https://www.nasm.us/xdoc/2.11/html/nasmdocc.html
Is it possible that an older version of NASM is being used?
Thanks for your response! The log is here: https://github.com/eitsupi/r-glaredb/actions/runs/9426573806/job/25969635968?pr=34#step:11:1469
Is it possible that an older version of NASM is being used?
It seems NASM version 2.16.01 compiled on Dec 21 2022
is downloaded.
https://github.com/eitsupi/r-glaredb/actions/runs/9426573806/job/25969635968?pr=34#step:8:23
Is this a cross compile to x86_64-pc-windows-gnu
so something is misconfigured?
The issue is that your build is using YASM instead of NASM as the assembler.
...
-- The ASM_NASM compiler identification is YASM
-- Found assembler: C:/rtools44/x86_64-w64-mingw32.static.posix/bin/yasm.exe
...
YASM appears to be an abandoned rewrite of NASM that's not had a release since August of 2014 -- around the time NASM 2.11 released. I'm not sure how it's being installed or why it's being found instead of NASM.
The issue is that your build is using YASM instead of NASM as the assembler.
... -- The ASM_NASM compiler identification is YASM -- Found assembler: C:/rtools44/x86_64-w64-mingw32.static.posix/bin/yasm.exe ...
YASM appears to be an abandoned rewrite of NASM that's not had a release since August of 2014 -- around the time NASM 2.11 released. I'm not sure how it's being installed or why it's being found instead of NASM.
Thanks for pointing out that!
YASM seems to have been updated even recently, and the rtools used here (based on msys2) seem to include both NASM and YASM; I don't know why YASM was preferred over NASM. https://packages.msys2.org/package/yasm https://svn.r-project.org/R-dev-web/trunk/WindowsBuilds/winutf8/ucrt3/toolchain_libs/mxe/src/
I posted a PR upstream to help address this issue.
Thanks for taking a look at this, I checked rtools44 and found that I was wrong and that yasm is included but nasm is not. It appears that I probably need to install additional nasm at this point.
Our patches to address this issue have been released in v1.7.3. Let us know if you have any other build issues. Thanks!
Thanks for quick updates! I will try.
Problem:
I could not successfully build a package that has this crate as a dependency. Perhaps there is something wrong with the way I have it set up?
Relevant details
aws-lc-sys@0.17.0
System information: for linux, below info can be collected by running
uname -srvmp
Build log:
https://github.com/eitsupi/r-glaredb/actions/runs/9234681710/job/25408657673?pr=18#step:11:1086