View Issue Details Jump to Notes ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0013656ParaView(No Category)public2012-11-13 18:132016-08-12 09:59
ReporterOrion Poplawski 
Assigned ToKitware Robot 
PrioritynormalSeverityminorReproducibilityhave not tried
StatusclosedResolutionmoved 
PlatformOSOS Version
Product Version 
Target VersionFixed in Version 
Summary0013656: Try to support using system installed protobuf
DescriptionFor Fedora packages, need to use the system installed version of libraries. Attached is a hack to try to do that with 3.98.0. First step is to change:

-vtk_module_third_party(protobuf
+vtk_module_third_party(Protobuf

in ParaView/ThirdParty/protobuf/CMakeLists.txt so that cmake finds FindProtobuf.cmake. Next I hacked out:

+#vtk_target_export(protobuf)
+#vtk_target_export(protobuf-lite)
+#vtk_compile_tools_target_export(protoc_compiler)

because they are not available in that configuration.

Finally, Fedora 18 has protobuf 2.4.1 and the compiler is named "protoc" so I changed the name in ParaView/ParaViewCore/ServerImplementation/Core/CMakeLists.txt and removed protoc_compiler as a build dependency.

Finally though I get the following link error:

/usr/lib64/ccache/g++ -fPIC -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -g -Wl,--fatal-warnings -Wl,--no-undefined -lc -Wl,-z,relro -shared -Wl,-soname,libvtkPVServerImplementationCore-pv3.98.so.1 -o ../../../lib/libvtkPVServerImplementationCore-pv3.98.so.1 CMakeFiles/vtkPVServerImplementationCore.dir/vtkPVCatalystSessionCore.cxx.o CMakeFiles/vtkPVServerImplementationCore.dir/vtkPVProxyDefinitionIterator.cxx.o CMakeFiles/vtkPVServerImplementationCore.dir/vtkPVSessionBase.cxx.o CMakeFiles/vtkPVServerImplementationCore.dir/vtkPVSessionCore.cxx.o CMakeFiles/vtkPVServerImplementationCore.dir/vtkPVSessionCoreInterpreterHelper.cxx.o CMakeFiles/vtkPVServerImplementationCore.dir/vtkPVSessionServer.cxx.o CMakeFiles/vtkPVServerImplementationCore.dir/vtkSIArraySelectionProperty.cxx.o CMakeFiles/vtkPVServerImplementationCore.dir/vtkSICollaborationManager.cxx.o CMakeFiles/vtkPVServerImplementationCore.dir/vtkSICompoundSourceProxy.cxx.o CMakeFiles/vtkPVServerImplementationCore.dir/vtkSIDataArrayProperty.cxx.o CMakeFiles/vtkPVServerImplementationCore.dir/vtkSIDoubleVectorProperty.cxx.o CMakeFiles/vtkPVServerImplementationCore.dir/vtkSIFileSeriesReaderProxy.cxx.o CMakeFiles/vtkPVServerImplementationCore.dir/vtkSIIdTypeVectorProperty.cxx.o CMakeFiles/vtkPVServerImplementationCore.dir/vtkSIInputProperty.cxx.o CMakeFiles/vtkPVServerImplementationCore.dir/vtkSIIntVectorProperty.cxx.o CMakeFiles/vtkPVServerImplementationCore.dir/vtkSIObject.cxx.o CMakeFiles/vtkPVServerImplementationCore.dir/vtkSIProperty.cxx.o CMakeFiles/vtkPVServerImplementationCore.dir/vtkSIProxy.cxx.o CMakeFiles/vtkPVServerImplementationCore.dir/vtkSIProxyDefinitionManager.cxx.o CMakeFiles/vtkPVServerImplementationCore.dir/vtkSIProxyProperty.cxx.o CMakeFiles/vtkPVServerImplementationCore.dir/vtkSISILProperty.cxx.o CMakeFiles/vtkPVServerImplementationCore.dir/vtkSISourceProxy.cxx.o CMakeFiles/vtkPVServerImplementationCore.dir/vtkSIStringVectorProperty.cxx.o CMakeFiles/vtkPVServerImplementationCore.dir/vtkSITimeLabelProperty.cxx.o CMakeFiles/vtkPVServerImplementationCore.dir/vtkSITimeRangeProperty.cxx.o CMakeFiles/vtkPVServerImplementationCore.dir/vtkSITimeStepsProperty.cxx.o CMakeFiles/vtkPVServerImplementationCore.dir/vtkSIVectorProperty.cxx.o CMakeFiles/vtkPVServerImplementationCore.dir/vtkSIWriterProxy.cxx.o CMakeFiles/vtkPVServerImplementationCore.dir/vtkSMMessage.cxx.o ../../../lib/libvtkPVClientServerCoreCore-pv3.98.so.1 -lprotobuf ../../../lib/libvtkFiltersProgrammable-pv3.98.so.1 ../../../lib/libvtkPVPythonSupport-pv3.98.so.1 -lpython2.7 ../../../lib/libvtkPVVTKExtensionsCore-pv3.98.so.1 ../../../lib/libvtkPVCommon-pv3.98.so.1 ../../../lib/libvtkClientServer-pv3.98.so.1 ../../../lib/libvtkIOXML-pv3.98.so.1 ../../../lib/libvtkIOGeometry-pv3.98.so.1 ../../../lib/libvtkIOXMLParser-pv3.98.so.1 -lexpat ../../../lib/libvtkImagingCore-pv3.98.so.1 ../../../lib/libvtkInfovisCore-pv3.98.so.1 ../../../lib/libvtkFiltersExtraction-pv3.98.so.1 ../../../lib/libvtkFiltersGeneral-pv3.98.so.1 ../../../lib/libvtkFiltersCore-pv3.98.so.1 ../../../lib/libvtkCommonComputationalGeometry-pv3.98.so.1 ../../../lib/libvtkParallelCore-pv3.98.so.1 ../../../lib/libvtkIOLegacy-pv3.98.so.1 ../../../lib/libvtkIOCore-pv3.98.so.1 ../../../lib/libvtkCommonExecutionModel-pv3.98.so.1 ../../../lib/libvtkCommonDataModel-pv3.98.so.1 ../../../lib/libvtkCommonSystem-pv3.98.so.1 ../../../lib/libvtkCommonTransforms-pv3.98.so.1 ../../../lib/libvtkCommonMisc-pv3.98.so.1 ../../../lib/libvtkCommonMath-pv3.98.so.1 ../../../lib/libvtkCommonCore-pv3.98.so.1 ../../../lib/libvtksys-pv3.98.so.1 -ldl -lz -Wl,-rpath,/export/home/orion/fedora/paraview/ParaView/fedora/lib:
CMakeFiles/vtkPVServerImplementationCore.dir/vtkSMMessage.cxx.o: In function `protobuf_AssignDescriptorsOnce':
CMakeFiles/vtkPVServerImplementationCore.dir/vtkSMMessage.cxx.o:/usr/include/google/protobuf/stubs/once.h:115: more undefined references to `pthread_once' follow

It's going to need to link against -lpthread but I don't know the best way to handle that.
TagsNo tags attached.
ProjectTBD
Topic Name
Typefeature
Attached Filespatch file icon paraview-Protobuf.patch [^] (2,540 bytes) 2012-11-13 18:13 [Show Content]
patch file icon paraview-4.0.1-Protobuf.patch [^] (3,064 bytes) 2013-07-29 10:59 [Show Content]
patch file icon paraview-4.2RC1-Protobuf.patch [^] (2,855 bytes) 2014-09-03 18:39 [Show Content]
patch file icon paraview-cmake.patch [^] (959 bytes) 2014-09-05 11:33 [Show Content]

 Relationships

  Notes
(0031359)
hasufell (reporter)
2013-07-29 10:59

Updated for paraview-4.0.1, with proper conditionals so both ON and OFF work as expected

lpthread problem solved as well
(0031363)
Orion Poplawski (reporter)
2013-07-29 17:07

Updated patch works for me.
(0033306)
Orion Poplawski (reporter)
2014-09-03 14:10

With 4.2RC1 things will need to get updated as well. Looks like even less support for configuring it.
(0033307)
Orion Poplawski (reporter)
2014-09-03 18:41

Updated patch. Not sure if I need to re-add the thread stuff. There are problems interacting with the cmake FindProtobuf module (see also http://www.cmake.org/Bug/view.php?id=15128 [^]) due to its adding of items to PROTOBUF_LIBRARIES. Any suggestions there appreciated.
(0033309)
Orion Poplawski (reporter)
2014-09-04 12:33

These are the errors I get when the system FindProtobuf add -lpthread to PROTOBUF_LIBRARIES:

CMake Error at CommandLineExecutables/CMakeLists.txt:71 (get_property):
  get_property could not find TARGET -lpthread. Perhaps it has not yet been
  created.


CMake Error at CommandLineExecutables/CMakeLists.txt:76 (get_property):
  get_property could not find TARGET -lpthread. Perhaps it has not yet been
  created.

Not sure if this is more of an issue with the ParaView cmake code making assumptions about various libraries, or something that should be fixed in cmake's FindProtobuf.
(0033312)
Orion Poplawski (reporter)
2014-09-05 12:06

paraview-cmake.patch is a patch suggested by the cmake folks to handle different kinds of entries in vtk_module_libraries. Appears to work for me.
(0034391)
Orion Poplawski (reporter)
2015-04-30 11:52

I believe this can be closed now as paraview does support the -DVTK_USE_SYSTEM_PROTOBUF:BOOL=ON option now.
(0038279)
Kitware Robot (administrator)
2016-08-12 09:59

Resolving issue as `moved`.

This issue tracker is no longer used. Further discussion of this issue may take place in the current ParaView Issues page linked in the banner at the top of this page.

 Issue History
Date Modified Username Field Change
2012-11-13 18:13 Orion Poplawski New Issue
2012-11-13 18:13 Orion Poplawski File Added: paraview-Protobuf.patch
2013-07-29 10:59 hasufell File Added: paraview-4.0.1-Protobuf.patch
2013-07-29 10:59 hasufell Note Added: 0031359
2013-07-29 17:07 Orion Poplawski Note Added: 0031363
2014-09-03 14:10 Orion Poplawski Note Added: 0033306
2014-09-03 18:39 Orion Poplawski File Added: paraview-4.2RC1-Protobuf.patch
2014-09-03 18:41 Orion Poplawski Note Added: 0033307
2014-09-04 12:33 Orion Poplawski Note Added: 0033309
2014-09-05 11:33 Orion Poplawski File Added: paraview-cmake.patch
2014-09-05 12:06 Orion Poplawski Note Added: 0033312
2015-04-30 11:52 Orion Poplawski Note Added: 0034391
2016-08-12 09:59 Kitware Robot Note Added: 0038279
2016-08-12 09:59 Kitware Robot Status backlog => closed
2016-08-12 09:59 Kitware Robot Resolution open => moved
2016-08-12 09:59 Kitware Robot Assigned To => Kitware Robot


Copyright © 2000 - 2018 MantisBT Team