|
Notes |
|
|
(0034108)
|
|
Mike Landis
|
|
2015-01-25 16:35
|
|
|
vtk-tcl-6.1.0-18.fc21.i686 also installed |
|
|
|
(0034145)
|
|
Orion Poplawski
|
|
2015-02-03 17:46
|
|
Debian appears to have moved all of the *TCL* libraries into /usr/lib and dropped the soname suffix (e.g. .so.1 -> .so).
The Fedora build uses:
-DVTK_CUSTOM_LIBRARY_SUFFIX="" \
-DVTK_INSTALL_LIBRARY_DIR:PATH=%{_lib}/vtk \
-DVTK_INSTALL_TCL_DIR:PATH=share/tcl%{tcl_version}/vtk \
We get:
/usr/lib64/vtk/libvtkCommonCoreTCL.so.1
Looks like vtk's tcl loader assumes too much:
::vtk::init::load_library_package {vtk${kit}TCL} {[file dirname [file dirname [file dirname [info script]]]]}
proc load_library_package {libName libPath {libPrefix {lib}}} {
#first try to load a static package, then try the shared package.
if {[catch "load {} $libName"]} {
set libExt [info sharedlibextension]
set currentDirectory [pwd]
set libFile [file join $libPath "$libPrefix$libName-6.1$libExt"]
if {[catch "cd {$libPath}; load {$libFile}" errorMessage]} {
puts $errorMessage
}
cd $currentDirectory
}
}
Needs to know the directory the libraries are in, and needs take into account library suffix or not. |
|
|
|
(0034146)
|
|
Orion Poplawski
|
|
2015-02-03 17:50
|
|
if(DEFINED VTK_CUSTOM_LIBRARY_SUFFIX)
set(_lib_suffix "${VTK_CUSTOM_LIBRARY_SUFFIX}")
else()
set(_lib_suffix "-${VTK_MAJOR_VERSION}.${VTK_MINOR_VERSION}")
endif()
set_property(TARGET ${_name} PROPERTY OUTPUT_NAME ${_vtk}${_name}${_lib_suffix})
this _lib_suffix needs to get propagated to:
Wrapping/Tcl/pkgIndex.tcl.in:
set libFile [file join $libPath "$libPrefix$libName-@VTK_MAJOR_VERSION@.@VTK_MINOR_VERSION@$libExt"] |
|
|
|
(0034147)
|
|
Orion Poplawski
|
|
2015-02-03 17:55
|
|
It seems like in Wrapping/Tcl/CMakeLists.txt VTK_TCL_LIBRARY_DIR gets set in two places:
if(VTK_TCL_CONFIGURATION_TYPES)
foreach(config ${VTK_TCL_CONFIGURATION_TYPES})
set(VTK_TCL_LIBRARY_DIR "${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/${config}")
configure_file(${VTK_SOURCE_DIR}/Wrapping/Tcl/pkgIndex.tcl.in
${VTK_BINARY_DIR}/Wrapping/Tcl/${config}/pkgIndex.tcl
@ONLY)
endforeach()
else()
set(VTK_TCL_LIBRARY_DIR "${CMAKE_LIBRARY_OUTPUT_DIRECTORY}")
configure_file(${VTK_SOURCE_DIR}/Wrapping/Tcl/pkgIndex.tcl.in
${VTK_BINARY_DIR}/Wrapping/Tcl/pkgIndex.tcl
@ONLY)
endif()
and then later:
IF(UNIX)
SET(VTK_TCL_LIBRARY_DIR "[file dirname [file dirname [file dirname [info script]]]]")
ELSE(UNIX)
SET(VTK_TCL_LIBRARY_DIR
"[file join [file dirname [file dirname [file dirname [file dirname [info script]]]]] bin]") |
|
|
|
(0034149)
|
|
Orion Poplawski
|
|
2015-02-03 18:21
|
|
Other probable locations needing fixing:
VTK.git/Wrapping/Tcl/vtkbase/vtkbase.tcl.in: set libname [file join $dir ${prefix}${name}-@VTK_MAJOR_VERSION@.@VTK_MINOR_VERSION@${ext}]
VTK.git/CMake/vtkModuleMacros.cmake: set(_lib_suffix "-${VTK_MAJOR_VERSION}.${VTK_MINOR_VERSION}")
VTK.git/ThirdParty/hdf5/vtkhdf5/config/cmake/HDFMacros.cmake: set(_lib_suffix "-${VTK_MAJOR_VERSION}.${VTK_MINOR_VERSION}") |
|
|
|
(0034151)
|
|
Orion Poplawski
|
|
2015-02-03 19:06
|
|
This should fix the library path issue:
--- VTK-6.1.0/Wrapping/Tcl/CMakeLists.txt.tcllib 2014-01-22 08:55:41.000000000 -0700
+++ VTK-6.1.0/Wrapping/Tcl/CMakeLists.txt 2015-02-03 16:12:42.635456315 -0700
@@ -261,7 +261,7 @@ endforeach()
# Configure the Tcl package index file for the install tree.
SET(VTK_TCL_SCRIPT_DIR "[file dirname [info script]]")
IF(UNIX)
- SET(VTK_TCL_LIBRARY_DIR "[file dirname [file dirname [file dirname [info script]]]]")
+ SET(VTK_TCL_LIBRARY_DIR "${CMAKE_INSTALL_PREFIX}/${VTK_INSTALL_LIBRARY_DIR}")
ELSE(UNIX)
SET(VTK_TCL_LIBRARY_DIR
"[file join [file dirname [file dirname [file dirname [file dirname [info script]]]]] bin]")
For the Fedora build I've just hacked off the suffix in the tcl.in files. A proper fix would propagate a VTK_LIBRARY_SUFFIX variable. |
|
|
|
(0034152)
|
|
Orion Poplawski
|
|
2015-02-03 23:55
|
|
|
|
|
(0034158)
|
|
Dave DeMarle
|
|
2015-02-05 11:52
|
|
@Orion - is the patch complete?
@ Ben, is this patch:
* in the set you scooped up for inclusion in vtk master?
* unlikely to break anything? - if so let's hold off merging until the imminent 6.2 release is over |
|
|
|
(0034166)
|
|
Orion Poplawski
|
|
2015-02-05 12:23
|
|
|
No the patch only addresses the library location issue, but not the library suffix issue. I've got a Fedora specific patch in place, so I'm happy for now. |
|
|
|
(0034189)
|
|
Dave DeMarle
|
|
2015-02-07 20:16
|
|
|
Thanks, ping us after the 6.2 release please and if we need the big guns, we'll get Dave Gobbi's attention. :) |
|
|
|
(0037362)
|
|
Kitware Robot
|
|
2016-08-12 09:55
|
|
Resolving issue as `moved`.
This issue tracker is no longer used. Further discussion of this issue may take place in the current VTK Issues page linked in the banner at the top of this page. |
|