FS#49233 - [vtk6] [vtk] vtk6 6.3.0-2 links to wrong version of libhdf5.so
Attached to Project:
Community Packages
Opened by Ferran Pallarès (poinu) - Friday, 06 May 2016, 13:52 GMT
Last edited by Bruno Pagani (ArchangeGabriel) - Tuesday, 16 January 2018, 09:49 GMT
Opened by Ferran Pallarès (poinu) - Friday, 06 May 2016, 13:52 GMT
Last edited by Bruno Pagani (ArchangeGabriel) - Tuesday, 16 January 2018, 09:49 GMT
|
Details
Description:
vtk6 6.3.0-2 provides the file /opt/vtk6/lib/libvtkxdmf2.so. According to ldd, this file links to libhdf5.so.10. However, the current version of hdf5 (1.10.0-1) does not provide that file. Instead, it provides libhdf5.so.100. Additional info: * Packages involved: vtk6 6.3.0-2 and hdf5 1.10.0-1. * Core, extra, community and multilib enabled in /etc/pacman.conf. Testing not enabled. Steps to reproduce: * pacman -Syu hdf5 vtk6 * ldd /opt/vtk6/lib/libvtkxdmf2.so Then we get as output: [...] libhdf5.so.10 => not found [...] |
This task depends upon
Closed by Bruno Pagani (ArchangeGabriel)
Tuesday, 16 January 2018, 09:49 GMT
Reason for closing: Fixed
Additional comments about closing: A long time ago, in a far far away repo: https://git.archlinux.org/svntogit/commu nity.git/commit/trunk?h=packages/vtk6&am p;id=b31abb4e82e5514fad2251459d252d15efa dec51
Tuesday, 16 January 2018, 09:49 GMT
Reason for closing: Fixed
Additional comments about closing: A long time ago, in a far far away repo: https://git.archlinux.org/svntogit/commu nity.git/commit/trunk?h=packages/vtk6&am p;id=b31abb4e82e5514fad2251459d252d15efa dec51
I'm sorry to bother and thanks for the work with the package.
ln -s /usr/lib/libhdf5.so.100.0.0 /usr/lib/libhdf5.so.10
Just be sure to remove it before the fix! :)
If you need a fix now, rebuild it yourself. It's not difficult, although I don't know what kind of resources this needs.
A workaround is extracting the old library from the package and putting it into /usr/lib/. That's entirely fine apart from the fact that you then have an untracked file that will never be updated or remove, but it will not break stuff.
Another workaround is simply not updating the affected packages.
First, it does not even configure in order to generate the Makefiles. I've managed to fix this applying the following patch: https://gist.github.com/rafamanzo/2a6b86dc868e8bcd9394680db0174e1d
After that, XdmfH5Driver.cxx fails to compile at line 190. This is probably due to HDF5 new version incompatibility. I've "fixed" this one by modifying the PKGBUILD removing the HDF5 entry from the libs list (`for lib in `) that are used from the system.
Now, after installing, it is working for me the same way it was before :)
I'm rather busy with uni right now and forgot about this bug. Sorry.
To make it work, we first need to patch the cmake stuff to recognize the hdf5_18 package instead of the normal hdf5 package. Then we still need to hdf5 dependency because of other features in vtk. I'm not sure if this will work out or not or this will give some strange internal version conflicts (as I have no knowledge of the vtk codebase). So, is the hdf5_18 package to correct way to fix this issue, I'm not sure.
Anyway, if you can provide any help that would be greatly appreciated.
$ python2 -c 'import vtk'
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/usr/lib/python2.7/site-packages/vtk/__init__.py", line 143, in <module>
from .vtkIOXdmf2 import *
File "/usr/lib/python2.7/site-packages/vtk/vtkIOXdmf2.py", line 9, in <module>
from vtkIOXdmf2Python import *
ImportError: No module named vtkIOXdmf2Python
$ ls -l /usr/lib/python2.7/site-packages/vtk/vtkIOXdmf2Python.so
-rwxr-xr-x 1 root root 6008 feb 17 22:28 /usr/lib/python2.7/site-packages/vtk/vtkIOXdmf2Python.so
$ ldd /usr/lib/python2.7/site-packages/vtk/vtkIOXdmf2Python.so | grep hdf5
libhdf5.so.10 => not found
I can hack around this by not loading the broken Python modules, but doing anything with Xdmf files requires hdf5.
And the binary I've just built: http://chyen.twbbs.org/downloads/vtk6-6.3.0-3-x86_64.pkg.tar.xz.
That's still only a temporary measure, as it completely disables Xdmf support.
@Anatol: I can't currently build vtk. Can you look into that? I'm not sure what is going on here.
==> Starting build()...
-- The C compiler identification is GNU 6.1.1
-- The CXX compiler identification is GNU 6.1.1
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found Tclsh: /bin/tclsh (found version "8.6")
-- Found TCL: /usr/lib64/libtcl.so
-- Found TCLTK: /usr/lib64/libtcl.so
-- Found TK: /usr/lib64/libtk.so
-- Found Java: /usr/lib/jvm/default/bin/java (found version "1.7.0.101")
-- Found JNI: /usr/lib64/jvm/default/jre/lib/amd64/libjawt.so
-- Performing Test HAVE_GCC_ERROR_RETURN_TYPE
-- Performing Test HAVE_GCC_ERROR_RETURN_TYPE - Success
-- Performing Test HAVE_GCC_VISIBILITY
-- Performing Test HAVE_GCC_VISIBILITY - Success
CMake Error at CMake/vtkCompilerExtras.cmake:47 (if):
if given arguments:
"cc: error: ARGS: No such file or directory
cc (GCC) 6.1.1 20160707
Copyright (C) 2016 Free Software Foundation, Inc.
This is free software" " see the source for copying conditions. There is
NO
warranty" " not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.
" "VERSION_GREATER" "4.2.0" "AND" "BUILD_SHARED_LIBS" "AND"
"HAVE_GCC_VISIBILITY" "AND" "VTK_USE_GCC_VISIBILITY" "AND" "NOT" "MINGW"
"AND" "NOT" "CYGWIN"
Unknown arguments specified
Call Stack (most recent call first):
CMakeLists.txt:286 (include)
-- Configuring incomplete, errors occurred!
Secondly, can we expect a new fixed release for vtk (version 7 package) as well?
Thanks a lot!