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

libtbx supported_mtype failure on M1 Mac #814

Open
huwjenkins opened this issue Oct 29, 2022 · 5 comments
Open

libtbx supported_mtype failure on M1 Mac #814

huwjenkins opened this issue Oct 29, 2022 · 5 comments

Comments

@huwjenkins
Copy link

DIALS v3-11-2 refuses to install on my M1 Mac. v3-11-1 worked fine. The issue is in libtx so reporting here. In this version os.uname() here:


returns:

posix.uname_result(sysname='Darwin', nodename='xxx.xxx', release='21.6.0', version='Darwin Kernel Version 21.6.0: Mon Aug 22 20:19:52 PDT 2022; root:xnu-8020.140.49~2/RELEASE_ARM64_T6000', machine='arm64')

i.e. machine='arm64' and so mtype is set to mac-intel-osx-x86_64-10.9 rather than mac-intel-osx-x86_64 which is not in the list here:

supported_mtypes = [
"intel-linux-2.6",
"intel-linux-2.6-x86_64",
"mac-intel-osx",
"mac-intel-osx-x86_64",
"intel-windows",
"intel-windows-x86_64",

Error is:

Traceback (most recent call last):
  File "/Users/huw/Downloads/dials-installer/./bin/install.py", line 311, in <module>
    installer(sys.argv[1:]).install()
  File "/Users/huw/Downloads/dials-installer/lib/libtbx/auto_build/install_distribution.py", line 188, in install
    self.basic_setup()
  File "/Users/huw/Downloads/dials-installer/lib/libtbx/auto_build/install_distribution.py", line 219, in basic_setup
    raise InstallerError("""
InstallerError:
  mac-intel-osx-x86_64-10.9 is not a supported platform, installation aborted
    use the --try-unsupported option to attempt installation on this platform
    use the --no-gui option for a core DIALS installation
@huwjenkins
Copy link
Author

huwjenkins commented Oct 29, 2022

I suspect this comes from 00281bb but I'm confused how it worked before as this machine has never had /usr/bin/python

@bkpoon
Copy link
Member

bkpoon commented Oct 29, 2022

Does the installer work if you add the --try-unsupported flag?

For DIALS installers, I believe a branch in a fork of cctbx_project is used. Does that branch have the commit you are referring to?

@bkpoon
Copy link
Member

bkpoon commented Oct 29, 2022

Also, in the installation script, if there is a conda_base/bin directory, the python in that directory will be used.

@huwjenkins
Copy link
Author

huwjenkins commented Oct 29, 2022

I worked around with:

PYTHON_EXE=./build/bin/python ./install --prefix=/path/to/install

DIALS has a similar commit here: dials@b8a70b3

I didn't try --try-unsupported. Does cctbx not support MacOS 12.6 on Apple silicon - that surprises me? Either way the installer failure is misleading as mac-intel-osx-x86_64-10.9 is wrong in at least 2 ways (intel and x86_64).

Also, in the installation script, if there is a conda_base/bin directory, the python in that directory will be used.

Thanks - that explains why it worked before.

@bkpoon
Copy link
Member

bkpoon commented Oct 30, 2022

I'll look into updating the machine type and doing native Apple Silicon build. I'll probably remove the addition of 10.9. The use of conda_base/bin/python essentially causes that check to always pass.

We do support Apple Silicon. I have been using a M1 Pro for almost a year now. We also have cctbx conda packages for Apple Silicon on the conda-forge channel.

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

No branches or pull requests

2 participants