[Paraview] Procedure for compiling Catalyst

Christopher Neal chrisneal at snumerics.com
Wed Aug 3 14:55:10 EDT 2016


This was a case of “User Error: Replace User”. I forgot to do the ‘make install’ step to generate the include directory /facepalm.

One last issue that I am having with the compilation process for Catalyst is in the final ‘make install’ stage. It is trying to place the files in one of my root directories. I would like it to put the files in my Catalyst_build directory. I know how to specify the install directory from the cmake command line, but Catalyst uses a shell script to execute the cmake command.

For example, I run the command shown below from within my ‘Catalyst_build’ directory. The argument to the cmake.sh script is the location of the source. How would I go about setting the -DCMAKE_INSTALL_PREFIX to be my ‘Catalyst_build’ directory?

./../Catalyst-v5.1.0-Base-Enable-Python-Essentials/cmake.sh ../Catalyst-v5.1.0-Base-Enable-Python-Essentials

Thank you,

Chris Neal

 

From: Christopher Neal <chrisneal at snumerics.com>
Date: Tuesday, August 2, 2016 at 4:22 PM
To: "T.J. Corona" <tj.corona at kitware.com>
Cc: Andy Bauer <andy.bauer at kitware.com>, "paraview at paraview.org" <paraview at paraview.org>, jeff wright <jeffwright83 at gmail.com>
Subject: Re: [Paraview] Procedure for compiling Catalyst

 

Hi T.J.

 

I’m having trouble finding the ‘include’ directory in both the ParaView source as well as the build directory. I used the command below, which was modeled after your suggestion in the quoted email below, to see what path is given for the include directory.

ParaView_build/bin/paraview-config --include --python vtkPVPythonCatalyst vtkPVServerManagerRendering vtkUtilitiesPythonInitializer

The output of the command above is:  -I/home/neal/software/ParaView_build/include/paraview-5.1

The problem that I’m having is that there is no such directory in my ParaView_build directory. Is there a special CMAKE flag that I need to use in order to have an include directory added to the build directory? 

Thank you,

Chris Neal

 

From: "T.J. Corona" <tj.corona at kitware.com>
Date: Wednesday, July 27, 2016 at 12:35 PM
To: Christopher Neal <chrisneal at snumerics.com>
Cc: Andy Bauer <andy.bauer at kitware.com>, "paraview at paraview.org" <paraview at paraview.org>, jeff wright <jeffwright83 at gmail.com>
Subject: Re: [Paraview] Procedure for compiling Catalyst

 

Hi Christopher,

 

I’m pretty sure the “library keywords” are what ParaView refers to as “modules”. These are defined within ParaView’s CMakeFile.txt-s as `vtk_module(###)`. If you are building a Catalyst plugin, you will probably get most of what you need by querying the vtkPVCatalyst module for its dependencies. As for the header files, I think paraview-config only gives the include directory (`paraview-config --include`). Putting this in your makefile should be sufficient for linking against ParaView.

 

Sincerely,

T.J.

 

Thomas J. Corona, Ph.D.
Kitware, Inc.
R&D Engineer
21 Corporate Drive
Clifton Park, NY 12065-8662
Phone: 518-881-4443

 

On Jul 27, 2016, at 11:58 AM, Christopher Neal <chrisneal at snumerics.com> wrote:

 

Thank you T.J! I think I understand what the paraview-config does(and it’s awesome). How would I know which library keywords(vtkPVPythonCatalyst, vtkUtilitiesPythonInitializer,etc) that I need to specify? Is there a list maintained somewhere of the available options?  Also, your example provides the method for obtaining the library list to link to. Is there a way to get the list of header files to include with the –I flag in a Makefile?

Thank you,

Chris

 

From: "T.J. Corona" <tj.corona at kitware.com>
Date: Tuesday, July 26, 2016 at 3:23 PM
To: Christopher Neal <chrisneal at snumerics.com>
Cc: Adam Lyon <lyon at fnal.gov>, Andy Bauer <andy.bauer at kitware.com>, "paraview at paraview.org" <paraview at paraview.org>, jeff wright <jeffwright83 at gmail.com>
Subject: Re: [Paraview] Procedure for compiling Catalyst

 

Hi Chris,

 

I believe that you can link against ParaView from a standard Makefile by using the `paraview-config` executable that gets built when building ParaView. An example of how to do this is something like this:

 

ifeq "$(USE_PARAVIEW)" "true"
            PARAVIEW_CONFIG = $(PARAVIEW)/bin/paraview-config
            LIBS += $(shell $(PARAVIEW_CONFIG) --libs --python vtkPVPythonCatalyst vtkPVServerManagerRendering vtkUtilitiesPythonInitializer) -lparaview -Lparaview_catalyst/Adaptor-build -lMPASAdaptor
endif

I should mention, it is much easier to use CMake ;)

 

Sincerely,

T.J.

 

Thomas J. Corona, Ph.D.
Kitware, Inc.
R&D Engineer
21 Corporate Drive
Clifton Park, NY 12065-8662
Phone: 518-881-4443

 

On Jul 26, 2016, at 2:51 PM, Christopher Neal <chrisneal at snumerics.com> wrote:

 

Thanks T.J. Your suggestions has resolved the VTK issue. I did not know that it was a submodule. I just learned that submodules exist from this actually haha.

I see that the examples for Catalyst are under the Paraview source tree. I was able to get Paraview to build with Catalyst. I compiled the examples using
cmake -DCMAKE_PREFIX_PATH~/software/ParaView_build -DBUILD_FORTRAN_EXAMPLES:BOOL=ON  ~/ParaView/Examples/Catalyst/




That seems to build all of the examples without throwing any errors.  Now if I have a small C++ code that I have written that I want to try and link with the Catalyst headers and library files, is there a way to figure out what the command that was used to build the example cases was so that I can copy it? Reading the makefiles that are generated by cmake hasn’t been too helpful for me i.e. I can’t find the –L and –I sections of the compile statement that pulls the libraries and headers together.




The end-game for me is to be able to write an adaptor for a simulation code to allow it to utilize the Catalyst functions. This code uses a standard make process, and so I would like to try and avoid having to re-cast the entire build process to cmake.


Thank you,

Chris

 

From: "T.J. Corona" <tj.corona at kitware.com>
Date: Monday, July 25, 2016 at 3:45 PM
To: Christopher Neal <chrisneal at snumerics.com>
Cc: Adam Lyon <lyon at fnal.gov>, Andy Bauer <andy.bauer at kitware.com>, "paraview at paraview.org" <paraview at paraview.org>
Subject: Re: [Paraview] Procedure for compiling Catalyst

 

Hi Chris,

 

VTK is a submodule under VTK, so try the following:

 

git clone https://github.com/Kitware/ParaView.git

git submodule init

git submodule update

…the rest of the build process.

 

Hope this helps!

 

Sincerely,

T.J.

 

Thomas J. Corona, Ph.D.
Kitware, Inc.
R&D Engineer
21 Corporate Drive
Clifton Park, NY 12065-8662
Phone: 518-881-4443

 

On Jul 25, 2016, at 3:43 PM, Christopher Neal <chrisneal at snumerics.com> wrote:

 

Hey guys,

 

Have you ever had an issue with cmake concerning some missing VTK files? I typed Adam’s command exactly after cloning the Paraview repo(git clone https://github.com/Kitware/ParaView.git). I made a ParaView_build directory and executed Adam’s command in the build directory. I’m seeing the error shown below. The VTK folder in the cloned source directory is completely empty.


CMake Error at CMakeLists.txt:615 (include):

  include could not find load file:

 

    vtkModuleAPI

 

 

CMake Error at CMakeLists.txt:616 (include):

  include could not find load file:

 

    vtkModuleMacros

 

 

CMake Error at CMakeLists.txt:621 (include):

  include could not find load file:

 

    vtkDetermineCompilerFlags

 

 

CMake Error at CMake/ParaViewModuleTop.cmake:44 (vtk_add_to_module_search_path):

  Unknown CMake command "vtk_add_to_module_search_path".

Call Stack (most recent call first):

  CMakeLists.txt:652 (include)

 

Thank you,

Chris Neal

 

From: Adam Lyon <lyon at fnal.gov>
Date: Monday, July 25, 2016 at 1:50 PM
To: Andy Bauer <andy.bauer at kitware.com>
Cc: Christopher Neal <chrisneal at snumerics.com>, jeff wright <jeffwright83 at gmail.com>, "paraview at paraview.org" <paraview at paraview.org>
Subject: Re: [Paraview] Procedure for compiling Catalyst

 

Hi - I build the ParaView package with Catalyst turned on (but the ParaView GUI turned off). My cmake command is (sorry for the poor formatting, some of these options may not be useful for you)...

 

cmake -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_SKIP_INSTALL_RPATH:BOOL=YES -DBUILD_TESTING:BOOL=OFF -DPARAVIEW_BUILD_QT_GUI:BOOL=OFF -DVTK_RENDERING_BACKEND=OpenGL2 -DPARAVIEW_USE_MPI:BOOL=ON -DPARAVIEW_ENABLE_PYTHON:BOOL=ON -DPARAVIEW_INSTALL_DEVELOPMENT_FILES:BOOL=ON -DPARAVIEW_BUILD_CATALYST_ADAPTERS:BOOL=ON -DPARAVIEW_BUILD_PLUGIN_AnalyzeNIfTIIO:BOOL=FALSE -DPARAVIEW_BUILD_PLUGIN_ArrowGlyph:BOOL=FALSE -DPARAVIEW_BUILD_PLUGIN_CDIReader:BOOL=FALSE -DPARAVIEW_BUILD_PLUGIN_EyeDomeLighting:BOOL=FALSE -DPARAVIEW_BUILD_PLUGIN_GMVReader:BOOL=FALSE -DPARAVIEW_BUILD_PLUGIN_GeodesicMeasurement:BOOL=FALSE -DPARAVIEW_BUILD_PLUGIN_H5PartReader:BOOL=FALSE -DPARAVIEW_BUILD_PLUGIN_InSituExodus:BOOL=FALSE -DPARAVIEW_BUILD_PLUGIN_MantaView:BOOL=FALSE -DPARAVIEW_BUILD_PLUGIN_Moments:BOOL=FALSE -DPARAVIEW_BUILD_PLUGIN_NonOrthogonalSource:BOOL=FALSE -DPARAVIEW_BUILD_PLUGIN_PacMan:BOOL=FALSE -DPARAVIEW_BUILD_PLUGIN_PointSprite:BOOL=FALSE -DPARAVIEW_BUILD_PLUGIN_RGBZView:BOOL=FALSE -DPARAVIEW_BUILD_PLUGIN_SLACTools:BOOL=FALSE -DPARAVIEW_BUILD_PLUGIN_SciberQuestToolKit:BOOL=FALSE -DPARAVIEW_BUILD_PLUGIN_SierraPlotTools:BOOL=FALSE -DPARAVIEW_BUILD_PLUGIN_StreamingParticles:BOOL=FALSE -DPARAVIEW_BUILD_PLUGIN_SurfaceLIC:BOOL=FALSE -DPARAVIEW_BUILD_PLUGIN_ThickenLayeredCells:BOOL=FALSE -DPARAVIEW_BUILD_PLUGIN_UncertaintyRendering:BOOL=FALSE -DPARAVIEW_BUILD_PLUGIN_AcceleratedAlgorithms:BOOL=OFF -DVTK_USE_CXX11_FEATURES:BOOL=ON -DCMAKE_INSTALL_PREFIX=/somewhere /path/to/paraview/git/source
 
 
This will build ParaView, VTK, and Catalyst and install header files so you can build your code with it. -- Adam
 
------

 

Adam L. Lyon

Scientist; Associate Division Head for Systems for Scientific Applications

 

Scientific Computing Division & Muon g-2 Experiment

Fermi National Accelerator Laboratory

630 840 5522 office

www.fnal.gov

lyon at fnal.gov

 

Connect with us!
News  |  Facebook  |  Twitter

 

On Mon, Jul 25, 2016 at 12:16 PM, Andy Bauer <andy.bauer at kitware.com> wrote:

Hi Chris,

Catalyst is not a separate entity from ParaView. It is a subset of ParaView that is used for in situ processing. The concept of the editions is that the subset of interest differs based on the desired in situ processing and linking your simulation code to all of ParaView Catalyst can take up a significant amount of memory. Hopefully the blog post at https://blog.kitware.com/paraview-catalyst-editions-what-are-they/ may clear up your confusion.

Best,

Andy

 

On Mon, Jul 25, 2016 at 1:07 PM, Christopher Neal <chrisneal at snumerics.com> wrote:

Thank you Andy,

 

My understanding is that the Catalyst editions can be compiled separately from Paraview i.e. I do not need to have a version of Paraview compiled in order to compile a Catalyst edition. Is this correct?

Thank you,

Chris

 

From: Andy Bauer <andy.bauer at kitware.com>
Date: Friday, July 22, 2016 at 8:23 PM
To: Christopher Neal <chrisneal at snumerics.com>
Cc: "paraview at paraview.org" <paraview at paraview.org>
Subject: Re: [Paraview] Procedure for compiling Catalyst

 

Hi Chris,

You can get the Catalyst editions source code at http://www.paraview.org/download/ by just selecting Catalyst editions for Type of Download. If you're just getting started though I would recommend doing a build of ParaView without the GUI. Yes this will require learning a bit of CMake (see instructions for building ParaView at http://www.paraview.org/Wiki/ParaView:Build_And_Install) but it will likely be smoother for you for understanding Catalyst's capabilities. Also, it's much easier to link a simulation code with Catalyst through CMake than specifying all of the include directories and libraries. When you're looking for a lean build of Catalyst on an HPC machine then I'd suggest going the edition route (the editions help avoid cross-compilation issues on HPC machines too).

Best,

Andy

 

On Fri, Jul 22, 2016 at 6:16 PM, Christopher Neal <chrisneal at snumerics.com> wrote:

Hi All,

 

I’m interesting in trying to compile Paraview Catalyst. I understand that there are ‘Editions’ of the Catalyst library that vary in the amount of functions that are included from the Paraview library. That’s about the extent of my knowledge about the actual source for the Catalyst library. The documentation that I have found for compiling Catalyst is a bit dated(~3 years old), and I haven’t been able to locate an up-to-date set of documents that detail the compilation procedure for building Catalyst.  If I want Catalyst, must I first have a version of Paraview built from scratch on my system? The best documentation that I have found for building Paraview is (http://www.paraview.org/Wiki/ParaView:Build_And_Install#Download_ParaView_Source_Code), and I’m having trouble getting Paraview to build from the instructions(I’ve never used cmake before).

Has anyone who has successfully built the Catalyst library or knows about the process lend me any tips about how I should approach building Catalyst?

Thank you,

Chris Neal


_______________________________________________
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

Search the list archives at: http://markmail.org/search/?q=ParaView

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/paraview

 

 


_______________________________________________
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

Search the list archives at: http://markmail.org/search/?q=ParaView

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/paraview

 

_______________________________________________
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

Search the list archives at: http://markmail.org/search/?q=ParaView

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/paraview

 

 

 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/paraview/attachments/20160803/9bcd4af3/attachment.html>


More information about the ParaView mailing list