-
Notifications
You must be signed in to change notification settings - Fork 233
Description
In our software development workflow we use miniconda/anaconda to download and install binary dependencies. We have a metapackage which has the dependencies listed as build and run requirements. With the new compilers, our build workflow got broken. As a workaround, until we update our build system to use the new compilers, we simply added an activation script that unsets compiler related environment variables. That seems to work on Mac, but on Linux doesn't work, and I don't remember if it worked initially and changed later. Initially the assumption was that the activation script of our metapackage would run the last, so we can unset any env var set by anaconda's compilers. I don't know if that was a wrong assumption. So,
- Is there a recommended way to disable the new compilers when installing our metapackage?
- Is is possible to change some of the environment variables as needed? I guess, for this to work, there should be an order of activation of activation scripts of different packages?
- The problematic linker flag seems to be
-Wl,-dead_strip_dylibs. It results in errors like this.
ImportError: dlopen(/Users/shadow_walker/some-path/envs/eman-deps-8/lib/python2.7/site-packages/libEM2.so, 2): Symbol not found: _cblas_caxpy
Referenced from: /Users/shadow_walker/some-path/envs/eman-deps-8/lib/libgsl.23.dylib
Expected in: flat namespace
in /Users/shadow_walker/some-path/envs/eman-deps-8/lib/libgsl.23.dylib
It may not be conda/anaconda related exactly, but am posting it here hoping someone would have a suggestion.