TOUGH3 installation issue
I realized many people have difficulty in compilation of TOUGH3. After polishing the installation cmake scripts and reorganizing the installation package, compilation of TOUGH3 should be more easy, stable and fast. Attached are the introduction, updated cmake scripts, additional required files.
35 replies
-
I noticed the original cmake script for compilation of AZTEC does not work properly in newer version of CMAKE. If this happen to you, please replace the original two filles with the attached ones, which are located at: /esd-toughlib/tpls/template
-
Is there a way to compile TOUGH3 with the latest version of PETSC? Because older versions of PETSC require python2, whereas python2 is now depreciated.
-
The TOUGH3 V1.1 allows using the latest version of PETSC
-
The zip file t3_installation_additionalFiles is missing the Zip file of petsc-3.7.1.tar.gz
-
I just checked. It was there.
-
I am trying to compile Tough3 in Cygwin (Windows) and I am getting the following error: Failed to configure TOUGH TPLS. I attached the CMakeError log for your reference. Could you please help me with it?. Thank you in advance.
-
Hi, I took a look of the log file. It seems something wrong with MPI installation. Have you installed the MPI (MPICH or OPENMPI)? I would suggest use WSL (Windows Linux Subsystem) to replace the Cygwin for TOUGH codes compilation and execution. WSL is more robust compared to Cygwin for running TOUGH.
Kenny
-
Hi, thank you for your reply. I have not installed MPI. I will take your advise about using WSL.
-
Hi,
I am trying to compile cmake in ubuntu windows I get the following error: gmake[2]: Leaving directory '/home/yplinux/cmake-3.8.2/cmake-3.8.2/cmake-3.8.2' [ 84%] Built target CMakeLib gmake[2]: Entering directory '/home/yplinux/cmake-3.8.2/cmake-3.8.2/cmake-3.8.2' Scanning dependencies of target CMakeServerLib gmake[2]: Leaving directory '/home/yplinux/cmake-3.8.2/cmake-3.8.2/cmake-3.8.2' gmake[2]: Entering directory '/home/yplinux/cmake-3.8.2/cmake-3.8.2/cmake-3.8.2' [ 85%] Building CXX object Source/CMakeFiles/CMakeServerLib.dir/cmFileMonitor.cxx.o [ 85%] Building CXX object Source/CMakeFiles/CMakeServerLib.dir/cmServer.cxx.o [ 85%] Building CXX object Source/CMakeFiles/CMakeServerLib.dir/cmServerConnection.cxx.o [ 85%] Building CXX object Source/CMakeFiles/CMakeServerLib.dir/cmServerProtocol.cxx.o /home/yplinux/cmake-3.8.2/cmake-3.8.2/cmake-3.8.2/Source/cmServerProtocol.cxx: In member function ‘std::size_t std::hash<LanguageData>::operator()(const LanguageData&) const’: /home/yplinux/cmake-3.8.2/cmake-3.8.2/cmake-3.8.2/Source/cmServerProtocol.cxx:620:43: error: ‘numeric_limits’ is not a member of ‘std’ 620 | (i.second ? std::numeric_limits<size_t>::max() : 0)); | ^~~~~~~~~~~~~~ /home/yplinux/cmake-3.8.2/cmake-3.8.2/cmake-3.8.2/Source/cmServerProtocol.cxx:620:64: error: expected primary-expression before ‘>’ token 620 | (i.second ? std::numeric_limits<size_t>::max() : 0)); | ^ /home/yplinux/cmake-3.8.2/cmake-3.8.2/cmake-3.8.2/Source/cmServerProtocol.cxx:620:67: error: ‘::max’ has not been declared; did you mean ‘std::max’? 620 | (i.second ? std::numeric_limits<size_t>::max() : 0)); | ^~~ | std::max In file included from /usr/include/c++/11/algorithm:62, from /home/yplinux/cmake-3.8.2/cmake-3.8.2/cmake-3.8.2/Source/cmLinkItem.h:8, from /home/yplinux/cmake-3.8.2/cmake-3.8.2/cmake-3.8.2/Source/cmGeneratorTarget.h:8, from /home/yplinux/cmake-3.8.2/cmake-3.8.2/cmake-3.8.2/Source/cmServerProtocol.cxx:7: /usr/include/c++/11/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here 3467 | max(initializer_list<_Tp> __l, _Compare __comp) | ^~~ /home/yplinux/cmake-3.8.2/cmake-3.8.2/cmake-3.8.2/Source/cmServerProtocol.cxx:626:39: error: ‘numeric_limits’ is not a member of ‘std’ 626 | result ^ (in.IsGenerated ? std::numeric_limits<size_t>::max() : 0); | ^~~~~~~~~~~~~~ /home/yplinux/cmake-3.8.2/cmake-3.8.2/cmake-3.8.2/Source/cmServerProtocol.cxx:626:60: error: expected primary-expression before ‘>’ token 626 | result ^ (in.IsGenerated ? std::numeric_limits<size_t>::max() : 0); | ^ /home/yplinux/cmake-3.8.2/cmake-3.8.2/cmake-3.8.2/Source/cmServerProtocol.cxx:626:63: error: ‘::max’ has not been declared; did you mean ‘std::max’? 626 | result ^ (in.IsGenerated ? std::numeric_limits<size_t>::max() : 0); | ^~~ | std::max In file included from /usr/include/c++/11/algorithm:62, from /home/yplinux/cmake-3.8.2/cmake-3.8.2/cmake-3.8.2/Source/cmLinkItem.h:8, from /home/yplinux/cmake-3.8.2/cmake-3.8.2/cmake-3.8.2/Source/cmGeneratorTarget.h:8, from /home/yplinux/cmake-3.8.2/cmake-3.8.2/cmake-3.8.2/Source/cmServerProtocol.cxx:7: /usr/include/c++/11/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here 3467 | max(initializer_list<_Tp> __l, _Compare __comp) | ^~~ gmake[2]: *** [Source/CMakeFiles/CMakeServerLib.dir/build.make:135: Source/CMakeFiles/CMakeServerLib.dir/cmServerProtocol.cxx.o] Error 1 gmake[2]: Leaving directory '/home/yplinux/cmake-3.8.2/cmake-3.8.2/cmake-3.8.2' gmake[1]: *** [CMakeFiles/Makefile2:2113: Source/CMakeFiles/CMakeServerLib.dir/all] Error 2 gmake[1]: Leaving directory '/home/yplinux/cmake-3.8.2/cmake-3.8.2/cmake-3.8.2' gmake: *** [Makefile:163: all] Error 2
Could you please help me with it? Thank you in advance.
Yessica
-
Hi Kenny
I have the same issue when I want to compile TOUGH3 for the TMVOC module.
I followed excatly what you said but still I get the same error: Failed to build TOUGH TPLS
Scanning dependencies of target toughlib_parallel
make[2]: Leaving directory `/home/hnasir2/Hamed/esd-tough3/build/tpl-build'
make -f src/mpi_interface/CMakeFiles/toughlib_parallel.dir/build.make src/mpi_interface/CMakeFiles/toughlib_parallel.dir/build
make[2]: Entering directory `/home/hnasir2/Hamed/esd-tough3/build/tpl-build'
[ 65%] Building Fortran object src/mpi_interface/CMakeFiles/toughlib_parallel.dir/parallel.f90.o
cd /home/hnasir2/Hamed/esd-tough3/build/tpl-build/src/mpi_interface && /usr/local/packages/gcc/9.3.0/5jmpgadg/bin/gfortran -DUSE_MPI -DUSE_PETSC -I/home/hnasir2/Hamed/esd-toughlib/src -I/home/hnasir2/Hamed/esd-tough3/tough3-install/tpls/include -I/home/hnasir2/Hamed/esd-tough3/tough3-install/tpls/conf -cpp -ffree-form -ffree-line-length-none -O3 -DNDEBUG -O3 -c /home/hnasir2/Hamed/esd-toughlib/src/mpi_interface/parallel.f90 -o CMakeFiles/toughlib_parallel.dir/parallel.f90.o
f951: Warning: Nonexistent include directory '/home/hnasir2/Hamed/esd-tough3/tough3-install/tpls/conf' [-Wmissing-include-dirs]
/home/hnasir2/Hamed/esd-toughlib/src/mpi_interface/parallel.f90:24:2:24 | #else
| 1~~~
Fatal Error: petsc/finclude/petscsys.h: No such file or directory
compilation terminated.
make[2]: *** [src/mpi_interface/CMakeFiles/toughlib_parallel.dir/parallel.f90.o] Error 1
make[2]: Leaving directory `/home/hnasir2/Hamed/esd-tough3/build/tpl-build'
make[1]: *** [src/mpi_interface/CMakeFiles/toughlib_parallel.dir/all] Error 2
make[1]: Leaving directory `/home/hnasir2/Hamed/esd-tough3/build/tpl-build'
make: *** [all] Error 2
Script ERROR: Failed to build TOUGH TPLS
I also noticed that you mentioned the issue when compiling fortran codes and then I replaced the two cmake files in esd-tough3 and esd-toughlib/src/ with the codes you provided but the issue persist. what should I do?
I am trying to compile this on hpc -
Please try TOUGH3 V1.1. If you have a license for TOUGH3, you get get it free from LBNL marketplace.
-
Hi, I was trying to install tough3 ECO2N during which I encountered the error as shown in the image. What is the way to rectify it? I have also replaced and copied the additional files. Kindly help me in this regard.