Running phenix into a M1 apple processor
Dear all, Is there any version of phenix for the new M1 apple processors? Thank you Armando
Regarding to my previous question, ./install —try -unsupported Seems to work Armando
El 13 jun 2022, a las 13:08, Armando Albert
escribió: Dear all, Is there any version of phenix for the new M1 apple processors? Thank you Armando
_______________________________________________ phenixbb mailing list [email protected] http://phenix-online.org/mailman/listinfo/phenixbb Unsubscribe: [email protected]
Hi Amando,
Yes, for the current 1.20 official release, the builds are only for the
Intel architecture so that you will need the "--try-unsupported" flag. The
next official release will have installers for both Intel and Apple
Silicon. I have been running Phenix natively on Apple Silicon so it's a
matter of building an installer. Let us know if you have any issues. Thanks!
--
Billy K. Poon
Research Scientist, Molecular Biophysics and Integrated Bioimaging
Lawrence Berkeley National Laboratory
1 Cyclotron Road, M/S 33R0345
Berkeley, CA 94720
Fax: (510) 486-5909
Web: https://phenix-online.org
On Mon, Jun 13, 2022 at 4:19 AM Armando Albert
Regarding to my previous question,
./install —try -unsupported
Seems to work
Armando
El 13 jun 2022, a las 13:08, Armando Albert
escribió: Dear all, Is there any version of phenix for the new M1 apple processors? Thank you Armando
_______________________________________________ phenixbb mailing list [email protected] http://phenix-online.org/mailman/listinfo/phenixbb Unsubscribe: [email protected]
_______________________________________________ phenixbb mailing list [email protected] http://phenix-online.org/mailman/listinfo/phenixbb Unsubscribe: [email protected]
Hello, "--try-unsupported" flag does not work for me. Is it building with python3? I’m on MacOS 12.4 Monterey, so no Python2.7 Florian
On 13 Jun 2022, at 22:40, Billy Poon
wrote: Hi Amando,
Yes, for the current 1.20 official release, the builds are only for the Intel architecture so that you will need the "--try-unsupported" flag. The next official release will have installers for both Intel and Apple Silicon. I have been running Phenix natively on Apple Silicon so it's a matter of building an installer. Let us know if you have any issues. Thanks!
-- Billy K. Poon Research Scientist, Molecular Biophysics and Integrated Bioimaging Lawrence Berkeley National Laboratory 1 Cyclotron Road, M/S 33R0345 Berkeley, CA 94720 Fax: (510) 486-5909 Web: https://phenix-online.org https://phenix-online.org/
On Mon, Jun 13, 2022 at 4:19 AM Armando Albert
mailto:[email protected]> wrote: Regarding to my previous question, ./install —try -unsupported
Seems to work
Armando
El 13 jun 2022, a las 13:08, Armando Albert
mailto:[email protected]> escribió: Dear all, Is there any version of phenix for the new M1 apple processors? Thank you Armando
_______________________________________________ phenixbb mailing list [email protected] mailto:[email protected] http://phenix-online.org/mailman/listinfo/phenixbb http://phenix-online.org/mailman/listinfo/phenixbb Unsubscribe: [email protected] mailto:[email protected]
_______________________________________________ phenixbb mailing list [email protected] mailto:[email protected] http://phenix-online.org/mailman/listinfo/phenixbb http://phenix-online.org/mailman/listinfo/phenixbb Unsubscribe: [email protected] mailto:[email protected]_______________________________________________ phenixbb mailing list [email protected] http://phenix-online.org/mailman/listinfo/phenixbb Unsubscribe: [email protected]
Hi Florian,
What is the error? For the CLI installer (tarball), you will need to run
xattr -c <tarball>
to avoid macOS 12.4 complaining about untrusted files. I have updated the
download page with those instructions.
We ship our own python and 1.20.1 is the last Python 2 release. The next
release will be in Python 3.
--
Billy K. Poon
Research Scientist, Molecular Biophysics and Integrated Bioimaging
Lawrence Berkeley National Laboratory
1 Cyclotron Road, M/S 33R0345
Berkeley, CA 94720
Fax: (510) 486-5909
Web: https://phenix-online.org
On Tue, Jun 21, 2022 at 6:01 AM Florian Nachon
Hello,
"--try-unsupported" flag does not work for me. Is it building with python3? I’m on MacOS 12.4 Monterey, so no Python2.7
Florian
On 13 Jun 2022, at 22:40, Billy Poon
wrote: Hi Amando,
Yes, for the current 1.20 official release, the builds are only for the Intel architecture so that you will need the "--try-unsupported" flag. The next official release will have installers for both Intel and Apple Silicon. I have been running Phenix natively on Apple Silicon so it's a matter of building an installer. Let us know if you have any issues. Thanks!
-- Billy K. Poon Research Scientist, Molecular Biophysics and Integrated Bioimaging Lawrence Berkeley National Laboratory 1 Cyclotron Road, M/S 33R0345 Berkeley, CA 94720 Fax: (510) 486-5909 Web: https://phenix-online.org
On Mon, Jun 13, 2022 at 4:19 AM Armando Albert
wrote: Regarding to my previous question,
./install —try -unsupported
Seems to work
Armando
El 13 jun 2022, a las 13:08, Armando Albert
escribió: Dear all, Is there any version of phenix for the new M1 apple processors? Thank you Armando
_______________________________________________ phenixbb mailing list [email protected] http://phenix-online.org/mailman/listinfo/phenixbb Unsubscribe: [email protected]
_______________________________________________ phenixbb mailing list [email protected] http://phenix-online.org/mailman/listinfo/phenixbb Unsubscribe: [email protected]
_______________________________________________ phenixbb mailing list [email protected] http://phenix-online.org/mailman/listinfo/phenixbb Unsubscribe: [email protected]
On 22 Jun 2022, at 00:55, Billy Poon
wrote: We ship our own python and 1.20.1 is the last Python 2 release. The next release will be in Python 3.
If I run sudo ./install --prefix=/Applications --try-unsupported then I get right away ./install: line 15: /usr/bin/python: No such file or directory Obviously because there is no /usr/bin/python in Monterey but /usr/bin/python3… I can change ‘python' by ‘python3’ in the install script to go one step further, but it fails later because the install scripts always call ‘python’ instead of ‘python3’ Source installation specified. /bin/sh: python: command not found Traceback (most recent call last): File "./bin/install.py", line 268, in <module> installer(sys.argv[1:]).install() File "/Users/florian/Downloads/phenix-installer-1.20.1-4487-source/lib/libtbx/auto_build/install_distribution.py", line 198, in install self.install_from_source() File "/Users/florian/Downloads/phenix-installer-1.20.1-4487-source/lib/libtbx/auto_build/install_distribution.py", line 367, in install_from_source call(cmd, log=log) File "/Users/florian/Downloads/phenix-installer-1.20.1-4487-source/lib/libtbx/auto_build/installer_utils.py", line 55, in call raise RuntimeError("Call to '%s' failed with exit code %d" % (args, rc)) RuntimeError: Call to 'python modules/cctbx_project/libtbx/auto_build/bootstrap.py base build --builder phenix --nproc 10' failed with exit code 127 And an alias does not do the trick either. So what should I do? Florian
Hi Florian,
It looks like you are using the source tarball. Please use the binary
installers for macOS. The install script will then use the python that we
provide in the "conda_base" directory.
If you want to use the source installer, you can modify the ./install and
./lib/libtbx/auto_build/install_distribution.py scripts to use
/usr/bin/python3 instead of /usr/bin/python. You will still need a "python"
somewhere in your path and the easiest way would be to install miniconda
from https://docs.conda.io/en/latest/miniconda.html and create a new conda
environment with any python version ("conda create -n new_env python" will
use Python 3.10). Activate the new environment ("conda activate new_env")
and then you will have a "python" in your path. Then you can run
./install --prefix <prefix> --try-unsupported --use-conda --nproc <nproc>
It is recommended that you add the "--use-conda" flag since it is not
likely that all the dependencies will compile from source. We have moved
our dependencies to use conda so that we can more easily test different
versions of Python 3. You can see that in our continuous integration output
of cctbx at https://github.com/cctbx/cctbx_project.
We have conda packages for cctbx that are built to run natively on Apple
Silicon and we will be doing the same for the next Phenix release.
--
Billy K. Poon
Research Scientist, Molecular Biophysics and Integrated Bioimaging
Lawrence Berkeley National Laboratory
1 Cyclotron Road, M/S 33R0345
Berkeley, CA 94720
Fax: (510) 486-5909
Web: https://phenix-online.org
On Tue, Jun 21, 2022 at 4:19 PM Florian Nachon
On 22 Jun 2022, at 00:55, Billy Poon
wrote: We ship our own python and 1.20.1 is the last Python 2 release. The next release will be in Python 3.
If I run sudo ./install --prefix=/Applications --try-unsupported then I get right away ./install: line 15: /usr/bin/python: No such file or directory
Obviously because there is no /usr/bin/python in Monterey but /usr/bin/python3… I can change ‘python' by ‘python3’ in the install script to go one step further, but it fails later because the install scripts always call ‘python’ instead of ‘python3’
Source installation specified. /bin/sh: python: command not found Traceback (most recent call last): File "./bin/install.py", line 268, in <module> installer(sys.argv[1:]).install() File "/Users/florian/Downloads/phenix-installer-1.20.1-4487-source/lib/libtbx/auto_build/install_distribution.py", line 198, in install self.install_from_source() File "/Users/florian/Downloads/phenix-installer-1.20.1-4487-source/lib/libtbx/auto_build/install_distribution.py", line 367, in install_from_source call(cmd, log=log) File "/Users/florian/Downloads/phenix-installer-1.20.1-4487-source/lib/libtbx/auto_build/installer_utils.py", line 55, in call raise RuntimeError("Call to '%s' failed with exit code %d" % (args, rc)) RuntimeError: Call to 'python modules/cctbx_project/libtbx/auto_build/bootstrap.py base build --builder phenix --nproc 10' failed with exit code 127
And an alias does not do the trick either.
So what should I do?
Florian
Hi Billy, Thanx for the instructions! I tried both the binary installer and the source installer as suggested, with the "—use-conda" flag and the installation worked well in both cases without messing up with /usr/bin. The full installation was completed in 15 min on my M1 Max Also, I installed arm64 anaconda with brew, but I noticed that conda_base was still Intel. And the generated Mac app is also Intel. I guess the explanation is that the default conda environment in the install script is osx-64 instead of osx-arm64? Florian
It looks like you are using the source tarball. Please use the binary installers for macOS. The install script will then use the python that we provide in the "conda_base" directory.
If you want to use the source installer, you can modify the ./install and ./lib/libtbx/auto_build/install_distribution.py scripts to use /usr/bin/python3 instead of /usr/bin/python. You will still need a "python" somewhere in your path and the easiest way would be to install miniconda from https://docs.conda.io/en/latest/miniconda.html https://docs.conda.io/en/latest/miniconda.html and create a new conda environment with any python version ("conda create -n new_env python" will use Python 3.10). Activate the new environment ("conda activate new_env") and then you will have a "python" in your path. Then you can run
./install --prefix <prefix> --try-unsupported --use-conda --nproc <nproc>
It is recommended that you add the "--use-conda" flag since it is not likely that all the dependencies will compile from source. We have moved our dependencies to use conda so that we can more easily test different versions of Python 3. You can see that in our continuous integration output of cctbx at https://github.com/cctbx/cctbx_project https://github.com/cctbx/cctbx_project.
We have conda packages for cctbx that are built to run natively on Apple Silicon and we will be doing the same for the next Phenix release.
-- Billy K. Poon Research Scientist, Molecular Biophysics and Integrated Bioimaging Lawrence Berkeley National Laboratory 1 Cyclotron Road, M/S 33R0345 Berkeley, CA 94720 Fax: (510) 486-5909 Web: https://phenix-online.org https://phenix-online.org/
On Tue, Jun 21, 2022 at 4:19 PM Florian Nachon
mailto:[email protected]> wrote: On 22 Jun 2022, at 00:55, Billy Poon
mailto:[email protected]> wrote: We ship our own python and 1.20.1 is the last Python 2 release. The next release will be in Python 3.
If I run sudo ./install --prefix=/Applications --try-unsupported then I get right away ./install: line 15: /usr/bin/python: No such file or directory
Obviously because there is no /usr/bin/python in Monterey but /usr/bin/python3… I can change ‘python' by ‘python3’ in the install script to go one step further, but it fails later because the install scripts always call ‘python’ instead of ‘python3’
Source installation specified. /bin/sh: python: command not found Traceback (most recent call last): File "./bin/install.py", line 268, in <module> installer(sys.argv[1:]).install() File "/Users/florian/Downloads/phenix-installer-1.20.1-4487-source/lib/libtbx/auto_build/install_distribution.py", line 198, in install self.install_from_source() File "/Users/florian/Downloads/phenix-installer-1.20.1-4487-source/lib/libtbx/auto_build/install_distribution.py", line 367, in install_from_source call(cmd, log=log) File "/Users/florian/Downloads/phenix-installer-1.20.1-4487-source/lib/libtbx/auto_build/installer_utils.py", line 55, in call raise RuntimeError("Call to '%s' failed with exit code %d" % (args, rc)) RuntimeError: Call to 'python modules/cctbx_project/libtbx/auto_build/bootstrap.py base build --builder phenix --nproc 10' failed with exit code 127
And an alias does not do the trick either.
So what should I do?
Florian
Hi Florian,
Great!
Yes, the conda_base directory is Intel because it would probably take a lot
of effort to get everything to natively compile on Apple Silicon. We do
have environments defined for Apple Silicon for Python 3. You can see them
in <installation directory>/modules/phenix/conda_envs. These files are just
standard text files created by conda for recreating environments exactly.
I'm currently in the process of updating them for the next release.
--
Billy K. Poon
Research Scientist, Molecular Biophysics and Integrated Bioimaging
Lawrence Berkeley National Laboratory
1 Cyclotron Road, M/S 33R0345
Berkeley, CA 94720
Fax: (510) 486-5909
Web: https://phenix-online.org
On Wed, Jun 22, 2022 at 3:48 PM Florian Nachon
Hi Billy,
Thanx for the instructions! I tried both the binary installer and the source installer as suggested, with the "—use-conda" flag and the installation worked well in both cases without messing up with /usr/bin.
The full installation was completed in 15 min on my M1 Max
Also, I installed arm64 anaconda with brew, but I noticed that conda_base was still Intel. And the generated Mac app is also Intel. I guess the explanation is that the default conda environment in the install script is osx-64 instead of osx-arm64?
Florian
It looks like you are using the source tarball.
Please use the binary installers for macOS. The install script will then use the python that we provide in the "conda_base" directory.
If you want to use the source installer, you can modify the ./install and ./lib/libtbx/auto_build/install_distribution.py scripts to use /usr/bin/python3 instead of /usr/bin/python. You will still need a "python" somewhere in your path and the easiest way would be to install miniconda from https://docs.conda.io/en/latest/miniconda.html and create a new conda environment with any python version ("conda create -n new_env python" will use Python 3.10). Activate the new environment ("conda activate new_env") and then you will have a "python" in your path. Then you can run
./install --prefix <prefix> --try-unsupported --use-conda --nproc <nproc>
It is recommended that you add the "--use-conda" flag since it is not likely that all the dependencies will compile from source. We have moved our dependencies to use conda so that we can more easily test different versions of Python 3. You can see that in our continuous integration output of cctbx at https://github.com/cctbx/cctbx_project.
We have conda packages for cctbx that are built to run natively on Apple Silicon and we will be doing the same for the next Phenix release.
-- Billy K. Poon Research Scientist, Molecular Biophysics and Integrated Bioimaging Lawrence Berkeley National Laboratory 1 Cyclotron Road, M/S 33R0345 Berkeley, CA 94720 Fax: (510) 486-5909 Web: https://phenix-online.org
On Tue, Jun 21, 2022 at 4:19 PM Florian Nachon
wrote: On 22 Jun 2022, at 00:55, Billy Poon
wrote: We ship our own python and 1.20.1 is the last Python 2 release. The next release will be in Python 3.
If I run sudo ./install --prefix=/Applications --try-unsupported then I get right away ./install: line 15: /usr/bin/python: No such file or directory
Obviously because there is no /usr/bin/python in Monterey but /usr/bin/python3… I can change ‘python' by ‘python3’ in the install script to go one step further, but it fails later because the install scripts always call ‘python’ instead of ‘python3’
Source installation specified. /bin/sh: python: command not found Traceback (most recent call last): File "./bin/install.py", line 268, in <module> installer(sys.argv[1:]).install() File "/Users/florian/Downloads/phenix-installer-1.20.1-4487-source/lib/libtbx/auto_build/install_distribution.py", line 198, in install self.install_from_source() File "/Users/florian/Downloads/phenix-installer-1.20.1-4487-source/lib/libtbx/auto_build/install_distribution.py", line 367, in install_from_source call(cmd, log=log) File "/Users/florian/Downloads/phenix-installer-1.20.1-4487-source/lib/libtbx/auto_build/installer_utils.py", line 55, in call raise RuntimeError("Call to '%s' failed with exit code %d" % (args, rc)) RuntimeError: Call to 'python modules/cctbx_project/libtbx/auto_build/bootstrap.py base build --builder phenix --nproc 10' failed with exit code 127
And an alias does not do the trick either.
So what should I do?
Florian
participants (3)
-
Armando Albert
-
Billy Poon
-
Florian Nachon