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<[email protected]> 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

Reply via email to