<div dir="ltr">Hey Bill,<div><br></div><div><div>I&#39;ve built ParaView on Crays (including Titan).<br></div><div style><br></div><div style>The approach I recommend is cross compilation. See the Mastering CMake book chapter 8 for the details. The approach works for Crays and BlueGenes at least as far back as XT3 and BG/L.</div>

<div style><br></div><div style>It boils down to building twice, once on and for the login nodes, and then again on the login nodes but for the compute nodes.</div><div style>The first pass just builds the tools that make uses when you compile Paraview (like the protoc compiler). The second pass uses those tools and a file with the necessary TryRunResults containing answers to the things that the front end build can not determine (like HDF5_PRINTF_LL_TEST_RUN__TRYRUN_OUTPUT) to build a ParaView that will run on the compute nodes. </div>

<div style><br></div>Yes it can be just as much fun as that sounds!<div><br>Lucky for you we&#39;ve packaged up the whole thing in ParaViewSuperbuild (git://<a href="http://paraview.org/ParaViewSuperbuild.git">paraview.org/ParaViewSuperbuild.git</a>). Superbuild does all of the above and builds ParaView&#39;s dependencies at the same time (osmesa, python).</div>

<div><br></div><div style>To use it on Titan for instance, first source something like this in a &quot;tools&quot; directory to setup the tools build pass</div><div style><div><br></div><div>titan/v4.0.1&gt; cat configtools.sh </div>

<div>#use my own cmake, system one is too old</div><div>setenv PATH /autofs/na4_proj/csc035/demarle/pvdev/titan/cmake-build/bin:${PATH}</div><div>#switch compiler to compile code for front end</div><div>module unload PrgEnv-pgi</div>

<div>module load gcc</div><div>#configure settings for to build compile tools only</div><div>cmake \</div><div>  -DCROSS_BUILD_STAGE:STRING=TOOLS -Dcross_target:STRING=xk7_gnu \</div><div>  -DCMAKE_BUILD_TYPE:STRING=Release \</div>

<div>  -DBUILD_TESTING:BOOL=FALSE \</div><div>  -DParaView_FROM_GIT:BOOL=OFF \</div><div>  -DENABLE_paraview:BOOL=TRUE \</div><div>  -DENABLE_boost:BOOL=TRUE \</div><div>  -DENABLE_python:BOOL=TRUE \</div><div>  -DENABLE_portfwd:BOOL=FALSE \</div>

<div>  ../../ParaviewSuperbuild</div><div><br></div><div style>than type make.</div><div style><br></div><div style>Next source something like this to setup the cross build pass in a &quot;cross&quot; directory.</div><div style>

<div><br></div><div>titan/v4.0.1&gt; cat configcross.sh </div><div>#use my own cmake, system one is too old</div><div>setenv PATH /autofs/na4_proj/csc035/demarle/pvdev/titan/cmake-build/bin:${PATH}</div><div>#switch compiler to compile code for back end</div>

<div>module unload PrgEnv-pgi</div><div>module unload gcc</div><div>module load PrgEnv-gnu</div><div>#not sure why module load wasn&#39;t sufficient, but ended up needing to force</div><div>#cmake to choose the right compiler</div>

<div>setenv CC /opt/cray/xt-asyncpe/5.17/bin/cc</div><div>setenv CXX /opt/cray/xt-asyncpe/5.17/bin/CC</div><div>#configure settings to cross compile python, (mesa - implied), and paraview</div><div>cmake \</div><div>  -DCROSS_BUILD_STAGE:STRING=CROSS -Dcross_target:STRING=xk7_gnu \</div>

<div>  -DCMAKE_BUILD_TYPE:STRING=Release \</div><div>  -DBUILD_TESTING:BOOL=TRUE \</div><div>  -DParaView_FROM_GIT:BOOL=OFF \</div><div>  -DENABLE_paraview:BOOL=TRUE \</div><div>  -DENABLE_python:BOOL=TRUE \</div><div>  ../../ParaviewSuperbuild</div>

<div><br></div><div style>than type make.</div></div><div><br></div></div><div><div style>The cross built binary will end up in paraview/src/paraview-bld. You will need to put the binaries and the python libs and paraview python modules somewhere on the parallel file system in order to run it. I recommend against building directly on the parallel file system as that slows down the build immensely.</div>

</div><div style><br></div><div style>cheers</div></div></div><div class="gmail_extra"><br clear="all"><div>David E DeMarle<br>Kitware, Inc.<br>R&amp;D Engineer<br>21 Corporate Drive<br>Clifton Park, NY 12065-8662<br>Phone: 518-881-4909</div>


<br><br><div class="gmail_quote">On Wed, Aug 14, 2013 at 11:04 AM, Bill Sherman <span dir="ltr">&lt;<a href="mailto:shermanw@indiana.edu" target="_blank">shermanw@indiana.edu</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

Utkarsh,<div class="im"><br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Looks like CHECK_TYPE_SIZE(..) calls made by cmake to discover various<br>
type sizes just fails (not just for OggTheora but also for HDF5 and<br>
IceT).  To confirm that, try running cmake on the attached<br>
CMakeLists.txt as<br>
</blockquote>
<br></div>
Okay, done.<br>
<br>
I should probably mention (if I haven&#39;t already) that this is being done<br>
under the Cray version of SUSE enterprise Linux for a Cray XE/XK7 system<br>
(along the lines of Blue Waters and Titan).<br>
<br>
And I tested it twice, once with the Cray compiler, and then again with<br>
the GNU compiler.  Both times I got the exact same result as you report<br>
here:<div class="im"><br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
What does it print out (ensure correct compiler is being used)? For me<br>
it prints the following message:<br>
<br>
HAVE_VTKOGGTHEORA_INT16_T=TRUE<br>
      VTKOGGTHEORA_INT16_T=2<br>
<br>
HAVE_VTKOGGTHEORA_INT=TRUE<br>
      VTKOGGTHEORA_INT=4<br>
</blockquote>
<br></div>
Are you aware of anyone at NCSA or Oak Ridge that have had success<br>
on their Cray systems?<br>
<br>
What should I try next?<br>
<br>
        Thanks,<br>
        Bill<div class="HOEnZb"><div class="h5"><br>
<br>
______________________________<u></u>_________________<br>
Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br>
<br>
Visit other Kitware open-source projects at <a href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/<u></u>opensource/opensource.html</a><br>
<br>
Please keep messages on-topic and check the ParaView Wiki at: <a href="http://paraview.org/Wiki/ParaView" target="_blank">http://paraview.org/Wiki/<u></u>ParaView</a><br>
<br>
Follow this link to subscribe/unsubscribe:<br>
<a href="http://www.paraview.org/mailman/listinfo/paraview" target="_blank">http://www.paraview.org/<u></u>mailman/listinfo/paraview</a><br>
</div></div></blockquote></div><br></div>