[Paraview] Compiling Paraview with osMesa using Superbuild

Christopher Neal chrisneal at snumerics.com
Tue Dec 20 15:27:45 EST 2016


Thanks again Chuck. I would prefer to have the superbuild compile its own
hdf5 to eliminate any possibility of errors on my side. When I use the
'ENABLE_hdf5' option in the cache file there still appears to be an issue
with the compilation in the hdf5 area.


*For completeness here is the output of the configuration:*






















































*cmake -C ../EL7-OSMesa.cmake  ../paraview-superbuild/loading initial cache
file ../EL7-OSMesa.cmake-- The C compiler identification is GNU 4.8.3-- The
CXX compiler identification is GNU 4.8.3-- Check for working C compiler:
/usr/bin/cc-- Check for working C compiler: /usr/bin/cc -- works--
Detecting C compiler ABI info-- Detecting C compiler ABI info - done--
Detecting C compile features-- Detecting C compile features - done-- Check
for working CXX compiler: /usr/bin/c++-- Check for working CXX compiler:
/usr/bin/c++ -- works-- Detecting CXX compiler ABI info-- Detecting CXX
compiler ABI info - done-- Detecting CXX compile features-- Detecting CXX
compile features - done-- Check size of void*-- Check size of void* -
done-- Found Git: /usr/bin/git (found version "2.1.2") -- Determined source
version for paraview: 5.2.0-- Enabling zlib as requested.-- Enabling cxx11
for: llvm, ospray-- Enabling boost as requested.-- Enabling szip for:
hdf5-- Enabling hdf5 as requested.-- Enabling cgns as requested.-- Enabling
ffmpeg as requested.-- Enabling freetype as requested.-- Enabling mpi as
requested.-- Enabling genericio as requested.-- Enabling libxml2 as
requested.-- Enabling bzip2 for: python-- Enabling png as requested.--
Enabling python as requested.-- Enabling numpy as requested.-- Enabling
llvm for: osmesa-- Enabling osmesa as requested.-- Enabling ispc for:
ospray-- Enabling tbb for: ospray-- Enabling ospray as requested.--
Enabling glu for: visitbridge-- Enabling visitbridge as requested.--
Enabling silo as requested.-- Enabling paraview as requested.-- Enabling
paraviewsdk as requested.-- Enabling socat as requested.-- Building
projects: zlib, cxx11, boost, szip, hdf5, cgns, ffmpeg, freetype, mpi,
genericio, libxml2, bzip2, png, python, numpy, llvm, osmesa, ispc, tbb,
ospray, glu, visitbridge, silo, paraview, paraviewsdk, socat-- Found MPI_C:
/usr/lib64/mpi/gcc/openmpi/lib64/libmpi.so  -- Found MPI_CXX:
/usr/lib64/mpi/gcc/openmpi/lib64/libmpi_cxx.so;/usr/lib64/mpi/gcc/openmpi/lib64/libmpi.so
 -- Found ZLIB: /usr/lib64/libz.so (found version "1.2.8") -- Found PNG:
/usr/lib64/libpng.so (found version "1.2.51") -- Configuring done--
Generating done-- Build files have been written to:
/home/neal/software/ParaView_osMesa_Superbuild/build*


*And here is the error that's showing up:*


















*[ 35%] Performing build step for 'hdf5'[  0%] Built target H5detect[  1%]
Built target H5make_libsettingsgmake[5]: *** No rule to make target
'/home/neal/software/ParaView_osMesa_Superbuild/build/install/lib/libsz.so',
needed by 'bin/libhdf5.so.1.8.13'.  Stop.CMakeFiles/Makefile2:127: recipe
for target 'src/CMakeFiles/hdf5.dir/all' failedgmake[4]: ***
[src/CMakeFiles/hdf5.dir/all] Error 2Makefile:149: recipe for target 'all'
failedgmake[3]: *** [all] Error 2CMake Error at
/home/neal/software/ParaView_osMesa_Superbuild/build/superbuild/sb-hdf5-build.cmake:43
(message):  Failed with exit code
2superbuild/CMakeFiles/hdf5.dir/build.make:115: recipe for target
'superbuild/hdf5/stamp/hdf5-build' failedgmake[2]: ***
[superbuild/hdf5/stamp/hdf5-build] Error 1CMakeFiles/Makefile2:2146: recipe
for target 'superbuild/CMakeFiles/hdf5.dir/all' failedgmake[1]: ***
[superbuild/CMakeFiles/hdf5.dir/all] Error 2Makefile:127: recipe for target
'all' failedgmake: *** [all] Error 2*

I got the same error when I used my version of hdf5(also 1.8.13), so I'm
trying to understand what the make utility is trying to tell me the trouble
it is having on my OpenSuse system. I've also attached the cache file that
I'm feeding to Cmake.

Thank you,

On Mon, Dec 19, 2016 at 9:04 PM, Chuck Atkins <chuck.atkins at kitware.com>
wrote:

> Setting ENABLE_foo to ON turn on a sub-project, defaulting to building our
> own version.  Setting USE_SYSTEM_foo to ON will override that default and
> use a system version instead.  In your case, you'll want to also set
> USE_SYSTEM_hdf5 to ON.  Given your particular configuration and which
> packages you have installed, set ENABLE_foo and USE_SYSTEM_foo
> accordingly.  Using the cache file is functionally equivalent to:
>
> cmake -DENABLE_foo=ON -DUSE_SYSTEM_foo=ON [more cmake options]...
>
> The cache file works by pre-loading the settings.  You can also pass
> additional options on the command line as cmake -D flags to override or
> supplement the cache script settings.  When trying to work out the settings
> you want to use, it may be easiest to iterate with -D flags on the command
> line until you get it just how you want it and then translate those into a
> site-specific cache script that you can keep around.
>
>
> ----------
> Chuck Atkins
> Staff R&D Engineer, Scientific Computing
> Kitware, Inc.
>
>
> On Mon, Dec 19, 2016 at 6:19 PM, Christopher Neal <chrisneal at snumerics.com
> > wrote:
>
>> Thank you for the suggestions Chuck,
>>
>> I tried the configuration: EL7-OSMesa.cmake  with the edit that you
>> suggested.
>>
>> It first failed when I ran: cmake -C ../paraview-superbuild/cmake/sites/EL7-OSMesa.cmake
>>  ../paraview-superbuild/
>>
>> The error was:
>>
>>
>>
>>
>>
>>
>>
>>
>> *CMake Error at superbuild/cmake/SuperbuildRevisionMacros.cmake:339
>> (message):  The 5.2.0-RC4 source selection for paraview does not exist.Call
>> Stack (most recent call first):  versions.cmake:60
>> (superbuild_set_selectable_source)  superbuild/CMakeLists.txt:96
>> (include)-- Configuring incomplete, errors occurred!*
>>
>> I took at a look at the EL7-OSMesa.cmake file and it looks like there is
>> a hardcoded paraview version in there. The option:
>> set(paraview_SOURCE_SELECTION 5.2.0-RC4 CACHE BOOL "") . I changed it from
>> 5.2.0-RC4 to 5.2.0 and the configuration continued on until it hit another
>> failure. I changed set(ENABLE_paraviewsdk ON CACHE "")  to
>>  set(ENABLE_paraviewsdk ON CACHE BOOL "") [note the BOOL], and that seemed
>> to fix the issue.
>>
>>
>> Upon doing 'make' the compilation failed in the HDF5 stage with the
>> following error.
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> *CMakeFiles/Makefile2:127: recipe for target
>> 'src/CMakeFiles/hdf5.dir/all' failedgmake[4]: ***
>> [src/CMakeFiles/hdf5.dir/all] Error 2Makefile:149: recipe for target 'all'
>> failedgmake[3]: *** [all] Error 2CMake Error at
>> /home/neal/software/ParaView_osMesa_Superbuild/build/superbuild/sb-hdf5-build.cmake:43
>> (message):  Failed with exit code
>> 2superbuild/CMakeFiles/hdf5.dir/build.make:115: recipe for target
>> 'superbuild/hdf5/stamp/hdf5-build' failedmake[2]: ***
>> [superbuild/hdf5/stamp/hdf5-build] Error 1CMakeFiles/Makefile2:2399: recipe
>> for target 'superbuild/CMakeFiles/hdf5.dir/all' failedmake[1]: ***
>> [superbuild/CMakeFiles/hdf5.dir/all] Error 2Makefile:127: recipe for target
>> 'all' failedmake: *** [all] Error 2*
>>
>> I'm unsure about how to resolve the failure. I am using cmake-3.6. There
>> is a version of hdf5 already installed on the system( which h5dump gives:
>> /usr/lib64/mpi/gcc/openmpi/bin/h5dump ).
>>
>> Have you ever had issues with the hdf5 compilation of the superbuild?
>>
>> Thank you,
>>
>> On Mon, Dec 19, 2016 at 3:52 PM, Chuck Atkins <chuck.atkins at kitware.com>
>> wrote:
>>
>>> Hi Christopher,
>>>
>>> While I haven't tested with OpenSuSE, I have been testing extensively
>>> with SLES12.2 and EL7.   I usually recommend to build a CMake cache file to
>>> encode the appropriate options used that you can save off as your build's
>>> configuration file.  You can see many current examples in the cmake/sites
>>> directory.  Specifically, the EL7-OSMesa.cmake configuration will likely be
>>> a good place to start for you.  To use it:
>>>
>>> # Clone the repo and it's submodules
>>> # The current superbuild master/ branch is pointing to the ParaView
>>> 5.2.0 release
>>> git clone https;//gitlab./kitware.com/paraview/paraview-superbuild.git
>>> source
>>> cd source
>>> git submodule init
>>> git submodule update
>>>
>>> # Setup the build location
>>> cd ..
>>> mkdir build
>>> cd build
>>>
>>> # Configure
>>> cmake -C /path/to/sb-source/cmake/sites/EL7-OSMesa.cmake
>>> /path/to/sb-source
>>>
>>> # Build
>>> make
>>>
>>> # Install
>>> make install
>>>
>>> In your case specifically, you'll want to add the following to the
>>> config file:
>>>
>>> set(ENABLE_paraviewsdk ON CACHE "")
>>>
>>> This will make sure the necessary headers and CMake files get packaged
>>> for using Catalyst.  This will build with OSMesa enabling both the llvmpipe
>>> and OpenSWR drivers.  Also, instead of a "make install", you can run "ctest
>>> -R cpack-paraviewsdk-TGZ" which will generate a tarball that you can
>>> "install" by extracting wherever you want it to end up.
>>>
>>> We're still working on getting good HowTo docs for the Superbuild, which
>>> has been challenging because many different users tend to use it in many
>>> different ways.  I hope this helps give you a good place to start though.
>>>
>>>
>>>
>>> ----------
>>> Chuck Atkins
>>> Staff R&D Engineer, Scientific Computing
>>> Kitware, Inc.
>>>
>>>
>>> On Mon, Dec 19, 2016 at 12:30 PM, Christopher Neal <
>>> chrisneal at snumerics.com> wrote:
>>>
>>>> Hi all,
>>>>
>>>> I just saw that the paraview superbuild has be greatly refactored. I
>>>> wanted to try and give another shot to something that I have been
>>>> trying to do for a while now. My goal is to compile a version of
>>>> paraview with osmesa enabled such that an HPC code that is
>>>> instrumented with Catalyst calls can run on a computer without having
>>>> to open up a window to render images.
>>>>
>>>> Has anyone had luck building the superbuild with osmesa on OpenSuse
>>>> 13.2? I'm trying to put together an appropriate configuration script
>>>> that conforms to the new superbuild's style.
>>>>
>>>> Thank you,
>>>>
>>>> --
>>>> Christopher Neal
>>>> Research Engineer
>>>> Streamline Numerics, Inc.
>>>> _______________________________________________
>>>> 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
>>>>
>>>
>>>
>>
>>
>> --
>> Christopher Neal
>> Research Engineer
>> Streamline Numerics, Inc.
>>
>
>


-- 
Christopher Neal
Research Engineer
Streamline Numerics, Inc.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/paraview/attachments/20161220/09167eb6/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: EL7-OSMesa.cmake
Type: application/octet-stream
Size: 1568 bytes
Desc: not available
URL: <http://public.kitware.com/pipermail/paraview/attachments/20161220/09167eb6/attachment.obj>


More information about the ParaView mailing list