visit-dav / visit

VisIt - Visualization and Data Analysis for Mesh-based Scientific Data
https://visit.llnl.gov
BSD 3-Clause "New" or "Revised" License
429 stars 111 forks source link

Modify bv_cgns.sh to use CMake for linux builds #2151

Open aowen87 opened 5 years ago

aowen87 commented 5 years ago

The ticket is for linux builds, as the cmake build system may not work for OSX. From my attempts to build cgns on my linux system using build_visit (and having it fail with zlib problems)I used CGNS's cmake build system instead, with success. Here's a patch for 3.2.1 src/CMakeLists.txt file (to fix issues) Left file: /home/biagas2/BV290/cgnslib_3.2.1/src/CMakeLists.txt Right file: /home/biagas2/BV290/cgnslib_3.2.1-mod/src/CMakeLists.txt 107,108c107,108 < foreach(PATH ${${INPUT_PATH_VARIABLE}}) < file(TO_NATIVE_PATH ${PATH} NATIVE_PATH) - > foreach(nPATH ${${INPUT_PATH_VARIABLE}}) > file(TO_NATIVE_PATH ${nPATH} NATIVE_PATH) 110c110 < endforeach(PATH ${${INPUT_PATH_VARIABLE}}) - > endforeach(nPATH ${${INPUT_PATH_VARIABLE}}) 130c130 < native_paths(${ZLIB_LIBRARY} ZLIBLIB) - > native_paths(ZLIB_LIBRARY ZLIBLIB) I had used hdf5 szip zlib for build_visit command line, so based on that (and building shared libraries), here are the cmake commands I used to build cgns from scratch: -DCGNS_BUILD_SHARED:BOOL=true \ -DCGNS_ENABLE_64BIT:BOOL=true \ -DCGNS_ENABLE_HDF5:BOOL=true \ DHDF5_INCLUDE_PATH:PATH=/home/biagas2/visit/thirdparty/2.9.0/hdf5/1.8.7/linuxx86_64_gcc-4.4/include \ DHDF5_LIBRARY:FILEPATH=/home/biagas2/visit/thirdparty/2.9.0/hdf5/1.8.7/linuxx86_64_gcc-4.4/lib/libhdf5.so \ -DHDF5_NEED_SZIP:BOOL=true \ DSZIP_LIBRARY:FILEPATH=/home/biagas2/visit/thirdparty/2.9.0/szip/2.1/linuxx86_64_gcc-4.4/lib/libsz.so \ -DHDF5_NEED_ZLIB:BOOL=true \ DZLIB_LIBRARY:FILEPATH=/home/biagas2/visit/thirdparty/2.9.0/zlib/1.2.7/linuxx86_64_gcc-4.4/lib/libz.so \ DCMAKE_INSTALL_PREFIX:PATH=/home/biagas2/visit/thirdparty/2.9.0/cgns/3.2.1/linuxx86_64_gcc-4.4

-----------------------REDMINE MIGRATION----------------------- This ticket was migrated from Redmine. As such, not all information was able to be captured in the transition. Below is a complete record of the original redmine ticket.

Ticket number: 2145 Status: Pending Project: VisIt Tracker: Feature Priority: Normal Subject: Modify bv_cgns.sh to use CMake for linux builds Assigned to: - Category: - Target version: - Author: Kathleen Biagas Start: 02/11/2015 Due date: % Done: 0% Estimated time: Created: 02/11/2015 05:13 pm Updated: 02/19/2015 08:02 pm Likelihood: Severity: Found in version: 2.12.3 Impact: 3 - Medium Expected Use: 3 - Occasional OS: Linux Support Group: Any Description: The ticket is for linux builds, as the cmake build system may not work for OSX. From my attempts to build cgns on my linux system using build_visit (and having it fail with zlib problems)I used CGNS's cmake build system instead, with success. Here's a patch for 3.2.1 src/CMakeLists.txt file (to fix issues) Left file: /home/biagas2/BV290/cgnslib_3.2.1/src/CMakeLists.txt Right file: /home/biagas2/BV290/cgnslib_3.2.1-mod/src/CMakeLists.txt 107,108c107,108 < foreach(PATH ${${INPUT_PATH_VARIABLE}}) < file(TO_NATIVE_PATH ${PATH} NATIVE_PATH) - > foreach(nPATH ${${INPUT_PATH_VARIABLE}}) > file(TO_NATIVE_PATH ${nPATH} NATIVE_PATH) 110c110 < endforeach(PATH ${${INPUT_PATH_VARIABLE}}) - > endforeach(nPATH ${${INPUT_PATH_VARIABLE}}) 130c130 < native_paths(${ZLIB_LIBRARY} ZLIBLIB) - > native_paths(ZLIB_LIBRARY ZLIBLIB) I had used hdf5 szip zlib for build_visit command line, so based on that (and building shared libraries), here are the cmake commands I used to build cgns from scratch: -DCGNS_BUILD_SHARED:BOOL=true \ -DCGNS_ENABLE_64BIT:BOOL=true \ -DCGNS_ENABLE_HDF5:BOOL=true \ DHDF5_INCLUDE_PATH:PATH=/home/biagas2/visit/thirdparty/2.9.0/hdf5/1.8.7/linuxx86_64_gcc-4.4/include \ DHDF5_LIBRARY:FILEPATH=/home/biagas2/visit/thirdparty/2.9.0/hdf5/1.8.7/linuxx86_64_gcc-4.4/lib/libhdf5.so \ -DHDF5_NEED_SZIP:BOOL=true \ DSZIP_LIBRARY:FILEPATH=/home/biagas2/visit/thirdparty/2.9.0/szip/2.1/linuxx86_64_gcc-4.4/lib/libsz.so \ -DHDF5_NEED_ZLIB:BOOL=true \ DZLIB_LIBRARY:FILEPATH=/home/biagas2/visit/thirdparty/2.9.0/zlib/1.2.7/linuxx86_64_gcc-4.4/lib/libz.so \ DCMAKE_INSTALL_PREFIX:PATH=/home/biagas2/visit/thirdparty/2.9.0/cgns/3.2.1/linuxx86_64_gcc-4.4

Comments:

rusu24edward commented 4 years ago

@biagas is this still an issue?

biagas commented 4 years ago

There are currently no problems building cgns with the current bv_cgns.sh that I know of.

That said, when we update cgns to a newer version, we might want to consider using their cmake build system.