-
-
Notifications
You must be signed in to change notification settings - Fork 34
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
Missing symlinks for libblas.so and liblapack.so #29
Comments
Ah it seems that the symlink were removed by @isuruf in conda-forge/openblas-feedstock@0d1073b. We are relying on this in |
|
I was needing this also for omcompiler : at runtime it needs to link executables with "-lapack -lblas", I was able to work around it with |
This is a runtime thing in cling, and to my knowledge, there is not means to pass the version suffix to the pragma from some sort of runtime detection. |
You could detect the soname of the library at build time and hardcode that into the header |
This is going to be messy in cmake though. So, I'm okay with adding the symlink to |
I'm not so sure about this anymore. I've seen a couple of projects (scipy and another) accidentally linking to How about a |
Are there any cases where the symlinks would be needed in the installation environment? |
@jakirkham, only when a package would dlopen the library at runtime. |
@SylvainCorlay, can you add a dependency on |
ping @SylvainCorlay |
@SylvainCorlay, since you didn't comment, I'll assume that you are okay with moving the symlink to |
Just ran into this on conda-forge/petsc-feedstock#66
Any package that does runtime-compilation with The biggest direct problem I see is that So I'd be a big +1 to reverting #38 to make all libblas builds consistent with each other and consistent with other |
This is the reason why I want the symlinks removed. We don't want packages accidentally linking to one of these implementations. We only want the netlib packages for building. Removing |
Then I would argue that creation of the |
To be consistent, |
PRs welcome. This should also include the header files as well.
Sure. Note that you'll have to be careful in downstream packages about not linking to the shared library from an implementation (instead of netlib ones) |
Will do when I get a chance. I'd start with reverting the symlinks back into libblas so things are consistent again while we get libblas-devel set up, if that's okay.
Yeah, thanks. Not a concern for the packages I'm currently looking at because these are runtime compilation, not build stages for redistribution. Failure to compile with |
Something like below works. I initially thought about making
|
@minrk, @SylvainCorlay, have you added a requirement of |
Ping again |
I had to pull back from a lot of conda-forge stuff for a while, so I just forgot about it. That's on me, though and conda-forge/petsc-feedstock#106 should do it, since all the packages I deal with ultimately depend on petsc. |
Hm, there appear to be some hiccups.
I also see something weird in priority resolution:
requests However, adding blas-devel switches the default to mkl:
gets Similarly, if I try to get blas-devel with openblas:
I get libblas_mkl and openblas. Additionally,
|
It looks like blas-devel package is still incomplete. Tasks left to do before blas-devel can be adopted:
Otherwise, blas-devel cannot be used because it conflicts with the
|
Hm, looks like it's there but out-of-date due to the build string: conda-forge/lapack-feedstock#50 |
conda-forge effectively already has that behavior - we build and link against This issue is just about exactly what package has |
@minrk What do you mean by runtime? |
We had been working around that issue in the xtensor-blas binder by simply requiring Thank you for working this out. |
@dalcinl yes, |
The current version of the openblas package does not include the
.so
symlinks. Onlylibblas.so.3
andliblapack.so.3
are available.The text was updated successfully, but these errors were encountered: