-
Notifications
You must be signed in to change notification settings - Fork 47
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
MacOS build fails on libpng package #572
Comments
I see ... this is arm64. I have been building on x86_64 (Rosetta2), same for the macOS CI. |
I've got the new build running now (with the even cleaner slate). Let's see if I run into the same error. If I do run into the same error, perhaps the libpng package.py or CMake config don't recognize arm64 or aarch64 OS specs and it's falling back on an old default? |
Bummer, still got the error:
It looks like the configuration understood the arm64 architecture since there is a |
Is it using CMake or autotools for libpng? It just changed recently in main spack, so whichever one it's using, maybe you could try using the other package.py and see if that magically fixes it? |
@AlexanderRichert-NOAA it's using CMake now. By the "other package.py" do you mean the one that we had before the fork_merge PR was merged in? Thanks! |
Or is there a way to select autotools in the current package.py? |
Yeah, I mean reverting to the previous version of the package so you can use autotools. Then if that works, hopefully you can either narrow down the relevant build option(s) or worst case scenario, we could let libpng use either cmake or autotools. |
@srherbener @AlexanderRichert-NOAA FYI: spack/spack#35105 specifically spack/spack#35105 (comment) (and what hopefully follows). |
I just found this: conan-io/conan-center-index#2366. Tried Here's what I did in the libpng/package.py:
This probably isn't the best way to fix this. I'm thinking that it should only add the PNG_ARM_NEON=off when on arm64/aarch64 platform. Is this okay, or do you recommend coding this a different way? |
Nice detective work - yes, that should be conditional on darwin/arch64. I can create the PR for you if you like |
I'll do the PR. Thanks! |
I just attempted to do a clean build of the unified-dev environment on my arm64 Mac. I'm running Ventura 13.3.1 with command line tools version 14.1 (Clang 14.0.0) and GNU Fortran 12.2.0.
I see the following error during
spack install
:I waited until both spack and spack-stack fork_merge PRs were merged and tried this using spack-stack develop and spack jcsda_emc_spack_stack branches.
It looks like the build is trying to use the C99 standard which is outdated and seems wrong to me, but I don't know why this is happening.
Does anyone have any ideas what might be the issue? A missing (or incorrectly set) environment variable for example. I don't think the spack-stack and spack configurations are broken since we just finished verifying that the fork_merge branches (before merging) worked on the MacOS platform.
I'm going to try creating the clean slate again (more carefully this time) and try the build again. I didn't do a
spack clean --all
before trying this build for example and perhaps that will help.The text was updated successfully, but these errors were encountered: