Probably easiest to set them in CMake/cross_compile/bgp_xlc/ParaViewDefaults.cmake.
That is what defined the initial CMakeCache for ParaView itself (as opposed to the CMakeCache of the outer super build project). David E DeMarle Kitware, Inc. R&D Engineer 21 Corporate Drive Clifton Park, NY 12065-8662 Phone: 518-881-4909 On Thu, Sep 5, 2013 at 12:12 PM, Hong Yi <[email protected]> wrote: > Thanks very much for the info, David. Turning off MPI4PY for version > 3.98 as you suggested works for me to build version 3.98 on Titan also with > SuperBuild. **** > > ** ** > > I do want to stick with 4.0, but built 3.98 also just in case since my new > plugin works well on version 3.98. After some further examination, it looks > like my plugin should work on version 4.0 also. Have put my plugin code > into 4.0 source directory under both tools and cross subdirectories and > hope it can be built and work for version 4.0 also.**** > > ** ** > > Have spent this morning trying to figure out how to turn on some > additional flags in superbuild such as my new filter plugin, Fortran > coprocessing adaptor, and Phasta adaptor, but cannot succeed. Hope to get > some hint on how to do so. Apparently, passing those flags in by adding > corresponding –D to configuretools only resulted in CMake warning > indicating those manually-specified variables were not used. Have tried to > change some cmake files in superbuild, but does not seem to have any > effect. Really appreciate any suggestions you can offer here to turn on > those additional flags which are important for our coprocessing purposes.* > *** > > ** ** > > Thanks,**** > > ** ** > > Hong**** > > ** ** > > ** ** > > *From:* David E DeMarle [mailto:[email protected]] > *Sent:* Sunday, September 01, 2013 1:56 PM > > *To:* Hong Yi > *Cc:* Vanmoer, Mark W; [email protected] > *Subject:* Re: [Paraview] Building on Titan using ParaViewSuperbuild**** > > ** ** > > Between 3.98 and 4.0 the syntax of the option to turn off MPI4PY changes > like so:**** > > I recommend staying with 4.0, but try reverting this change if you need > 3.98 for some reason.**** > > ** ** > > -------------- CMake/crosscompile/xk7_gnu/ParaViewDefaults.cmake > --------------**** > > index 5835693..68c2bea 100644**** > > @@ -3,7 +3,8 @@ list(APPEND PARAVIEW_OPTIONS > "-DBUILD_SHARED_LIBS:BOOL=OFF")**** > > list(APPEND PARAVIEW_OPTIONS "-DBUILD_TESTING:BOOL=OFF")**** > > list(APPEND PARAVIEW_OPTIONS "-DPARAVIEW_BUILD_QT_GUI:BOOL=OFF")**** > > #**** > > -list(APPEND PARAVIEW_OPTIONS "-DENABLE_MPI4PY:BOOL=OFF")**** > > +list(APPEND PARAVIEW_OPTIONS "-DPARAVIEW_USE_SYSTEM_MPI4PY:BOOL=ON")**** > > +#**** > > list(APPEND PARAVIEW_OPTIONS "-DPARAVIEW_USE_MPI:BOOL=ON")**** > > #/opt/cray/mpt/5.5.5/gni/mpich2-gnu/47/lib/**** > > #libmpich.a **** > > ** ** > > > **** > > David E DeMarle > Kitware, Inc. > R&D Engineer > 21 Corporate Drive > Clifton Park, NY 12065-8662 > Phone: 518-881-4909**** > > ** ** > > On Sat, Aug 31, 2013 at 4:10 PM, Hong Yi <[email protected]> wrote:**** > > Just a quick update. Like Mark, I can build ParaView 4.0.1 with Superbuild > successfully without issues using CMake 2.8.11.2 on Titan. However, I > cannot build Paraview 3.98.1 with Superbuild using the same CMake version. > I still got the same linking error from mpi4py.MPI.c in the final stage of > linking after 100% built for the cross stage (see below for details) if I > built version 3.98.1 using superbuild. Perhaps the latest version of > Superbuild has some sort of incompatibility with the older version of > ParaView for xk7_gnu target? Anyway, looks like we have to go with the > latest ParaView version for in-situ visualization on Titan since superbuild > does not work with older 3.98.1 version for us, which may very well prove a > good thing for us in the long run due to a lot of improvement made on > Catalyst in the latest ParaView version. **** > > ** ** > > Thanks,**** > > Hong**** > > **** > ------------------------------ > > *From:* [email protected] [[email protected]] on > behalf of Hong Yi [[email protected]] > *Sent:* Friday, August 30, 2013 5:43 PM > *To:* Vanmoer, Mark W; David E DeMarle > *Cc:* [email protected]**** > > > *Subject:* Re: [Paraview] Building on Titan using ParaViewSuperbuild**** > > ** ** > > Thanks for the info, Mark. Looks like it is sensible for me to try newer > version of CMake 2.8.11.2 and see how it goes.**** > > **** > > On a somewhat related question: I am trying to pass in some CMake flags to > make it build my new filter plugin as well as FortranAdaptor for > coprocessing (yes, I discovered also that coprocessing/catalyst is built by > default by superbuild, but FortranAdaptor is turned off by default). I > tried to pass it in by adding corresponding –D to configuretools, but got > CMake warning as well indicating those manually-specified variables were > not used. I am wondering whether I can do it by directly changing > CMakeCache.txt under paraview/src/paraview-build to force the corresponding > flags to be on…**** > > **** > > Thanks,**** > > Hong**** > > **** > > *From:* Vanmoer, Mark W [mailto:[email protected]] > *Sent:* Friday, August 30, 2013 5:34 PM > *To:* Hong Yi; David E DeMarle > *Cc:* [email protected] > *Subject:* RE: [Paraview] Building on Titan using ParaViewSuperbuild**** > > **** > > Hi Hong,**** > > I was able to get David’s instructions to work using CMake 2.8.11.2 and > ParaView 4.0.1. The build process seems to be sensitive to versions.**** > > Mark **** > > **** > > *From:* Hong Yi [mailto:[email protected] <[email protected]>] > *Sent:* Friday, August 30, 2013 3:52 PM > *To:* David E DeMarle; Vanmoer, Mark W > *Cc:* [email protected] > *Subject:* RE: [Paraview] Building on Titan using ParaViewSuperbuild**** > > **** > > I tried to follow the instructions and the configuration scripts to build > ParaView for compute nodes on Titan. It built successfully without issues > for the TOOLS stage, but when doing final linking for paraview in the CROSS > stage, I got numerous similar linking error from different lines such as > the following: > > ---------------- > /....../ParaView/ParaViewSuperbuild/cross/paraview/src/paraview/Utilities/mpi4py/src/mpi4py.MPI.c: > In function '__pyx_pf_6mpi4py_3MPI_4File_54Sync': > /....../ParaView/ParaViewSuperbuild/cross/paraview/src/paraview/Utilities/mpi4py/src/mpi4py.MPI.c:89682:7: > error: '_save' undeclared (first use in this function) > ---------------- > > The same error message were raised from the same file mpi4py.MPI.c from > different lines. > > I am using CMake version 2.8.10.2 which is provided by Titan, and using > the ParaView source tree version 3.98 with one additional filter I have > developed. > > Any idea on what could cause the linking error? > > Thanks, > Hong **** > ------------------------------ > > *From:* David E DeMarle [[email protected]] > *Sent:* Thursday, August 29, 2013 4:08 PM > *To:* Vanmoer, Mark W > *Cc:* Hong Yi; [email protected] > *Subject:* Re: [Paraview] Building on Titan using ParaViewSuperbuild**** > > On Thu, Aug 29, 2013 at 3:51 PM, Vanmoer, Mark W <[email protected]> > wrote:**** > > So coprocessing will not be built using the below instructions? I would > have mentioned that, but coprocessing appears to**** > > still be part of a regular, non-cross-compile build, so I figured it was > part of ENABLE_paraview **** > > **** > > The coprocessing plugin, which adds things to the GUI to make it easy to > record coprocessing pipeline setups doesn't need to be turned on since that > lives in the client only. (It is like python trace or state recording, but > tailored to recording in-situ setups).**** > > **** > > Catalyst (the stripped down version of ParaView server that a simulation > code can link to and use to run those recorded pipelines quickly) is not > yet an option in ParaViewSuperbuild. To cross compile Catalyst a bit more > work will be required. It will follow the same plan as how the ParaView > server is compiled, but I just haven't tried it. When I did cross compile > Catalyst last year at this time I did the same steps that > ParaViewSuperbuild's TOOLS and CROSS build passes did, just by hand.**** > > Also, for the below configcross.sh, do we need to pass in a CMake > variable telling it where the tools build dir is located?**** > > **** > > That should be an option that you can easily set, but it isn't sorry.**** > > **** > > CMake/CrossCompilationMacros.cmake assumes it can find it one directory > up and over like so:**** > > macro(find_hosttools)**** > > set(PARAVIEW_HOSTTOOLS_DIR > ${CMAKE_BINARY_DIR}/../tools/paraview/src/paraview-build/ CACHE PATH**** > > "Location of host built paraview compile tools directory")**** > > set(PYTHON_HOST_EXE ${CMAKE_BINARY_DIR}/../tools/install/bin/python > CACHE PATH**** > > "Location of host built python executable")**** > > set(PYTHON_HOST_LIBDIR ${CMAKE_BINARY_DIR}/../tools/install/lib CACHE > PATH**** > > "Location of host built python libraries")**** > > set(BOOST_HOST_INCLUDEDIR ${CMAKE_BINARY_DIR}/../tools/install/include > CACHE PATH**** > > "Location of host built boost headers")**** > > endmacro()**** > > **** > > You could predefine all four of those if you like.**** > > **** > > Thanks,**** > > Mark**** > > **** > > *From:* David E DeMarle [mailto:[email protected]] > *Sent:* Thursday, August 29, 2013 1:41 PM > *To:* Hong Yi > *Cc:* Vanmoer, Mark W; [email protected]**** > > > *Subject:* Re: [Paraview] Building on Titan using ParaViewSuperbuild**** > > **** > > On Thu, Aug 29, 2013 at 2:13 PM, Hong Yi <[email protected]> wrote:**** > > Hi David, > > I just started to try superbuild on Titan also. I don't see you set > ENABLE_MPI to be true in your configure script. Could you confirm whether > ENABLE_MPI needs to be set to TRUE in order for ParaView to run on Titan in > parallel? Since my purpose is to link our**** > > **** > > The ENABLE_MPI flag at the Superbuild level is unrelated. It has a purpose > only when CROSS_BUILD_STAGE=HOST, that is when making ParaView binary > installers for desktops from Superbuild. **** > > **** > > You shouldn't turn it on in the TOOLS or CROSS stages. Instead let the > CROSS stage use the system installed MPI. It does that by turning > PARAVIEW_USE_MPI=ON when it configures the ParaView sub-build. See > CMake/crosscompile/xk7_gnu to see where it does that, and to see the other > flags it uses.**** > > **** > > simulation code (already built statically with CMake on Titan) to > ParaView CoProcessing libraries (I am using version 3.98.1) for in-situ > visualization on Titan, so in this case, do I have to set ENABLE_paraview > to true and do I need to enable OSMesa for ParaView to resort to off-screen > rendering for in-situ visualization? **** > > **** > > The CROSS stage turns on Python, Mesa and ParaView. Titan's accelerators > don't really run X11, so Mesa is the only option for rendering there.**** > > **** > > Although I can build ParaView from source on Titan login nodes, I am not > able to run it on compute nodes, so I am starting to try superbuild hoping > to be able to cross build ParaView libraries to run in-situ visualization > on Titan.**** > > **** > > I've cross compiled Catalyst itself before on a bluegene. I did it > manually before SuperBuild existed. I will see if I can dig up my config > scripts. Cross compiling Catalyst should be more or less that same thing as > cross compiling ParaView, but a bit faster and easier because their is less > code involved.**** > > **** > > Thanks, > Hong**** > ------------------------------ > > *From:* [email protected] [[email protected]] on > behalf of David E DeMarle [[email protected]] > *Sent:* Thursday, August 29, 2013 1:21 PM**** > > > *To:* Vanmoer, Mark W > *Cc:* [email protected] > *Subject:* Re: [Paraview] Building on Titan using ParaViewSuperbuild**** > > **** > > Your tools build is pointing to the compiler wrapper that you normally > would use to make code for the back end. **** > > The tools build should just use plain old local gcc since we only build > things at that point that run on the login node.**** > > **** > > Try these setup scripts:**** > > I source configtools.sh to set up my environment before I build the > compile tools, and configcross.sh before before I cross compile ParaView.* > *** > > **** > > configtools.sh**** > > #use my own cmake, system one is too old**** > > setenv PATH > /autofs/na4_proj/csc035/demarle/pvdev/titan/cmake-build/bin:${PATH}**** > > #switch compiler to compile code for front end**** > > module unload PrgEnv-pgi**** > > module load gcc**** > > #configure settings for to build compile tools only**** > > cmake \**** > > -DCROSS_BUILD_STAGE:STRING=TOOLS -Dcross_target:STRING=xk7_gnu \**** > > -DCMAKE_BUILD_TYPE:STRING=Release \**** > > -DBUILD_TESTING:BOOL=FALSE \**** > > -DParaView_FROM_GIT:BOOL=OFF \**** > > -DENABLE_paraview:BOOL=TRUE \**** > > -DENABLE_boost:BOOL=TRUE \**** > > -DENABLE_python:BOOL=TRUE \**** > > -DENABLE_portfwd:BOOL=FALSE \**** > > ../../ParaViewSuperbuild**** > > **** > > **** > > then make**** > > **** > > configcross.sh**** > > #use my own cmake, system one is too old**** > > setenv PATH > /autofs/na4_proj/csc035/demarle/pvdev/titan/cmake-build/bin:${PATH}**** > > #switch compiler to compile code for back end**** > > module unload PrgEnv-pgi**** > > module unload gcc**** > > module load PrgEnv-gnu**** > > #not sure why module load wasn't sufficient, but ended up needing to force > **** > > #cmake to choose the right compiler**** > > setenv CC /opt/cray/xt-asyncpe/5.17/bin/cc**** > > setenv CXX /opt/cray/xt-asyncpe/5.17/bin/CC**** > > #configure settings to cross compile python, (mesa - implied), and paraview > **** > > cmake \**** > > -DCROSS_BUILD_STAGE:STRING=CROSS -Dcross_target:STRING=xk7_gnu \**** > > -DCMAKE_BUILD_TYPE:STRING=Release \**** > > -DBUILD_TESTING:BOOL=TRUE \**** > > -DParaView_FROM_GIT:BOOL=OFF \**** > > -DENABLE_paraview:BOOL=TRUE \**** > > -DENABLE_python:BOOL=TRUE \**** > > ../../ParaViewSuperbuild**** > > **** > > then make again**** > > **** > > > **** > > David E DeMarle > Kitware, Inc. > R&D Engineer > 21 Corporate Drive > Clifton Park, NY 12065-8662 > Phone: 518-881-4909**** > > **** > > On Tue, Aug 27, 2013 at 4:26 PM, Vanmoer, Mark W <[email protected]> > wrote:**** > > Hi, I'm trying to follow the advice on building ParaView on Titan using > the ParaViewSuperbuild method from an earlier discussion in June.**** > > **** > > When I run make in the "TOOLS" directory I get the following error:**** > > **** > > [ 66%] Building CXX object > Utilities/ProcessXML/CMakeFiles/kwProcessXML.dir/ProcessXML.cxx.o**** > > Linking CXX executable ../../bin/vtkkwProcessXML-pv4.0**** > > /usr/bin/ld: attempted static link of dynamic object > `../../lib/libvtkCommonCore-pv4.0.so.1'**** > > collect2: error: ld returned 1 exit status**** > > make[6]: *** [bin/vtkkwProcessXML-pv4.0] Error 1**** > > make[5]: *** [Utilities/ProcessXML/CMakeFiles/kwProcessXML.dir/all] Error 2 > **** > > make[4]: *** [CMakeFiles/pvCompileTools.dir/rule] Error 2**** > > make[3]: *** [pvCompileTools] Error 2**** > > CMake Error at > /ccs/home/vanmoer/builds/superbuild/tools-build/pv-paraview-build.cmake:26 > (message):**** > > Failed!!!**** > > **** > > **** > > make[2]: *** [paraview/src/paraview-stamp/paraview-build] Error 1**** > > **** > > I don't see a BUILD_SHARED that I can toggle. All of the > CMAKE_SHARED_LINKER_FLAGS* vars are empty, if those are related. **** > > **** > > Any suggestions?**** > > **** > > Thanks,**** > > Mark**** > > **** > > **** > > > _______________________________________________ > 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**** > > **** > > **** > > **** > > ** ** >
_______________________________________________ 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
