MacOSX11.0.sdk missing some symlink files for AMD64 arch mac
Opened this issue · 2 comments
Conda-forge documentation
- I could not solve my problem using the conda-forge documentation.
Installed packages
N/A
Environment info
N/A
Issue
I'm trying to build ambertools https://github.com/conda-forge/ambertools-feedstock locally on a M1 mac.
Where the compiling succeeded but the linking failed.
Traceback (most recent call last):
File "/Users/zhiyiwu/GitHub/ambertools-feedstock/miniforge3/bin/conda-build", line 11, in <module>
sys.exit(execute())
File "/Users/zhiyiwu/GitHub/ambertools-feedstock/miniforge3/lib/python3.10/site-packages/conda_build/cli/main_build.py", line 590, in execute
api.build(
File "/Users/zhiyiwu/GitHub/ambertools-feedstock/miniforge3/lib/python3.10/site-packages/conda_build/api.py", line 250, in build
return build_tree(
File "/Users/zhiyiwu/GitHub/ambertools-feedstock/miniforge3/lib/python3.10/site-packages/conda_build/build.py", line 3638, in build_tree
packages_from_this = build(
File "/Users/zhiyiwu/GitHub/ambertools-feedstock/miniforge3/lib/python3.10/site-packages/conda_build/build.py", line 2711, in build
newly_built_packages = bundlers[pkg_type](output_d, m, env, stats)
File "/Users/zhiyiwu/GitHub/ambertools-feedstock/miniforge3/lib/python3.10/site-packages/conda_build/build.py", line 1850, in bundle_conda
files = post_process_files(metadata, initial_files)
File "/Users/zhiyiwu/GitHub/ambertools-feedstock/miniforge3/lib/python3.10/site-packages/conda_build/build.py", line 1664, in post_process_files
post_build(m, new_files, build_python=python)
File "/Users/zhiyiwu/GitHub/ambertools-feedstock/miniforge3/lib/python3.10/site-packages/conda_build/post.py", line 1728, in post_build
check_overlinking(m, files, host_prefix)
File "/Users/zhiyiwu/GitHub/ambertools-feedstock/miniforge3/lib/python3.10/site-packages/conda_build/post.py", line 1553, in check_overlinking
return check_overlinking_impl(
File "/Users/zhiyiwu/GitHub/ambertools-feedstock/miniforge3/lib/python3.10/site-packages/conda_build/post.py", line 1380, in check_overlinking_impl
with open(os.path.join(sysroot, f), "rb") as tbd_fh:
FileNotFoundError: [Errno 2] No such file or directory: '/Users/zhiyiwu/GitHub/ambertools-feedstock/SDKs/MacOSX11.0.sdk/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vImage.framework/vImage.tbd'
Traceback (most recent call last):
File "/Users/zhiyiwu/GitHub/ambertools-feedstock/build-locally.py", line 106, in <module>
main()
File "/Users/zhiyiwu/GitHub/ambertools-feedstock/build-locally.py", line 96, in main
run_osx_build(ns)
File "/Users/zhiyiwu/GitHub/ambertools-feedstock/build-locally.py", line 34, in run_osx_build
subprocess.check_call([script])
File "/Users/zhiyiwu/miniconda3/lib/python3.12/subprocess.py", line 413, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['.scripts/run_osx_build.sh']' returned non-zero exit status 1.
Upon checking it seems that in the file /Users/zhiyiwu/GitHub/ambertools-feedstock/SDKs/MacOSX11.0.sdk/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vImage.framework/vImage.tbd
is symlink that points to Versions/Current/vImage.tbd
, which doesn't exist. However, in the directory /Users/zhiyiwu/GitHub/ambertools-feedstock/SDKs/MacOSX11.0.sdk/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vImage.framework/
, Versions/a/vImage.tbd
does exist.
I then crossed check the MacOSX11.3.sdk, which seems to include an additional file Versions/Current
, which is a symlink that points to Versions/a
.
So in the MacOSX11.3.sdk. /Users/zhiyiwu/GitHub/ambertools-feedstock/SDKs/MacOSX11.0.sdk/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vImage.framework/vImage.tbd
points to Versions/Current/vImage.tbd
, the Versions/Current
then points to Versions/a
, which then allows one to find the real vImage.tbd
.
For MacOSX11.0.sdk, however, the Versions/Current
is missing, so the /Users/zhiyiwu/GitHub/ambertools-feedstock/SDKs/MacOSX11.0.sdk/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vImage.framework/vImage.tbd
cannot be found.
AFAIK, native compilation for osx-arm64 is not commonly done, and so I wonder if the build_locally.py
is properly configured for this.
I think this is not a configuration problem, it is just that MacOSX11.0.sdk is broken. MacOSX11.1.sdk to MacOSX11.3.sdk works.