[Paraview] Linking failure of vtkpython on Mac OS X 10.5 for Paraview3-CVS
Berk Geveci
berk.geveci at kitware.com
Tue Aug 11 09:32:00 EDT 2009
I committed a fix to this problem - which happened only with the Qt
binaries from Trolltech not if you built Qt from source. I believe
that this is a small problem with the way they are creating their
libraries and I will report it to Nokia.
-berk
On Mon, Aug 10, 2009 at 2:49 AM, Michael Wild<themiwi at gmail.com> wrote:
>
> On 9. Aug, 2009, at 20:59, Michael Wild wrote:
>
>>
>> On 9. Aug, 2009, at 18:02, Michael Wild wrote:
>>
>>>
>>> On 9. Aug, 2009, at 16:51, Mike Jackson wrote:
>>> [fixed TOFU]
>>>>
>>>> On Sun, Aug 9, 2009 at 9:17 AM, Michael Wild<themiwi at gmail.com> wrote:
>>>>>
>>>>> Hi all
>>>>>
>>>>> When I try to build a current version of ParaView3 from CVS on Mac OS X
>>>>> 10.5.7 with Qt 4.5 (the official distribution), cmake-2.6-3 and
>>>>> PARAVIEW_ENABLE_PYTHON=TRUE, linking of vtkpython fails with:
>>>>>
>>>>> /usr/bin/c++ -Wno-deprecated -Wno-deprecated -O3 -DNDEBUG
>>>>> -Wl,-search_paths_first -headerpad_max_install_names -fPIC
>>>>> -flat_namespace
>>>>> -undefined suppress -u _PyMac_Error
>>>>> CMakeFiles/vtkpython.dir/vtkPythonAppInit.cxx.o -o
>>>>> ../../../bin/vtkpython
>>>>> -lpthread -framework Python ../../../bin/libvtksys.pv3.7.dylib
>>>>> ../../../bin/libvtkCommon.pv3.7.dylib
>>>>> ../../../bin/libvtkFiltering.pv3.7.dylib
>>>>> ../../../bin/libvtkIO.pv3.7.dylib
>>>>> ../../../bin/libvtkGraphics.pv3.7.dylib
>>>>> ../../../bin/libvtkImaging.pv3.7.dylib /usr/lib/libutil.dylib
>>>>> ../../../bin/libvtkRendering.pv3.7.dylib
>>>>> ../../../bin/libvtkVolumeRendering.pv3.7.dylib
>>>>> ../../../bin/libvtkHybrid.pv3.7.dylib
>>>>> ../../../bin/libvtkWidgets.pv3.7.dylib
>>>>> ../../../bin/libvtkParallel.pv3.7.dylib
>>>>> ../../../bin/libvtkGeovis.pv3.7.dylib
>>>>> ../../../bin/libvtkInfovis.pv3.7.dylib
>>>>> ../../../bin/libvtkViews.pv3.7.dylib
>>>>> ../../../bin/libvtkInfovis.pv3.7.dylib
>>>>> ../../../bin/libvtkWidgets.pv3.7.dylib
>>>>> ../../../bin/libvtkHybrid.pv3.7.dylib
>>>>> ../../../bin/libvtkParallel.pv3.7.dylib
>>>>> ../../../bin/libvtkRendering.pv3.7.dylib
>>>>> ../../../bin/libvtkIO.pv3.7.dylib
>>>>> ../../../bin/libvtkDICOMParser.pv3.7.dylib
>>>>> ../../../bin/libvtkNetCDF.pv3.7.dylib
>>>>> ../../../bin/libvtkmetaio.pv3.7.dylib
>>>>> ../../../bin/libvtksqlite.pv3.7.dylib
>>>>> ../../../bin/libvtkpng.pv3.7.dylib
>>>>> ../../../bin/libvtkzlib.pv3.7.dylib ../../../bin/libvtkjpeg.pv3.7.dylib
>>>>> ../../../bin/libvtktiff.pv3.7.dylib
>>>>> ../../../bin/libvtkexpat.pv3.7.dylib
>>>>> ../../../bin/libvtkGraphics.pv3.7.dylib
>>>>> ../../../bin/libvtkverdict.pv3.7.dylib
>>>>> ../../../bin/libvtkImaging.pv3.7.dylib
>>>>> ../../../bin/libvtkFiltering.pv3.7.dylib
>>>>> ../../../bin/libvtkCommon.pv3.7.dylib
>>>>> ../../../bin/libvtksys.pv3.7.dylib -lm
>>>>> ../../../bin/libvtkftgl.pv3.7.dylib
>>>>> ../../../bin/libvtkfreetype.pv3.7.dylib
>>>>> ../../../bin/libvtkexoIIc.pv3.7.dylib
>>>>> ../../../bin/libvtklibxml2.pv3.7.dylib
>>>>> ../../../bin/libvtkalglib.pv3.7.dylib
>>>>> ../../../bin/libvtkproj4.pv3.7.dylib
>>>>> ld: file not found: QtGui.framework/Versions/4/QtGui
>>>>> collect2: ld returned 1 exit status
>>>>>
>>>>> Looking at the library references (otool -L), I see that e.g.
>>>>> bin/libvtkRendering.pv3.7.dylib references
>>>>> QtGui.framework/Versions/4/QtGui
>>>>> (that being the install-name of
>>>>> /Library/Frameworks/QtGui.framework/Versions/4/QtGu). Howerver, why the
>>>>> linker isn't able to pick up this dependency isn't clear to me, because
>>>>> it's
>>>>> right there, on the default search path in
>>>>> /Library/Frameworks/QtGui.framework/Versions/4/QtGui.
>>>>>
>>>>> Besides, shouldn't CMake figure out the transitive dependencies and add
>>>>> -framework QtGui (and friends) to the link line automagically?
>>>>>
>>>>> What irritates me, is that the dashboard doesn't show anything
>>>>> (however,
>>>>> that one uses OS X 10.4):
>>>>> http://www.cdash.org/CDash/buildSummary.php?buildid=398013
>>>>>
>>>>> Any idea what's going wrong here?
>>>>>
>>>>> Michael
>>>>>
>>>>
>>>> Not sure what official version of Qt ParaView 3.8 is going to support.
>>>> My hope would be the current version (4.5). If they are still only
>>>> supporting 4.3 (which based on recent email traffic seems to be the
>>>> case) then you may be on your own to try and figure out what is wrong,
>>>> or at least "lead the way". I know I have to patch the ParaView tree
>>>> to get it to build against Qt 4.5 Cocoa and then do some manual file
>>>> copying after the packages are made.
>>>>
>>>> Mike
>>>
>>>
>>> I don't think this is true. Have a look at the following file (which
>>> currently is HEAD), starting from line 94:
>>>
>>>
>>> http://public.kitware.com/cgi-bin/viewcvs.cgi/CMakeLists.txt?annotate=1.108&root=ParaView3
>>>
>>>
>>> Michael
>>
>>
>> Ok, I kind of tracked it down, although I couldn't solve it... Through
>> bisection I found the following:
>>
>> - Before the commit from Fri Jul 31 14:52:47 2009 "ENH: Applying patch
>> transitive3.patch, see vtk-dev thread #Use LINK_INTERFACE_LIBRARIES for VTK
>> libs" by Mathieu Malaterre vtkpython compiles just fine. This commit then
>> causes the linking of the vtkParallel library to fail (looks like missing
>> OpenGL libraries to me).
>>
>> - All subsequent commits have the same problem, until...
>>
>> - the commit from Fri Jul 31 19:25:31 2009 by David Partyka titled "COMP:
>> link Parallel against opengl when rendering is enabled." introduces the
>> linking failure described in my first message.
>>
>>
>> Michael
>>
>
>
> Linking vtkpython against vtkQtChart solves the problem for me. However, I'm
> not sure this is the proper thing to do...
>
> diff --git a/VTK/Wrapping/Python/CMakeLists.txt
> b/VTK/Wrapping/Python/CMakeLists.txt
> index 932ac7f..afb7e72 100644
> --- a/VTK/Wrapping/Python/CMakeLists.txt
> +++ b/VTK/Wrapping/Python/CMakeLists.txt
> @@ -57,7 +57,8 @@ SET(VTKPYTHON_LINK_LIBS
> vtkFiltering
> vtkIO
> vtkGraphics
> - vtkImaging )
> + vtkImaging
> + vtkQtChart )
>
> SET (vtkpython_pyc_depends
> vtkCommonPython
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the ParaView Wiki at:
> http://paraview.org/Wiki/ParaView
>
> Follow this link to subscribe/unsubscribe:
> http://www.paraview.org/mailman/listinfo/paraview
>
More information about the ParaView
mailing list