Comments (12)
I guess because we didn't build the static libraries with -fPIC
. Would you like to submit a PR?
from hdf5-feedstock.
--enable-shared
was default yes
in 1.8.12, which is the only source I have locally at the moment:
--enable-shared[=PKGS] build shared libraries [default=yes]
Do you think HDF5 changed that default given that 1.8.17-11 from conda-forge seems to work? There are .so files though associated with 1.8.18-1, which adds to the confusion. I'll issue a PR momentarily explicitly enabling though.
$ ls /home/mcdonadt/miniconda3/conda-bld/unifrac_1506052330974/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_/lib/*hdf5*.so
lrwxrwxrwx 1 dtmcdonald knightlab 17 Sep 21 20:53 /home/mcdonadt/miniconda3/conda-bld/unifrac_1506052330974/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_/lib/libhdf5.so -> libhdf5.so.10.2.1
lrwxrwxrwx 1 dtmcdonald knightlab 21 Sep 21 20:53 /home/mcdonadt/miniconda3/conda-bld/unifrac_1506052330974/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_/lib/libhdf5_cpp.so -> libhdf5_cpp.so.13.0.0
lrwxrwxrwx 1 dtmcdonald knightlab 25 Sep 21 20:53 /home/mcdonadt/miniconda3/conda-bld/unifrac_1506052330974/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_/lib/libhdf5_fortran.so -> libhdf5_fortran.so.10.0.4
lrwxrwxrwx 1 dtmcdonald knightlab 20 Sep 21 20:53 /home/mcdonadt/miniconda3/conda-bld/unifrac_1506052330974/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_/lib/libhdf5_hl.so -> libhdf5_hl.so.10.1.1
lrwxrwxrwx 1 dtmcdonald knightlab 24 Sep 21 20:53 /home/mcdonadt/miniconda3/conda-bld/unifrac_1506052330974/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_/lib/libhdf5_hl_cpp.so -> libhdf5_hl_cpp.so.11.1.0
lrwxrwxrwx 1 dtmcdonald knightlab 27 Sep 21 20:53 /home/mcdonadt/miniconda3/conda-bld/unifrac_1506052330974/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_/lib/libhdf5hl_fortran.so -> libhdf5hl_fortran.so.10.0.3
from hdf5-feedstock.
Considering as the shared libraries are already there as we can both see. I don't think that is the issue. If HDF5 is already building with -fPIC
, then I'm mystified as to why the linker can't figure out what to do. Is this coming from some other feedstock in conda-forge?
from hdf5-feedstock.
Might also need --with-pic
although, like --enable-shared
, I believe it is enabled already (i.e. default=use both).
from hdf5-feedstock.
hdf5: 1.8.18-1 conda-forge
In looking back, right now, it looks like the successful build is using 1.8.17-2 from defaults
at build. It successfully links at runtime against 1.8.17-11 from conda-forge
, which I think drove some confusion -- for a little more context, the forced replacement of hdf5
on that line allowed that repo to use our problematic library. I'm testing 1.8.17 at build from conda-forge
right now.
I'm a bit green with recipes and conda build
has a learning curve, so apologize if I'm making any naive mistakes. And thank you for the help.
from hdf5-feedstock.
So it does seem to be the case that we can build using 1.8.17-2 from defaults
but are unable to build using conda-forge
, and tried with 1.8.17, 1.8.18, and 1.10.1.
from hdf5-feedstock.
Do you have links to the logs where this issue occurs?
from hdf5-feedstock.
hdf5_1.8.17_conda_forge.txt, generated by $ conda build -c biocore -c conda-forge unifrac &> hdf5_1.8.17_conda_forge.txt
hdf5_1.8.17_defaults.txt, generated by conda build -c biocore unifrac &> hdf5_1.8.17_defaults.txt
Using a modified version of this recipe for the build where I just further reduced the build reqs as there was some fluff, and specified the specific hdf5 version.
$ git diff unifrac/meta.yaml
diff --git a/recipes/unifrac/meta.yaml b/recipes/unifrac/meta.yaml
index 78515fe..9b0b11f 100644
--- a/recipes/unifrac/meta.yaml
+++ b/recipes/unifrac/meta.yaml
@@ -16,16 +16,14 @@ requirements:
- python 3.5*
- gcc # [not osx]
- llvm # [osx]
- - hdf5
- - h5py
+ - hdf5 ==1.8.17
- cython
- - biom-format
- - scikit-bio
+ - numpy
run:
- python 3.5*
- libgcc # [not osx]
- - hdf5
+ - hdf5 ==1.8.17
- h5py
- cython
- biom-format
from hdf5-feedstock.
Anything more to do here @wasade? I think we leapfrogged to 1.10.1 for the most part. If you have issues with that version as well, maybe we should create a new issue.
from hdf5-feedstock.
I'm not sure to be honest, this fell off my radar, but I think we still want --enable-shared
set at ./configure
?
from hdf5-feedstock.
I'm pretty sure --enable-shared
is default otherwise we wouldn't be getting dynamic/shared objects, which do we have in the package. So don't think that would fix the issue.
from hdf5-feedstock.
Added PR ( #82 ), which cherry picks your change and adds PIC flags. I suspect the PIC flags will fix the issue. The HDF5 docs suggest they use both, which I'm not really sure how that works. Normally one uses PIC or they don't. Plus the error message cited above is a typical non-PIC build issue. Would encourage you to retest after we merge that. We can cherry-pick the change to 1.8 builds as well.
from hdf5-feedstock.
Related Issues (20)
- Issues with the strings function in Linux systems. HOT 2
- missing `dev_url` and `doc_url` on the recipe HOT 1
- 1.10.x+osx+Fortran: possible? HOT 3
- @conda-forge-admin add user hmaarrfk
- @conda-forge-admin, please add user @hmaarrfk HOT 1
- @conda-forge-admin please rerender HOT 1
- @conda-forge-admin please rerender HOT 1
- Add "external" dummy builds HOT 11
- BUG: New linking issue on 1.12.2 for macOS x86_64 CPython HOT 4
- @conda-forge-admin please add user @varlackc HOT 1
- macOS CI builds failing HOT 2
- Getting rid of the `-static` builds HOT 2
- Should we ship GIF Tools? Unaddressed CVE's and HDF5
- HDF 1.14.0 links to MPI publically
- cannot find windows executables with 1.14.0 HOT 2
- OpenSSL 1 build? HOT 8
- Bug with imported Cmake target 1.14.0 HOT 12
- SZIP/libaec support on Windows HOT 3
- Feedstocks that build both HDF5 1.12.2 and 1.14.0 HOT 4
- cmake doesn't add libhdf_cpp to command line when CXX component is specified HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from hdf5-feedstock.