-
Notifications
You must be signed in to change notification settings - Fork 26
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
arm64 on conda #150
Comments
is there a workaround for this? I'm unable to install with |
I just had to install on osx-arm64, it was a trial. Here are the steps that made it succeed (note that CLANG via Homebrew or Xcode (no omp support, very finicky) did not work, only GCC works - I got it to compile with Homebrew's CLANG but it gave a "symbol" error when trying to import pymaster that as best I could divine was due to other prebuilt GCC libraries not getting along with the CLANG ones I had just made). Step 1: install GCC, cfitsio, fftw, libtool via Homebrew (and maybe some others cause I was linking stuff into /usr/local/lib and /usr/local/include using Step 2:
You may not have to download the MAIN from Github and may just be able to use Hope this helps anyone else trying to install it on OSX ARM! |
thanks for the reply! Unfortunately it's still failing for me -- I still get |
Sorry to hear - installing cfitsio via Homebrew and then the linking calls ( edit: check in |
Did either of you find a solution to this? I'm having the same issue trying to install with an M1 mac |
Following the instructions above, if i don't pre-install healpix, I get the same error:
If I do pre-install healpix (with homebrew) and symlink to
So it seems that does just kick the can down the road as predicted |
Yes libnmt must be compiled so you need to get the compile chain working. Delete healpix and try to install pymaster again and then check The |
Thanks for the reply!
|
Install |
thanks! libtools was installed but I needed to run libtoolize in the NaMaster directory and in each of the dependencies and following it's instructions and it worked, thanks for your help |
Just one more progress. I found that CFLAGS="$CFLAGS -fopenmp -O3" CPPFLAGS="$CPPFLAGS -I${ADEPDIR}/include -fopenmp -O3" LDFLAGS="$LDFLAGS -L${ADEPDIR}/lib" ./configure --prefix=${ADEPDIR} --with-pic $@
|
Hi @elvinpoole I run across the same error and I was wondering if you could please provide a little bit more information on how you were able to solve it ? thank you so much! I run libtoolize in the NaMaster directory but got the following output: |
I found the install worked only if I followed each of the instructions libtoolize gives (directly editing aclocal.m4, configure.ac, Makefile.am) I'm not sure which of these steps had an impact Some more details from notes I wrote at the time
You might have to run the dependancies install scripts separately This is the extra stuff i had in my environment before installing namaster in case useful:
|
@elvinpoole thank you so so much for your repsonse. Just one more clarification ( sorry if this sounds a bit trivial but it is my first time manually configuring installations on my laptop), where exactly in the aclocal.m4 file do I need to put the required files ? |
I think i just copied the contents of each of the files libtoolize suggested and pasted to the end of the aclocal |
thank you so much! I did everything you suggested and still run into the same error. Upon checking the config.log file, the specific error seems to be related to unsupported options -fopenmp by gcc. I am currently operating on macOS M2 and have installed gcc-13 via homebrew. Do you happen to know how gcc can support OpenMP? |
One way to hack this:
CFLAGS="$CFLAGS -fopenmp -O3" CPPFLAGS="$CPPFLAGS -I${ADEPDIR}/include -fopenmp -O3" LDFLAGS="$LDFLAGS -L${ADEPDIR}/lib" ./configure --prefix=${ADEPDIR} --with-pic $@ Note that there are two
extra += ['-fopenmp']
|
@komatsu5147 thank you so much for the reply! i have been struggling for more than a week to try to correctly install NaMaster and your response gave me some hope! Unfortunately I still run to an error but this time a different one:
Am I right to assume I need to update my CC and PATH variables to point to xclang? I'm very sorry if my questions are trivial but this is my very first time doing this so any further clarification would be more than appreciated! my current variables are defined as follows:
Again thank you so much ! |
There is no error in your output file. Everything looks fine because you get There is no |
@komatsu5147 thank you so much! unfortunately the output on the terminal is still an error :(
|
This means that your |
here is the entire config.log file :
|
Interesting - you are now getting very different messages! Instead of getting configure:3787: checking whether the C compiler works
configure:3809: gcc -Xclang -fopenmp -O3 -I/Users/el/NaMaster/_deps/include -Xclang -fopenmp -O3 -L/Users/el/NaMaster/_deps/lib conftest.c >&5
configure:3813: $? = 0
configure:3863: result: yes You are now getting configure:3787: checking whether the C compiler works
configure:3809: /Library/Developer/CommandLineTools/usr/bin/clang -Xclang -fopenmp -O3 -I/Users/el/NaMaster/_deps/include -Xclang -fopenmp -O3 -L/Users/el/NaMaster/_deps/lib conftest.c >&5
ld: library not found for -lSystem
clang: error: linker command failed with exit code 1 (use -v to see invocation)
configure:3813: $? = 1
configure:3853: result: no You don't have to do |
@komatsu5147 you were right! I went back to check my config.log backup and the error in that case is that while the compiler works it is now unable to find libgslcblas file:
The full config.log file is now (have attached it instead for easier use): |
This is easy: make sure that
|
You have CFLAGS="-I/usr/local/include -I/Users/el/cfitsio/include -I/opt/homebrew/opt/fftw/include -I/opt/homebrew/opt/gsl/include/ -I/usr/bin/libtool/include/" But you don't seem to have LDFLAGS="-L/usr/local/lib -L/Users/el/cfitsio/lib -L/opt/homebrew/opt/fftw/lib -L/opt/homebrew/opt/gsl/lib/ -L/usr/bin/libtool/lib" |
@komatsu5147 I did this and I updated the path to libtool since I installed it via homebrew. The error is now that it cannot locate the sharp_execute.
Where would such a file be located ? in the libsharp2 folder along with other sharp files?
|
NaMaster itself installs At this point, it may be necessary to delete |
(I am so so sorry to keep bothering you with this) I did a fresh install incorporating the above and I still get the same error. Here is the config.log file: config.log
The steps I did were to define:
Change
|
I see. I am not sure what is going on, but at least you don't have to include |
Hi all - we were just wondering if there is any progress on this issue? Github Actions now defaults to M1 architectures for MacOS testing, so we are seeing more test failures when we can't install Namaster. It would be really great to be able to get our full conda stack on these systems. |
Argh, I had hoped that version 2.0, which is now on conda (since yesterday), would work out of the box on M1. Have you tested this one? |
No I hadn't - thanks, will check this out! |
The new version installs nicely for me - many thanks! |
Thanks a lot @joezuntz ! I'll close this, but please feel free to reopen if the problem persists. |
And I should have said, thanks a lot to everyone who contributed here, and for bearing with me for such a long time. |
I'd be useful for some users if we could support
osx-arm64
(and I imagine the linux equivalent) on conda-forge.The text was updated successfully, but these errors were encountered: