-
Notifications
You must be signed in to change notification settings - Fork 766
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
Remove setting CMAKE_MACOSX_RPATH to 0 by default #1632
Conversation
Hi @traversaro. I tried going through the original issue but my lack of familiarity with that project is hindering my progress. Can you please explain the issue in more detail? It seems like this affects Apple Silicon (e.g. M1) specifically, so I'd like to understand this in significant detail. |
Sure! Sorry, I opened the issue quickly to avoid forgetting about this.
The behavior of setting
While this does not mean that setting With this PR I wanted to:
In case |
In the conda-forge specific case, avoiding to set |
@traversaro thank you for the explanation. Given your point that the default value is 1 and has been since 2014 gives me enough reason to approve this PR. Especially with the CI passing. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the contribution @traversaro. People like you really help us with these subtle issues. :)
Thanks for merging! Feel free to open issue and tag me if you find problems with these, for example in pypi wheel generation. |
In conda-forge/gtsam-feedstock#15 (comment), setting CMAKE_MACOSX_RPATH to
0
(combined with the fact that the build system uses thegtsam.cpython-311-darwin.so
in the build directory to copy inlib/python3.11/site-packages/gtsam/gtsam.cpython-311-darwin.so
instead of installing it) lead to a quite difficult to debug strange behaviour.As CMAKE_MACOSX_RPATH is set to 1 since CMake 3.0 , I wanted to see it the upstream CI fails. If setting CMAKE_MACOSX_RPATH to 0 make the CI fails and it is necessary to disable RPATH for some reason, the following CMake variable are the one currently suggested by CMake, and so I would try to set them instead of tweaking
CMAKE_MACOSX_RPATH
:CMAKE_SKIP_RPATH
: to disable both build and install rpathCMAKE_SKIP_BUILD_RPATH
: to disable build rpathCMAKE_SKIP_INSTALL_RPATH
: to disable install rpath