Bug 462406 - vtk-devel misses dependencies: mesa-libOSMesa-devel, expat-devel
vtk-devel misses dependencies: mesa-libOSMesa-devel, expat-devel
Status: CLOSED DUPLICATE of bug 605640
Product: Fedora
Classification: Fedora
Component: vtk (Show other bugs)
All Linux
medium Severity medium
: ---
: ---
Assigned To: Axel Thimm
Fedora Extras Quality Assurance
: Reopened, Triaged
Depends On:
  Show dependency treegraph
Reported: 2008-09-15 18:34 EDT by Torsten Rohlfing
Modified: 2010-07-05 15:59 EDT (History)
1 user (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2010-07-05 15:59:35 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Torsten Rohlfing 2008-09-15 18:34:29 EDT
Description of problem:

The VTK library dependencies /usr/lib/vtk-5.0/VTKLibraryDepends.cmake list /usr/lib/libOSMesa.so, which does not exist (i.e., is not provided by current mesa-libOSMesa-7.1-0.37.fc9.i386.rpm)

Version-Release number of selected component (if applicable):


How reproducible:

Build project using CMake that is supposed to use VTK.

Steps to Reproduce:
1. Include "FindVTK.cmake" in CMakeList.txt
2. Include "UseVTK.cmake" in CMakeList.txt
3. Add application build definition, then cmake, make.
Actual results:

make[2]: *** No rule to make target `/usr/lib/libOSMesa.so', needed by `bin/align_landmarks'.  Stop.

Expected results:

Should build user application and link against /usr/lib/libOSMesa.so.6

Additional info:

Same problem exists on x86_64 platform, with /usr/lib64/libOSMesa.so not existing.
Comment 1 Orion Poplawski 2008-09-16 12:26:48 EDT
Install mesa-libOSMesa-devel to get libOSMesa.so.  vtk-devel probably should have a Requires: mesa-libOSMesa-devel added.
Comment 2 Torsten Rohlfing 2008-09-16 12:59:42 EDT
Yes, installing mesa-libOSMesa-devel fixes the problem. 

I agree that adding the dependency would make sense, although I am not entirely sure why mesa-libOSMesa-devel adds the "libOSMesa.so" symbolic link, when mesa-libOSMesa adds a symbolic link "libOSMesa.so.6"; but I guess that's beside the point as far as the vtk packages are concerned.

In the alternative, is it possible to build VTK in such a way that it is built against libOSMesa.so.6 rather than libOSMesa.so? This way, RPM dependencies could be maintained, and one would avoid the otherwise unnecessary installation of the libOSMesa devel package.
Comment 3 Axel Thimm 2008-09-16 15:59:09 EDT
Torsten, thanks for reporting - Orion's suggestion is correct, the dependency is simply missing in *-devel.

As to *.so vs *.so.<number>: The latter is already automatically picked up by rpm for the runtime components, but the *.so is what you want to build against (which is just a symlink, but still is the first order link target).

There is a new vtk pending anyway due to a new upstream release. Until the package is hammered up, please just install mesa-libOSMesa-devel wherever you use vtk-devel in the way you quote above.
Comment 4 Torsten Rohlfing 2008-09-16 16:37:07 EDT
For what it's worth: VTK also requires /usr/lib64/libexpat.so, but the provider package, expat-devel, is not an RPM dependency of vtk.

I assume that's not worth a separate bug report?
Comment 5 Orion Poplawski 2008-09-18 12:55:42 EDT
Of course, it's all going to depend on what VTK libraries you use as to what other -devel packages you need.  Not sure you want to add all of them as requires to vtk-devel.


SET(vtkCommonTCL_LIB_DEPENDS "vtkCommon;/usr/lib/libtcl.so;m;")
SET(vtkIO_LIB_DEPENDS "vtkFiltering;vtkDICOMParser;/usr/lib/libpng.so;/usr/lib/libz.so;/usr/lib/libz.so;/usr/lib/libjpeg.so;/usr/lib/libtiff.so;/usr/lib/libexpat.so;")
SET(vtkRendering_LIB_DEPENDS "vtkGraphics;vtkImaging;vtkIO;vtkftgl;/usr/lib/libfreetype.so;/usr/lib/libz.so;/usr/lib/libGL.so;/usr/lib/libOSMesa.so;-lXt;-lSM;-lICE;-lSM;-lICE;/usr/lib/libX11.so;/usr/lib/libXext.so;/usr/lib/libX11.so;/usr/lib/libXext.so;")
SET(vtkRenderingPythonTkWidgets_LIB_DEPENDS "vtkRendering;/usr/lib/libtk.so;/usr/lib/libtcl.so;m;")
SET(vtkRenderingTCL_LIB_DEPENDS "vtkRendering;vtkGraphicsTCL;vtkImagingTCL;/usr/lib/libtk.so;/usr/lib/libtcl.so;m;")
SET(vtkVolumeRendering_LIB_DEPENDS "vtkRendering;vtkIO;/usr/lib/libOSMesa.so;")
SET(vtkftgl_LIB_DEPENDS "/usr/lib/libGL.so;/usr/lib/libfreetype.so;")
SET(QVTK_LIB_DEPENDS "/usr/lib/qt-3.3/lib/libqt-mt.so;vtkRendering;vtkGraphics;vtkImaging;vtkCommon;")
SET(QVTKWidgetPlugin_LIB_DEPENDS "/usr/lib/qt-3.3/lib/libqt-mt.so;vtkRendering;vtkIO;vtkImaging;vtkGraphics;vtkFiltering;vtkCommon;")
Comment 6 Bug Zapper 2009-06-09 22:43:40 EDT
This message is a reminder that Fedora 9 is nearing its end of life.
Approximately 30 (thirty) days from now Fedora will stop maintaining
and issuing updates for Fedora 9.  It is Fedora's policy to close all
bug reports from releases that are no longer maintained.  At that time
this bug will be closed as WONTFIX if it remains open with a Fedora 
'version' of '9'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version prior to Fedora 9's end of life.

Bug Reporter: Thank you for reporting this issue and we are sorry that 
we may not be able to fix it before Fedora 9 is end of life.  If you 
would still like to see this bug fixed and are able to reproduce it 
against a later version of Fedora please change the 'version' of this 
bug to the applicable version.  If you are unable to change the version, 
please add a comment here and someone will do it for you.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events.  Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

The process we are following is described here: 
Comment 7 Bug Zapper 2009-07-14 12:51:41 EDT
Fedora 9 changed to end-of-life (EOL) status on 2009-07-10. Fedora 9 is 
no longer maintained, which means that it will not receive any further 
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of 
Fedora please feel free to reopen this bug against that version.

Thank you for reporting this bug and we are sorry it could not be fixed.
Comment 8 Axel Thimm 2009-07-15 06:41:11 EDT
I need to check whether this is really fixed or not, setting to rawhide.
Comment 9 Axel Thimm 2009-07-23 05:55:12 EDT
(In reply to comment #4)
> For what it's worth: VTK also requires /usr/lib64/libexpat.so, but the provider
> package, expat-devel, is not an RPM dependency of vtk.
> I assume that's not worth a separate bug report?  

Torsten, can you point me to where vtk (runtime/devel) requires libexpat.so? I'd like to collect all pieces for vtk-devel. Thanks!
Comment 10 Torsten Rohlfing 2009-07-23 13:40:55 EDT
> Torsten, can you point me to where vtk (runtime/devel) requires libexpat.so?
> I'd like to collect all pieces for vtk-devel. Thanks!  


On x86_64/F11, line 36 in /usr/lib64/vtk-5.2/VTKLibraryDepends.cmake says

  SET("vtkIO_LIB_DEPENDS" "general;vtkFiltering;general;vtkDICOMParser;general;vtkNetCDF;general;vtkmetaio;general;vtksqlite;general;/usr/lib64/libpng.so;general;/usr/lib64/libz.so;general;/usr/lib64/libz.so;general;/usr/lib64/libjpeg.so;general;/usr/lib64/libtiff.so;general;/usr/lib64/libexpat.so;general;vtksys;")

which has, among other, a dependency to /usr/lib64/libexpat.so. It seems that this link is currently provided by the expat-devel package.

Hope this helps. Thanks for being persistent :)
Comment 11 Bug Zapper 2009-11-16 04:26:50 EST
This bug appears to have been reported against 'rawhide' during the Fedora 12 development cycle.
Changing version to '12'.

More information and reason for this action is here:
Comment 12 Axel Thimm 2010-07-05 15:59:35 EDT

*** This bug has been marked as a duplicate of bug 605640 ***

Note You need to log in before you can comment on or make changes to this bug.