-
-
Notifications
You must be signed in to change notification settings - Fork 54
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
Linker issues against 1.8.18-1 but not against 1.8.17. #74
Comments
I guess because we didn't build the static libraries with |
--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 |
Might also need |
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 |
In looking back, right now, it looks like the successful build is using 1.8.17-2 from I'm a bit green with recipes and |
So it does seem to be the case that we can build using 1.8.17-2 from |
Do you have links to the logs where this issue occurs? |
hdf5_1.8.17_conda_forge.txt, generated by 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 |
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. |
I'm not sure to be honest, this fell off my radar, but I think we still want |
I'm pretty sure |
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. |
I'm receiving linker errors against 1.8.18-1 (
conda-forge
) that I was not receiving against 1.8.17-2 (defaults
). The linker errors suggest that the HDF5 shared libraries are not being built, however an unpacking of the 1.8.18-1 conda package does show the.so
files, and my read of the./configure
inbuild.sh
suggests they are being built as it's enabled by default (at least when I last checked HDF5 source). Is there any known reason for why linking would break between these builds?EDITED: the issue is actually a discrepancy between
defaults
andconda-forge
feedstocks.I'm getting similar linking issues on 1.10.1.
The text was updated successfully, but these errors were encountered: