trilinos / Trilinos

Primary repository for the Trilinos Project
https://trilinos.org/
Other
1.2k stars 563 forks source link

Rol: Installation Issues #10058

Closed slavakung closed 2 years ago

slavakung commented 2 years ago

I am interested in using the ROL package

I went inside the package directory and ran "make" and it seemed to not return any errors. However, I liked at the directory and it did not contain most of the code that appears in the github and the documentation (in particular I wanted to try the examples).

So then I went to the trilinos base directory and tried "make all" and "make install" and in both cases got this error: [ 34%] Linking CXX executable SEACASNemesis_ne_ctest_wrap.exe /usr/bin/ld: ../exodus/libexodus.a(ex_utils.c.o): undefined reference to symbol 'H5get_libversion@@HDF5_SERIAL_1.8.7' /usr/bin/ld: /lib/x86_64-linux-gnu/libhdf5_serial.so.103: error adding symbols: DSO missing from command line collect2: error: ld returned 1 exit status make[2]: [packages/seacas/libraries/nemesis/CMakeFiles/SEACASNemesis_ne_ctest_wrap.dir/build.make:100: packages/seacas/libraries/nemesis/SEACASNemesis_ne_ctest_wrap.exe] Error 1 make[1]: [CMakeFiles/Makefile2:11026: packages/seacas/libraries/nemesis/CMakeFiles/SEACASNemesis_ne_ctest_wrap.dir/all] Error 2 make: *** [Makefile:166: all] Error 2

Thanks

dridzal commented 2 years ago

@slavakung : This is a @trilinos/seacas installation error, and ROL does not depend on Seacas. If you need to build Seacas, please contact Seacas developers for installation help. Otherwise, take a look at your Trilinos configure script and make sure to only enable the packages you need.

Regarding your first observation, ROL's headers will be installed in your specified Trilinos install directory after you run 'make install'. If your initial 'make' was successful, you should be able to also run 'ctest' in the ROL directory, and there should be output related to our tests and examples.

slavakung commented 2 years ago

Thank you for your quick response.

If I run "make install" inside "Trilinos/packages/rol" it says everything is up to date

If I run "ctest" inside "Trilinos/packages/rol" it says "No tests were found!"

I noticed that Trilinos/Trilinos-master/packages/rol does have more files, but trying "ctest" there says no test configuration file found

dridzal commented 2 years ago

@slavakung : Are you building in the source tree (the paths you gave above indicate that you are)? Trilinos does not support this, you'll need a build directory. Please review the instructions here:

https://docs.trilinos.org/files/TrilinosBuildReference.html#configuring-makefile-ninja-and-other-generators

Some quick configure scripts are given here:

https://github.com/trilinos/Trilinos/blob/master/INSTALL.rst

although they fail to mention that you'll need a separate build directory. @trilinos/framework , please update the quick install page to include mention of a build directory.

slavakung commented 2 years ago

OK thank you, I used the following script after making the Trilinos-build directory parallel to Trilinos

cmake \ -DCMAKE_C_COMPILER=/usr/bin/gcc \ -DCMAKE_CXX_COMPILER=/usr/bin/g++ \ -DCMAKE_Fortran_COMPILER=/usr/bin/gfortran \ -DTrilinos_ENABLE_ALL_PACKAGES=ON \ ../Trilinos

make -j install

and now get the following error:

Call Stack (most recent call first): cmake/tribits/core/package_arch/TribitsGlobalMacros.cmake:346 (assert_project_set_group_and_permissions_on_install_base_dir) cmake/tribits/core/package_arch/TribitsProjectImpl.cmake:129 (tribits_define_global_options_and_define_extra_repos) cmake/tribits/core/package_arch/TribitsProject.cmake:93 (tribits_project_impl) CMakeLists.txt:109 (TRIBITS_PROJECT)

-- Configuring incomplete, errors occurred!

I don't understand why it's trying to access a nonexistent directory outside of Trilinos? (this "PROJECTS")

cgcgcg commented 2 years ago

@slavakung Have a look at https://github.com/trilinos/Trilinos/blob/master/INSTALL.rst Is it possible that CMAKE_INSTALL_PREFIX is being set to some default value that has "PROJECTS" in it?

dridzal commented 2 years ago

I don't see that you've set CMAKE_INSTALL_PREFIX in your script. You may want to do that. This could be your build directory or a (direct) subdirectory of the build directory. It'll be created it if it doesn't exist. This could also be any directory on your system, as long as the specified parent directory exists and you have access to it. For example, you could use /home/slava/Documents/Trilinos/Trilexec for your install directory as long as /home/slava/Documents/Trilinos exists and you have the appropriate access permissions.

Also, note that cmake is using a cache. In the build directory, I would delete the cache by running

rm -rf CMake*

and try again. As an aside, it is often necessary to delete the cache, especially if you're changing compilers, directories, etc. I do it routinely in my builds.

slavakung commented 2 years ago

Thank you. I cleared the cache and ran this script:

cmake \ -DCMAKE_C_COMPILER=/usr/bin/gcc \ -DCMAKE_CXX_COMPILER=/usr/bin/g++ \ -DCMAKE_Fortran_COMPILER=/usr/bin/gfortran \ -DCMAKE_INSTALL_PREFIX=/home/slava/Documents/Trilinos-build/ \ -DTrilinos_SET_GROUP_AND_PERMISSIONS_ON_INSTALL_BASE_DIR=/home/slava/Documents/ \ -DTrilinos_ENABLE_ALL_PACKAGES=ON \ ../Trilinos

make -j install

to now obtain this error: Make Error at packages/kokkos/cmake/kokkos_test_cxx_std.cmake:99 (MESSAGE): C++14-compliant compiler detected, but unable to compile C++14 or later program. Verify that GNU:9.3.0 is set up correctly (e.g., check that correct library headers are being used).

Failing output:

Change Dir: /home/slava/Documents/Trilinos/packages/kokkos/corner_cases/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/make -f Makefile cmTC_a42f8/fast && /usr/bin/make -f CMakeFiles/cmTC_a42f8.dir/build.make CMakeFiles/cmTC_a42f8.dir/build

make[1]: Entering directory '/home/slava/Documents/Trilinos/packages/kokkos/corner_cases/CMakeFiles/CMakeTmp'

Building CXX object CMakeFiles/cmTC_a42f8.dir/cplusplus14.cpp.o

/usr/bin/g++ -D_GLIBCXX_DEBUG -g -O0 -ansi -pedantic -Wall -std=c++14 -o CMakeFiles/cmTC_a42f8.dir/cplusplus14.cpp.o -c /home/slava/Documents/Trilinos/Trilinos-master/packages/kokkos/cmake/compile_tests/cplusplus14.cpp

Linking CXX executable cmTC_a42f8

/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_a42f8.dir/link.txt --verbose=1

/usr/bin/g++ -D_GLIBCXX_DEBUG -g -O0 -ansi -pedantic -Wall -lg2c CMakeFiles/cmTC_a42f8.dir/cplusplus14.cpp.o -o cmTC_a42f8

/usr/bin/ld: cannot find -lg2c

collect2: error: ld returned 1 exit status

make[1]: *** [CMakeFiles/cmTC_a42f8.dir/build.make:99: cmTC_a42f8] Error 1

make[1]: Leaving directory '/home/slava/Documents/Trilinos/packages/kokkos/corner_cases/CMakeFiles/CMakeTmp'

make: *** [Makefile:127: cmTC_a42f8/fast] Error 2

Call Stack (most recent call first): packages/kokkos/cmake/kokkos_tribits.cmake:231 (INCLUDE) packages/kokkos/CMakeLists.txt:170 (KOKKOS_SETUP_BUILD_ENVIRONMENT)

cgcgcg commented 2 years ago

@slavakung Please post the output of the CMake invocation. I am not quite sure why we need to link with -lg2c, but it seems that that library is missing on your system. Have you tried enabling only packages that you actually need?

EDIT: Hm, looks like really old Fortran stuff was linked against that instead of gfortran. No idea how that gets injected in your link flags though.

dridzal commented 2 years ago

Following on @cgcgcg's comment: To build only ROL, you can try these options

-DTrilinos_ENABLE_ALL_PACKAGES=OFF \
-DTrilinos_ENABLE_ROL=ON \
-DTrilinos_ENABLE_ALL_OPTIONAL_PACKAGES=OFF \
-DTrilinos_ENABLE_TESTS=ON \

This is a fairly minimal configuration. Once this is working, we can enable ROL's optional dependencies.

slavakung commented 2 years ago

Hi,

I ran the following script:

cmake \
-DCMAKE_C_COMPILER=/usr/bin/gcc \
-DCMAKE_CXX_COMPILER=/usr/bin/g++ \
-DCMAKE_Fortran_COMPILER=/usr/bin/gfortran \
-DTrilinos_ENABLE_ALL_PACKAGES=OFF \
-DTrilinos_ENABLE_ROL=ON \
-DTrilinos_ENABLE_ALL_OPTIONAL_PACKAGES=OFF \
-DTrilinos_ENABLE_TESTS=ON \
-DCMAKE_INSTALL_PREFIX=/home/slava/Documents/Trilinos-build/ \
-DTrilinos_SET_GROUP_AND_PERMISSIONS_ON_INSTALL_BASE_DIR=/home/slava/Documents/ \
../Trilinos

make -j<n> install

now it seems to configure OK up until the end where it complains

line 13: n: No such file or directory

dridzal commented 2 years ago

@slavakung : Do you run this entire command from the command line, or as a script file with line breaks? In the latter case, I think you need to terminate all lines as in the example I gave. Also note that there should be no spaces after the backslashes.

cgcgcg commented 2 years ago

Just double checking: Are you really running make -j<n> install verbatim? Or make -j 4 install, make -j install or something like that?

slavakung commented 2 years ago

sorry I didn't realize n was a placeholder. I ran with just make -j install and now it says

make: *** No rule to make target 'install'. Stop.

I am running with a script file and there are no trailing spaces

cgcgcg commented 2 years ago

How about just make? And it definitely configured correctly?

dridzal commented 2 years ago

It sounds like configure failed.

slavakung commented 2 years ago

it seems to configure OK but inside the build make install and make doesn't do anything

-- Enabling ROL examples with required dependency on Teuchos::RCP or Teuchos::ParameterList

No ETI support requested by packages.

Set up for creating a distribution ...

Finished configuring Trilinos!

-- Configuring done -- Generating done -- Build files have been written to: /home/slava/Documents/Trilinos make: *** No rule to make target 'install'. Stop.

dridzal commented 2 years ago

@slavakung : Can you just run make without install? After it completes --it'll take a few minutes and you should see output about the packages Teuchos and ROL being built---check in your build directory for executables in, for instance, /packages/rol/example/rosenbrock and a few other similar directories. If the executables are not there, or you don't see the packages Teuchos and ROL being built, then there is still a configure error. If the executables are there, we'll have to look at the Trilinos framework. I've run make install just this morning with a different build (enabling most of Trilinos), and it worked just fine.

slavakung commented 2 years ago

inside Trilinos-build there is no target for make. Install the Trilinos directory "make" and "make install" both yield

collect2: error: ld returned 1 exit status make[2]: [packages/rol/adapters/teuchos/test/vector/CMakeFiles/ROL_adapters_teuchos_test_vector_TeuchosVectorInterface.dir/build.make:109: packages/rol/adapters/teuchos/test/vector/ROL_adapters_teuchos_test_vector_TeuchosVectorInterface.exe] Error 1 make[2]: Leaving directory '/home/slava/Documents/Trilinos' make[1]: [CMakeFiles/Makefile2:3821: packages/rol/adapters/teuchos/test/vector/CMakeFiles/ROL_adapters_teuchos_test_vector_TeuchosVectorInterface.dir/all] Error 2 make[1]: Leaving directory '/home/slava/Documents/Trilinos' make: *** [Makefile:169: all] Error 2

slavakung commented 2 years ago

sorry before the collect2 statement it's the familiar

/usr/bin/ld: cannot find -lg2c

cgcgcg commented 2 years ago

Wait a sec. Trilinos-build is your install target, right? So of course there is nothing there to make. make needs to be called from your build directory, which in turn is different from your source directory.

jhux2 commented 2 years ago

although they fail to mention that you'll need a separate build directory. @trilinos/framework , please update the quick install page to include mention of a build directory.

@dridzal Any Trilinos developer can update those instructions. If you know what needs to be updated, it's likely quicker/easier if you submit a PR fix.

slavakung commented 2 years ago

cgcgcg: Trilinos-build is my install target and Trilinos is my source directory. Running make from the first does nothing, and from the second yields the errors I showed above

cgcgcg commented 2 years ago

@slavakung Correct. make needs to be run from the build directory, i.e. where you called cmake. This cannot be the same as your source directory.

dridzal commented 2 years ago

@slavakung , to create the build directory from which you run make, please follow the detailed instructions I referenced earlier:

@slavakung : Are you building in the source tree (the paths you gave above indicate that you are)? Trilinos does not support this, you'll need a build directory. Please review the instructions here:

https://docs.trilinos.org/files/TrilinosBuildReference.html#configuring-makefile-ninja-and-other-generators

slavakung commented 2 years ago

This is what I did. I ran the configure script inside the build directory, but no Make file was created. Here is the entire output:

(base) slava@slava:~/Documents/Trilinos-build$ ./configure

Configuring Trilinos build directory

-- PROJECT_SOURCE_DIR='/home/slava/Documents/Trilinos/Trilinos-master' -- PROJECT_BINARY_DIR='/home/slava/Documents/Trilinos' -- Trilinos_TRIBITS_DIR='/home/slava/Documents/Trilinos/Trilinos-master/cmake/tribits' -- TriBITS_VERSION_STRING='0.9 (Dev)' -- CMAKE_VERSION='3.22.0' -- CMAKE_GENERATOR='Unix Makefiles' -- CMAKE_HOST_SYSTEM_NAME='Linux' -- Trilinos_HOSTNAME='slava' -- PYTHON_EXECUTABLE='/home/slava/anaconda3/bin/python'

Setting up major user options ...

-- Setting Trilinos_ENABLE_EXAMPLES=ON because Trilinos_ENABLE_TESTS=ON -- Setting Trilinos_ENABLE_TriKota=OFF because '/home/slava/Documents/Trilinos/Trilinos-master/packages/TriKota/Dakota' does not exist!

NOTE: Skipping generation of TrilinosRepoVersion.txt because project source is not a git repo!

Reading list of native TPLs from /home/slava/Documents/Trilinos/Trilinos-master/TPLsList.cmake

-- Trilinos_NUM_TPLS='116'

Reading list of native packages from /home/slava/Documents/Trilinos/Trilinos-master/PackagesList.cmake

-- Trilinos_NUM_PACKAGES='64'

Processing Project, Repository, and Package dependency files and building internal dependencies graph ...

-- Trilinos_NUM_SE_PACKAGES='161' -- Tentatively enabling TPL 'DLlib'

Explicitly enabled packages on input (by user): ROL 1

Explicitly enabled SE packages on input (by user): ROL 1

Explicitly disabled packages on input (by user or by default): TriKota NewPackage 2

Explicitly disabled SE packages on input (by user or by default): ShyLU_NodeBasker ShyLU_NodeFastILU SEACASExotec2 TriKota ShyLU_DDCore PanzerExprEval NewPackage 7

Explicitly enabled TPLs on input (by user): DLlib 1

Explicitly disabled TPLs on input (by user or by default): MPI Matio 2

Disabling all packages that have a required dependency on disabled TPLs and optional package TPL support based on TPLENABLE=OFF ...

-- Setting Trilinos_ENABLE_SEACASExo2mat=OFF because SEACASExo2mat has a required library dependence on disabled TPL Matio -- Setting Trilinos_ENABLE_SEACASMat2exo=OFF because SEACASMat2exo has a required library dependence on disabled TPL Matio -- Setting Trilinos_ENABLE_STKCoupling=OFF because STKCoupling has a required library dependence on disabled TPL MPI -- Setting Trilinos_ENABLE_STKMesh=OFF because STKMesh has a required library dependence on disabled TPL MPI -- Setting Trilinos_ENABLE_STKSearch=OFF because STKSearch has a required library dependence on disabled TPL MPI -- Setting Trilinos_ENABLE_ShyLU_DDBDDC=OFF because ShyLU_DDBDDC has a required library dependence on disabled TPL MPI -- Setting Trilinos_ENABLE_ShyLU_DDFROSch=OFF because ShyLU_DDFROSch has a required library dependence on disabled TPL MPI -- Setting Trilinos_ENABLE_PanzerDofMgr=OFF because PanzerDofMgr has a required library dependence on disabled TPL MPI -- Setting Trilinos_ENABLE_PanzerDiscFE=OFF because PanzerDiscFE has a required library dependence on disabled TPL MPI -- Setting Trilinos_ENABLE_PanzerMiniEM=OFF because PanzerMiniEM has a required library dependence on disabled TPL MPI -- Setting Trilinos_ENABLE_PikeBlackBox=OFF because PikeBlackBox has a required library dependence on disabled TPL MPI

Disabling subpackages for hard disables of parent packages due to TrilinosENABLE=OFF ...

Disabling forward required SE packages and optional intra-package support that have a dependency on disabled SE packages TrilinosENABLE=OFF ...

-- Setting ROL_ENABLE_TriKota=OFF because ROL has an optional library dependence on disabled package TriKota -- Setting Trilinos_ENABLE_STKIO=OFF because STKIO has a required library dependence on disabled package STKMesh -- Setting Trilinos_ENABLE_STKTools=OFF because STKTools has a required library dependence on disabled package STKMesh -- Setting Trilinos_ENABLE_STKBalance=OFF because STKBalance has a required library dependence on disabled package STKMesh -- Setting Trilinos_ENABLE_STKSearchUtil=OFF because STKSearchUtil has a required library dependence on disabled package STKMesh -- Setting Trilinos_ENABLE_Percept=OFF because Percept has a required library dependence on disabled package STKMesh -- Setting Trilinos_ENABLE_PanzerAdaptersSTK=OFF because PanzerAdaptersSTK has a required library dependence on disabled package STKMesh -- Setting Trilinos_ENABLE_STKTransfer=OFF because STKTransfer has a required library dependence on disabled package STKSearch -- Setting Trilinos_ENABLE_ShyLU_DD=OFF because ShyLU_DD has a required library dependence on disabled package ShyLU_DDBDDC -- Setting Trilinos_ENABLE_ShyLU=OFF because ShyLU has a required library dependence on disabled package ShyLU_DD -- Setting Trilinos_ENABLE_PikeImplicit=OFF because PikeImplicit has a required library dependence on disabled package PikeBlackBox

Enabling subpackages for hard enables of parent packages due to TrilinosENABLE=ON ...

Enabling all tests and/or examples that have not been explicitly disabled because TrilinosENABLE[TESTS,EXAMPLES]=ON ...

-- Setting ROL_ENABLE_TESTS=ON -- Setting ROL_ENABLE_EXAMPLES=ON

Enabling all required upstream SE packages for current set of enabled packages (Trilinos_ENABLE_SECONDARY_TESTED_CODE=ON) ...

-- Setting Trilinos_ENABLE_Teuchos=ON because ROL has a required dependence on Teuchos -- Setting Trilinos_ENABLE_TeuchosCore=ON because Teuchos has a required dependence on TeuchosCore -- Setting Trilinos_ENABLE_TeuchosParser=ON because Teuchos has a required dependence on TeuchosParser -- Setting Trilinos_ENABLE_TeuchosParameterList=ON because Teuchos has a required dependence on TeuchosParameterList -- Setting Trilinos_ENABLE_TeuchosComm=ON because Teuchos has a required dependence on TeuchosComm -- Setting Trilinos_ENABLE_TeuchosNumerics=ON because Teuchos has a required dependence on TeuchosNumerics -- Setting Trilinos_ENABLE_TeuchosRemainder=ON because Teuchos has a required dependence on TeuchosRemainder

Enabling all optional intra-package enables ENABLE that are not currently disabled if both sets of packages are enabled ...

-- NOT setting TeuchosCore_ENABLE_KokkosCore=ON since KokkosCore is NOT enabled at this point! -- NOT setting Teuchos_ENABLE_TeuchosKokkosCompat=ON since TeuchosKokkosCompat is NOT enabled at this point! -- NOT setting Teuchos_ENABLE_TeuchosKokkosComm=ON since TeuchosKokkosComm is NOT enabled at this point! -- NOT setting ROL_ENABLE_Belos=ON since Belos is NOT enabled at this point! -- NOT setting ROL_ENABLE_Epetra=ON since Epetra is NOT enabled at this point! -- NOT setting ROL_ENABLE_Tpetra=ON since Tpetra is NOT enabled at this point! -- NOT setting ROL_ENABLE_Thyra=ON since Thyra is NOT enabled at this point! -- NOT setting ROL_ENABLE_Sacado=ON since Sacado is NOT enabled at this point! -- NOT setting ROL_ENABLE_Intrepid=ON since Intrepid is NOT enabled at this point! -- NOT setting ROL_ENABLE_MiniTensor=ON since MiniTensor is NOT enabled at this point! -- NOT setting ROL_ENABLE_Shards=ON since Shards is NOT enabled at this point! -- NOT setting ROL_ENABLE_Amesos=ON since Amesos is NOT enabled at this point! -- NOT setting ROL_ENABLE_Amesos2=ON since Amesos2 is NOT enabled at this point! -- NOT setting ROL_ENABLE_Ifpack2=ON since Ifpack2 is NOT enabled at this point! -- NOT setting ROL_ENABLE_MueLu=ON since MueLu is NOT enabled at this point! -- NOT setting ROL_ENABLE_Tempus=ON since Tempus is NOT enabled at this point! -- NOT setting ROL_ENABLE_Gtest=ON since Gtest is NOT enabled at this point!

Enabling all remaining required TPLs for current set of enabled packages ...

-- Setting TPL_ENABLE_BLAS=ON because it is required by the enabled package TeuchosNumerics -- Setting TPL_ENABLE_LAPACK=ON because it is required by the enabled package TeuchosNumerics

Enabling all optional package TPL support ENABLE not currently disabled for enabled TPLs ...

Enabling TPLs based on ENABLE=ON if TPL is not explicitly disabled ...

Set cache entries for optional packages/TPLs and tests/examples for packages actually enabled ...

Enabling the shell of non-enabled parent packages (mostly for show) that have at least one subpackage enabled ...

Final set of enabled packages: Teuchos ROL 2

Final set of enabled SE packages: TeuchosCore TeuchosParser TeuchosParameterList TeuchosComm TeuchosNumerics TeuchosRemainder Teuchos ROL 8

Final set of non-enabled packages: TrilinosFrameworkTests TrilinosATDMConfigTests Gtest Kokkos KokkosKernels RTOp Sacado MiniTensor Epetra Zoltan Shards Triutils EpetraExt Tpetra TrilinosSS Domi Thyra Xpetra Isorropia Pliris AztecOO Galeri Amesos Pamgen Zoltan2Core Ifpack ML Belos ShyLU_Node Amesos2 SEACAS Komplex Anasazi Ifpack2 Stratimikos FEI Teko TriKota Intrepid Intrepid2 Compadre STK Percept Phalanx NOX Moertel MueLu Zoltan2Sphynx Zoltan2 ShyLU_DD ShyLU Rythmos Tempus Stokhos Piro Panzer PyTrilinos NewPackage Adelus TrilinosCouplings Pike TrilinosBuildStats 62

Final set of non-enabled SE packages: TrilinosFrameworkTests TrilinosATDMConfigTests Gtest KokkosCore KokkosContainers KokkosAlgorithms Kokkos TeuchosKokkosCompat TeuchosKokkosComm KokkosKernels RTOp Sacado MiniTensor Epetra Zoltan Shards Triutils EpetraExt TpetraClassic TpetraTSQR TpetraCore Tpetra TrilinosSS Domi ThyraCore ThyraEpetraAdapters ThyraEpetraExtAdapters ThyraTpetraAdapters Thyra Xpetra Isorropia Pliris AztecOO Galeri Amesos Pamgen Zoltan2Core Ifpack ML Belos ShyLU_NodeHTS ShyLU_NodeTacho ShyLU_NodeBasker ShyLU_NodeFastILU ShyLU_Node Amesos2 SEACASExodus SEACASExodus_for SEACASExoIIv2for32 SEACASNemesis SEACASIoss SEACASChaco SEACASAprepro_lib SEACASSupes SEACASSuplib SEACASSuplibC SEACASSuplibCpp SEACASSVDI SEACASPLT SEACASAlgebra SEACASAprepro SEACASBlot SEACASConjoin SEACASEjoin SEACASEpu SEACASCpup SEACASExo2mat SEACASExodiff SEACASExomatlab SEACASExotxt SEACASExo_format SEACASEx1ex2v2 SEACASExotec2 SEACASFastq SEACASGjoin SEACASGen3D SEACASGenshell SEACASGrepos SEACASExplore SEACASMapvarlib SEACASMapvar SEACASMapvar-kd SEACASMat2exo SEACASNas2exo SEACASZellij SEACASNemslice SEACASNemspread SEACASNumbers SEACASSlice SEACASTxtexo SEACASEx2ex1v2 SEACAS Komplex Anasazi Ifpack2 Stratimikos FEI Teko TriKota Intrepid Intrepid2 Compadre STKUtil STKEmend STKCoupling STKMath STKSimd STKNGP_TEST STKTopology STKMesh STKIO STKSearch STKTransfer STKTools STKBalance STKUnit_test_utils STKSearchUtil STKUnit_tests STKDoc_tests STKExprEval STK Percept Phalanx NOX Moertel MueLu Zoltan2Sphynx Zoltan2 ShyLU_DDBDDC ShyLU_DDFROSch ShyLU_DDCore ShyLU_DDCommon ShyLU_DD ShyLU Rythmos Tempus Stokhos Piro PanzerCore PanzerDofMgr PanzerDiscFE PanzerAdaptersSTK PanzerMiniEM PanzerExprEval Panzer PyTrilinos NewPackage Adelus TrilinosCouplings PikeBlackBox PikeImplicit Pike TrilinosBuildStats 153

Final set of enabled TPLs: BLAS LAPACK DLlib 3

Final set of non-enabled TPLs: MKL yaml-cpp Peano CUDA CUBLAS CUSOLVER CUSPARSE Thrust Cusp TBB Pthread HWLOC QTHREAD BinUtils ARPREC QD MPI Boost Scotch OVIS gpcd METIS MTMETIS ParMETIS PuLP TopoManager LibTopoMap PaToH CppUnit ADOLC ADIC TVMET MF ExodusII Nemesis XDMF Zlib HDF5 CGNS Pnetcdf Netcdf ADIOS2 y12m SuperLUDist SuperLUMT SuperLU Cholmod UMFPACK MA28 AMD CSparse HYPRE PETSC BLACS SCALAPACK MUMPS STRUMPACK PARDISO_MKL PARDISO Oski TAUCS ForUQTK Dakota HIPS MATLAB CASK SPARSKIT QT gtest BoostLib BoostAlbLib OpenNURBS Portals CrayPortals Gemini InfiniBand BGPDCMF BGQPAMI Pablo HPCToolkit Clp GLPK qpOASES Matio PAPI MATLABLib Eigen X11 Lemon GLM quadmath CAMAL RTlib AmgX CGAL CGALCore VTune TASMANIAN ArrayFireCPU SimMesh SimModel SimParasolid SimAcis SimField Valgrind QUO ViennaCL Avatar mlpack pebbl MAGMASparse Check SARMA 113

Setting up export dependencies for all enabled SE packages ...

Probing the environment ...

-- USE_XSDK_DEFAULTS='FALSE' -- BUILD_SHARED_LIBS='ON' -- CMAKE_BUILD_TYPE='DEBUG' -- CMAKE_C_COMPILER_ID='GNU' -- CMAKE_C_COMPILER_VERSION='9.3.0' -- CMAKE_CXX_COMPILER_ID='GNU' -- CMAKE_CXX_COMPILER_VERSION='9.3.0' -- Trilinos_SET_INSTALL_RPATH='TRUE' -- CMAKE_INSTALL_RPATH_USE_LINK_PATH='TRUE' -- Setting default for CMAKE_INSTALL_RPATH pointing to Trilinos_INSTALL_LIB_DIR -- CMAKE_INSTALL_RPATH='/home/slava/Documents/Trilinos-build/lib' -- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)

Getting information for all enabled TPLs ...

Processing enabled TPL: BLAS (enabled by TeuchosNumerics, disable with -DTPL_ENABLE_BLAS=OFF) -- BLAS_LIBRARY_NAMES='blas blas_win32' -- TPL_BLAS_LIBRARIES='/usr/lib/x86_64-linux-gnu/libblas.so' Processing enabled TPL: LAPACK (enabled by TeuchosNumerics, disable with -DTPL_ENABLE_LAPACK=OFF) -- LAPACK_LIBRARY_NAMES='lapack lapack_win32' -- TPL_LAPACK_LIBRARIES='/usr/lib/x86_64-linux-gnu/liblapack.so' Processing enabled TPL: DLlib (enabled explicitly, disable with -DTPL_ENABLE_DLlib=OFF) -- Attempting to tentatively enable TPL 'DLlib' ... -- DLlib_LIBRARY_NAMES='dl' -- TPL_DLlib_LIBRARIES='/usr/lib/x86_64-linux-gnu/libdl.so' -- Attempt to tentatively enable TPL 'DLlib' passed!

Setting up testing support ...

-- CTEST_DROP_METHOD='http' -- CTEST_DROP_SITE='testing.sandia.gov' -- CTEST_PROJECT_NAME='Trilinos' -- CTEST_DROP_LOCATION='/cdash/submit.php?project=Trilinos' -- CTEST_TRIGGER_SITE='' -- CTEST_DROP_SITE_CDASH='TRUE' -- TRIBITS_2ND_CTEST_DROP_SITE='testing-dev.sandia.gov' -- TRIBITS_2ND_CTEST_DROP_LOCATION='/cdash/submit.php?project=Trilinos'

Configuring individual enabled Trilinos packages ...

-- NOTE: Can't fill in version date files for Trilinos since /home/slava/Documents/Trilinos/Trilinos-master/.git/ does not exist! Processing enabled package: Teuchos (Core, Parser, ParameterList, Comm, Numerics, Remainder) -- You set HAVE_GCC_ABI_DEMANGLE=1; this suggests you are cross compiling. If you're not cross compiling, best practice is not to set this; Trilinos will figure it out for you. -- You set HAVE_TEUCHOS_BLASFLOAT=1; this suggests you are cross compiling. If you're not cross compiling, best practice is not to set this; Trilinos will figure it out for you. -- You set HAVE_TEUCHOS_LAPACKLARND=; this suggests you are cross compiling. If you're not cross compiling, best practice is not to set this; Trilinos will figure it out for you. -- C++ compiler supports attribute((constructor)) syntax -- C++ compiler supports attribute((weak)) syntax and testing weak functions -- C++ compiler does NOT support #pragma weak syntax and testing weak functions -- Wrapping every Teuchos timer with a Kokkos profiling region. Processing enabled package: ROL (Libs, Tests, Examples) -- ROL has been configured to use the build options: -- ROL::Ptr is implemented by Teuchos::RCP -- ROL::ParameterList is implemented by Teuchos::ParameterList -- ROL::stacktrace is implemented by Teuchos::stacktrace -- ROL::LinearAlgebra is implemented by Teuchos::SerialDense -- ROL::LAPACK is implemented by Teuchos::LAPACK -- ROL::BLAS is implemented by Teuchos::BLAS -- Enabling ROL examples with required dependency on Teuchos::RCP or Teuchos::ParameterList

No ETI support requested by packages.

Set up for creating a distribution ...

Finished configuring Trilinos!

-- Configuring done -- Generating done -- Build files have been written to: /home/slava/Documents/Trilinos make: *** No rule to make target 'install'. Stop.

cgcgcg commented 2 years ago

From the above, it appears that

Double checking: you ran make in /home/slava/Documents/Trilinos? (I'm not sure, but maybehaving the source dir be a subfolder of the build dir is causing issues?)

slavakung commented 2 years ago

In the script, I have

cmake \ -DCMAKE_C_COMPILER=/usr/bin/gcc \ -DCMAKE_CXX_COMPILER=/usr/bin/g++ \ -DCMAKE_Fortran_COMPILER=/usr/bin/gfortran \ -DTrilinos_ENABLE_ALL_PACKAGES=OFF \ -DTrilinos_ENABLE_ROL=ON \ -DTrilinos_ENABLE_ALL_OPTIONAL_PACKAGES=OFF \ -DTrilinos_ENABLE_TESTS=ON \ -DCMAKE_INSTALL_PREFIX=/home/slava/Documents/Trilinos-build/ \ -DTrilinos_SET_GROUP_AND_PERMISSIONS_ON_INSTALL_BASE_DIR=/home/slava/Documents/ \ ../Trilinos

make -j install

and I ran the script from inside Trilinos-build and then it said no target with make

I didn't know there were three to specify though, I thought by the instructions the "source" is just the "Trilinos" directory and the target is the "Trilinos-build" directory.

If you can recommend a particular re-arranging and renaming of the subdirectories and adjustment of the configure script to try, please do. Thanks

cgcgcg commented 2 years ago

Source dir is where you cloned the Trilinos repo to. Build dir is the folder in which you call cmake. Install dir is what you pass as CMAKE_INSTALL_PREFIX. This is where the completed build will be installed, not where it will be built. You need to call make in you build dir.

slavakung commented 2 years ago

I made a new directory "Tril" and ran the cmake command above from that directory and then switched to "Trilinos" and ran make -j install and received the usual error:

collect2: error: ld returned 1 exit status make[2]: [packages/rol/adapters/teuchos/test/sol/CMakeFiles/ROL_adapters_teuchos_test_sol_solTeuchosBatchManager.dir/build.make:109: packages/rol/adapters/teuchos/test/sol/ROL_adapters_teuchos_test_sol_solTeuchosBatchManager.exe] Error 1 make[2]: Leaving directory '/home/slava/Documents/Trilinos' make[1]: [CMakeFiles/Makefile2:3949: packages/rol/adapters/teuchos/test/sol/CMakeFiles/ROL_adapters_teuchos_test_sol_solTeuchosBatchManager.dir/all] Error 2 make[1]: Leaving directory '/home/slava/Documents/Trilinos' make: *** [Makefile:169: all] Error 2

dridzal commented 2 years ago

@slavakung : Is there a specific reason that you are not running make in the newly created 'Tril' build directory? I'll explain how this should typically work:

Suppose your Trilinos source code is in the Trilinos directory. We'll place the build directory inside of it, for simplicity (although it could be a completely separate directory as well).

> cd Trilinos
> mkdir build
> cd build
> --- Run your cmake command here (with the correct Trilinos source location in the last line). ---
> make

So you should stay in the build directory when running make. If you still get the linker error, we'll have to get more information about which Trilinos library or third-party library is causing it.

slavakung commented 2 years ago

I had tried this, this is the full output:

(base) slava@slava:~/Documents/Tril$ cmake \

-DCMAKE_C_COMPILER=/usr/bin/gcc \ -DCMAKE_CXX_COMPILER=/usr/bin/g++ \ -DCMAKE_Fortran_COMPILER=/usr/bin/gfortran \ -DTrilinos_ENABLE_ALL_PACKAGES=OFF \ -DTrilinos_ENABLE_ROL=ON \ -DTrilinos_ENABLE_ALL_OPTIONAL_PACKAGES=OFF \ -DTrilinos_ENABLE_TESTS=ON \ -DCMAKE_INSTALL_PREFIX=/home/slava/Documents/Trilinos-build/ \ -DTrilinos_SET_GROUP_AND_PERMISSIONS_ON_INSTALL_BASE_DIR=/home/slava/Documents/ \ ../Trilinos

Configuring Trilinos build directory

-- PROJECT_SOURCE_DIR='/home/slava/Documents/Trilinos/Trilinos-master' -- PROJECT_BINARY_DIR='/home/slava/Documents/Trilinos' -- Trilinos_TRIBITS_DIR='/home/slava/Documents/Trilinos/Trilinos-master/cmake/tribits' -- TriBITS_VERSION_STRING='0.9 (Dev)' -- CMAKE_VERSION='3.22.0' -- CMAKE_GENERATOR='Unix Makefiles' -- CMAKE_HOST_SYSTEM_NAME='Linux' -- Trilinos_HOSTNAME='slava' -- PYTHON_EXECUTABLE='/home/slava/anaconda3/bin/python'

Setting up major user options ...

-- Setting Trilinos_ENABLE_EXAMPLES=ON because Trilinos_ENABLE_TESTS=ON -- Setting Trilinos_ENABLE_TriKota=OFF because '/home/slava/Documents/Trilinos/Trilinos-master/packages/TriKota/Dakota' does not exist!

NOTE: Skipping generation of TrilinosRepoVersion.txt because project source is not a git repo!

Reading list of native TPLs from /home/slava/Documents/Trilinos/Trilinos-master/TPLsList.cmake

-- Trilinos_NUM_TPLS='116'

Reading list of native packages from /home/slava/Documents/Trilinos/Trilinos-master/PackagesList.cmake

-- Trilinos_NUM_PACKAGES='64'

Processing Project, Repository, and Package dependency files and building internal dependencies graph ...

-- Trilinos_NUM_SE_PACKAGES='161' -- Tentatively enabling TPL 'DLlib'

Explicitly enabled packages on input (by user): ROL 1

Explicitly enabled SE packages on input (by user): ROL 1

Explicitly disabled packages on input (by user or by default): TriKota NewPackage 2

Explicitly disabled SE packages on input (by user or by default): ShyLU_NodeBasker ShyLU_NodeFastILU SEACASExotec2 TriKota ShyLU_DDCore PanzerExprEval NewPackage 7

Explicitly enabled TPLs on input (by user): DLlib 1

Explicitly disabled TPLs on input (by user or by default): MPI Matio 2

Disabling all packages that have a required dependency on disabled TPLs and optional package TPL support based on TPLENABLE=OFF ...

-- Setting Trilinos_ENABLE_SEACASExo2mat=OFF because SEACASExo2mat has a required library dependence on disabled TPL Matio -- Setting Trilinos_ENABLE_SEACASMat2exo=OFF because SEACASMat2exo has a required library dependence on disabled TPL Matio -- Setting Trilinos_ENABLE_STKCoupling=OFF because STKCoupling has a required library dependence on disabled TPL MPI -- Setting Trilinos_ENABLE_STKMesh=OFF because STKMesh has a required library dependence on disabled TPL MPI -- Setting Trilinos_ENABLE_STKSearch=OFF because STKSearch has a required library dependence on disabled TPL MPI -- Setting Trilinos_ENABLE_ShyLU_DDBDDC=OFF because ShyLU_DDBDDC has a required library dependence on disabled TPL MPI -- Setting Trilinos_ENABLE_ShyLU_DDFROSch=OFF because ShyLU_DDFROSch has a required library dependence on disabled TPL MPI -- Setting Trilinos_ENABLE_PanzerDofMgr=OFF because PanzerDofMgr has a required library dependence on disabled TPL MPI -- Setting Trilinos_ENABLE_PanzerDiscFE=OFF because PanzerDiscFE has a required library dependence on disabled TPL MPI -- Setting Trilinos_ENABLE_PanzerMiniEM=OFF because PanzerMiniEM has a required library dependence on disabled TPL MPI -- Setting Trilinos_ENABLE_PikeBlackBox=OFF because PikeBlackBox has a required library dependence on disabled TPL MPI

Disabling subpackages for hard disables of parent packages due to TrilinosENABLE=OFF ...

Disabling forward required SE packages and optional intra-package support that have a dependency on disabled SE packages TrilinosENABLE=OFF ...

-- Setting ROL_ENABLE_TriKota=OFF because ROL has an optional library dependence on disabled package TriKota -- Setting Trilinos_ENABLE_STKIO=OFF because STKIO has a required library dependence on disabled package STKMesh -- Setting Trilinos_ENABLE_STKTools=OFF because STKTools has a required library dependence on disabled package STKMesh -- Setting Trilinos_ENABLE_STKBalance=OFF because STKBalance has a required library dependence on disabled package STKMesh -- Setting Trilinos_ENABLE_STKSearchUtil=OFF because STKSearchUtil has a required library dependence on disabled package STKMesh -- Setting Trilinos_ENABLE_Percept=OFF because Percept has a required library dependence on disabled package STKMesh -- Setting Trilinos_ENABLE_PanzerAdaptersSTK=OFF because PanzerAdaptersSTK has a required library dependence on disabled package STKMesh -- Setting Trilinos_ENABLE_STKTransfer=OFF because STKTransfer has a required library dependence on disabled package STKSearch -- Setting Trilinos_ENABLE_ShyLU_DD=OFF because ShyLU_DD has a required library dependence on disabled package ShyLU_DDBDDC -- Setting Trilinos_ENABLE_ShyLU=OFF because ShyLU has a required library dependence on disabled package ShyLU_DD -- Setting Trilinos_ENABLE_PikeImplicit=OFF because PikeImplicit has a required library dependence on disabled package PikeBlackBox

Enabling subpackages for hard enables of parent packages due to TrilinosENABLE=ON ...

Enabling all tests and/or examples that have not been explicitly disabled because TrilinosENABLE[TESTS,EXAMPLES]=ON ...

-- Setting ROL_ENABLE_TESTS=ON -- Setting ROL_ENABLE_EXAMPLES=ON

Enabling all required upstream SE packages for current set of enabled packages (Trilinos_ENABLE_SECONDARY_TESTED_CODE=ON) ...

-- Setting Trilinos_ENABLE_Teuchos=ON because ROL has a required dependence on Teuchos -- Setting Trilinos_ENABLE_TeuchosCore=ON because Teuchos has a required dependence on TeuchosCore -- Setting Trilinos_ENABLE_TeuchosParser=ON because Teuchos has a required dependence on TeuchosParser -- Setting Trilinos_ENABLE_TeuchosParameterList=ON because Teuchos has a required dependence on TeuchosParameterList -- Setting Trilinos_ENABLE_TeuchosComm=ON because Teuchos has a required dependence on TeuchosComm -- Setting Trilinos_ENABLE_TeuchosNumerics=ON because Teuchos has a required dependence on TeuchosNumerics -- Setting Trilinos_ENABLE_TeuchosRemainder=ON because Teuchos has a required dependence on TeuchosRemainder

Enabling all optional intra-package enables ENABLE that are not currently disabled if both sets of packages are enabled ...

-- NOT setting TeuchosCore_ENABLE_KokkosCore=ON since KokkosCore is NOT enabled at this point! -- NOT setting Teuchos_ENABLE_TeuchosKokkosCompat=ON since TeuchosKokkosCompat is NOT enabled at this point! -- NOT setting Teuchos_ENABLE_TeuchosKokkosComm=ON since TeuchosKokkosComm is NOT enabled at this point! -- NOT setting ROL_ENABLE_Belos=ON since Belos is NOT enabled at this point! -- NOT setting ROL_ENABLE_Epetra=ON since Epetra is NOT enabled at this point! -- NOT setting ROL_ENABLE_Tpetra=ON since Tpetra is NOT enabled at this point! -- NOT setting ROL_ENABLE_Thyra=ON since Thyra is NOT enabled at this point! -- NOT setting ROL_ENABLE_Sacado=ON since Sacado is NOT enabled at this point! -- NOT setting ROL_ENABLE_Intrepid=ON since Intrepid is NOT enabled at this point! -- NOT setting ROL_ENABLE_MiniTensor=ON since MiniTensor is NOT enabled at this point! -- NOT setting ROL_ENABLE_Shards=ON since Shards is NOT enabled at this point! -- NOT setting ROL_ENABLE_Amesos=ON since Amesos is NOT enabled at this point! -- NOT setting ROL_ENABLE_Amesos2=ON since Amesos2 is NOT enabled at this point! -- NOT setting ROL_ENABLE_Ifpack2=ON since Ifpack2 is NOT enabled at this point! -- NOT setting ROL_ENABLE_MueLu=ON since MueLu is NOT enabled at this point! -- NOT setting ROL_ENABLE_Tempus=ON since Tempus is NOT enabled at this point! -- NOT setting ROL_ENABLE_Gtest=ON since Gtest is NOT enabled at this point!

Enabling all remaining required TPLs for current set of enabled packages ...

-- Setting TPL_ENABLE_BLAS=ON because it is required by the enabled package TeuchosNumerics -- Setting TPL_ENABLE_LAPACK=ON because it is required by the enabled package TeuchosNumerics

Enabling all optional package TPL support ENABLE not currently disabled for enabled TPLs ...

Enabling TPLs based on ENABLE=ON if TPL is not explicitly disabled ...

Set cache entries for optional packages/TPLs and tests/examples for packages actually enabled ...

Enabling the shell of non-enabled parent packages (mostly for show) that have at least one subpackage enabled ...

Final set of enabled packages: Teuchos ROL 2

Final set of enabled SE packages: TeuchosCore TeuchosParser TeuchosParameterList TeuchosComm TeuchosNumerics TeuchosRemainder Teuchos ROL 8

Final set of non-enabled packages: TrilinosFrameworkTests TrilinosATDMConfigTests Gtest Kokkos KokkosKernels RTOp Sacado MiniTensor Epetra Zoltan Shards Triutils EpetraExt Tpetra TrilinosSS Domi Thyra Xpetra Isorropia Pliris AztecOO Galeri Amesos Pamgen Zoltan2Core Ifpack ML Belos ShyLU_Node Amesos2 SEACAS Komplex Anasazi Ifpack2 Stratimikos FEI Teko TriKota Intrepid Intrepid2 Compadre STK Percept Phalanx NOX Moertel MueLu Zoltan2Sphynx Zoltan2 ShyLU_DD ShyLU Rythmos Tempus Stokhos Piro Panzer PyTrilinos NewPackage Adelus TrilinosCouplings Pike TrilinosBuildStats 62

Final set of non-enabled SE packages: TrilinosFrameworkTests TrilinosATDMConfigTests Gtest KokkosCore KokkosContainers KokkosAlgorithms Kokkos TeuchosKokkosCompat TeuchosKokkosComm KokkosKernels RTOp Sacado MiniTensor Epetra Zoltan Shards Triutils EpetraExt TpetraClassic TpetraTSQR TpetraCore Tpetra TrilinosSS Domi ThyraCore ThyraEpetraAdapters ThyraEpetraExtAdapters ThyraTpetraAdapters Thyra Xpetra Isorropia Pliris AztecOO Galeri Amesos Pamgen Zoltan2Core Ifpack ML Belos ShyLU_NodeHTS ShyLU_NodeTacho ShyLU_NodeBasker ShyLU_NodeFastILU ShyLU_Node Amesos2 SEACASExodus SEACASExodus_for SEACASExoIIv2for32 SEACASNemesis SEACASIoss SEACASChaco SEACASAprepro_lib SEACASSupes SEACASSuplib SEACASSuplibC SEACASSuplibCpp SEACASSVDI SEACASPLT SEACASAlgebra SEACASAprepro SEACASBlot SEACASConjoin SEACASEjoin SEACASEpu SEACASCpup SEACASExo2mat SEACASExodiff SEACASExomatlab SEACASExotxt SEACASExo_format SEACASEx1ex2v2 SEACASExotec2 SEACASFastq SEACASGjoin SEACASGen3D SEACASGenshell SEACASGrepos SEACASExplore SEACASMapvarlib SEACASMapvar SEACASMapvar-kd SEACASMat2exo SEACASNas2exo SEACASZellij SEACASNemslice SEACASNemspread SEACASNumbers SEACASSlice SEACASTxtexo SEACASEx2ex1v2 SEACAS Komplex Anasazi Ifpack2 Stratimikos FEI Teko TriKota Intrepid Intrepid2 Compadre STKUtil STKEmend STKCoupling STKMath STKSimd STKNGP_TEST STKTopology STKMesh STKIO STKSearch STKTransfer STKTools STKBalance STKUnit_test_utils STKSearchUtil STKUnit_tests STKDoc_tests STKExprEval STK Percept Phalanx NOX Moertel MueLu Zoltan2Sphynx Zoltan2 ShyLU_DDBDDC ShyLU_DDFROSch ShyLU_DDCore ShyLU_DDCommon ShyLU_DD ShyLU Rythmos Tempus Stokhos Piro PanzerCore PanzerDofMgr PanzerDiscFE PanzerAdaptersSTK PanzerMiniEM PanzerExprEval Panzer PyTrilinos NewPackage Adelus TrilinosCouplings PikeBlackBox PikeImplicit Pike TrilinosBuildStats 153

Final set of enabled TPLs: BLAS LAPACK DLlib 3

Final set of non-enabled TPLs: MKL yaml-cpp Peano CUDA CUBLAS CUSOLVER CUSPARSE Thrust Cusp TBB Pthread HWLOC QTHREAD BinUtils ARPREC QD MPI Boost Scotch OVIS gpcd METIS MTMETIS ParMETIS PuLP TopoManager LibTopoMap PaToH CppUnit ADOLC ADIC TVMET MF ExodusII Nemesis XDMF Zlib HDF5 CGNS Pnetcdf Netcdf ADIOS2 y12m SuperLUDist SuperLUMT SuperLU Cholmod UMFPACK MA28 AMD CSparse HYPRE PETSC BLACS SCALAPACK MUMPS STRUMPACK PARDISO_MKL PARDISO Oski TAUCS ForUQTK Dakota HIPS MATLAB CASK SPARSKIT QT gtest BoostLib BoostAlbLib OpenNURBS Portals CrayPortals Gemini InfiniBand BGPDCMF BGQPAMI Pablo HPCToolkit Clp GLPK qpOASES Matio PAPI MATLABLib Eigen X11 Lemon GLM quadmath CAMAL RTlib AmgX CGAL CGALCore VTune TASMANIAN ArrayFireCPU SimMesh SimModel SimParasolid SimAcis SimField Valgrind QUO ViennaCL Avatar mlpack pebbl MAGMASparse Check SARMA 113

Setting up export dependencies for all enabled SE packages ...

Probing the environment ...

-- USE_XSDK_DEFAULTS='FALSE' -- BUILD_SHARED_LIBS='ON' -- CMAKE_BUILD_TYPE='DEBUG' -- CMAKE_C_COMPILER_ID='GNU' -- CMAKE_C_COMPILER_VERSION='9.3.0' -- CMAKE_CXX_COMPILER_ID='GNU' -- CMAKE_CXX_COMPILER_VERSION='9.3.0' -- Trilinos_SET_INSTALL_RPATH='TRUE' -- CMAKE_INSTALL_RPATH_USE_LINK_PATH='TRUE' -- Setting default for CMAKE_INSTALL_RPATH pointing to Trilinos_INSTALL_LIB_DIR -- CMAKE_INSTALL_RPATH='/home/slava/Documents/Trilinos-build/lib' -- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)

Getting information for all enabled TPLs ...

Processing enabled TPL: BLAS (enabled by TeuchosNumerics, disable with -DTPL_ENABLE_BLAS=OFF) -- BLAS_LIBRARY_NAMES='blas blas_win32' -- TPL_BLAS_LIBRARIES='/usr/lib/x86_64-linux-gnu/libblas.so' Processing enabled TPL: LAPACK (enabled by TeuchosNumerics, disable with -DTPL_ENABLE_LAPACK=OFF) -- LAPACK_LIBRARY_NAMES='lapack lapack_win32' -- TPL_LAPACK_LIBRARIES='/usr/lib/x86_64-linux-gnu/liblapack.so' Processing enabled TPL: DLlib (enabled explicitly, disable with -DTPL_ENABLE_DLlib=OFF) -- Attempting to tentatively enable TPL 'DLlib' ... -- DLlib_LIBRARY_NAMES='dl' -- TPL_DLlib_LIBRARIES='/usr/lib/x86_64-linux-gnu/libdl.so' -- Attempt to tentatively enable TPL 'DLlib' passed!

Setting up testing support ...

-- CTEST_DROP_METHOD='http' -- CTEST_DROP_SITE='testing.sandia.gov' -- CTEST_PROJECT_NAME='Trilinos' -- CTEST_DROP_LOCATION='/cdash/submit.php?project=Trilinos' -- CTEST_TRIGGER_SITE='' -- CTEST_DROP_SITE_CDASH='TRUE' -- TRIBITS_2ND_CTEST_DROP_SITE='testing-dev.sandia.gov' -- TRIBITS_2ND_CTEST_DROP_LOCATION='/cdash/submit.php?project=Trilinos'

Configuring individual enabled Trilinos packages ...

-- NOTE: Can't fill in version date files for Trilinos since /home/slava/Documents/Trilinos/Trilinos-master/.git/ does not exist! Processing enabled package: Teuchos (Core, Parser, ParameterList, Comm, Numerics, Remainder) -- You set HAVE_GCC_ABI_DEMANGLE=1; this suggests you are cross compiling. If you're not cross compiling, best practice is not to set this; Trilinos will figure it out for you. -- You set HAVE_TEUCHOS_BLASFLOAT=1; this suggests you are cross compiling. If you're not cross compiling, best practice is not to set this; Trilinos will figure it out for you. -- You set HAVE_TEUCHOS_LAPACKLARND=; this suggests you are cross compiling. If you're not cross compiling, best practice is not to set this; Trilinos will figure it out for you. -- C++ compiler supports attribute((constructor)) syntax -- C++ compiler supports attribute((weak)) syntax and testing weak functions -- C++ compiler does NOT support #pragma weak syntax and testing weak functions -- Wrapping every Teuchos timer with a Kokkos profiling region. Processing enabled package: ROL (Libs, Tests, Examples) -- ROL has been configured to use the build options: -- ROL::Ptr is implemented by Teuchos::RCP -- ROL::ParameterList is implemented by Teuchos::ParameterList -- ROL::stacktrace is implemented by Teuchos::stacktrace -- ROL::LinearAlgebra is implemented by Teuchos::SerialDense -- ROL::LAPACK is implemented by Teuchos::LAPACK -- ROL::BLAS is implemented by Teuchos::BLAS -- Enabling ROL examples with required dependency on Teuchos::RCP or Teuchos::ParameterList

No ETI support requested by packages.

Set up for creating a distribution ...

Finished configuring Trilinos!

-- Configuring done -- Generating done -- Build files have been written to: /home/slava/Documents/Trilinos (base) slava@slava:~/Documents/Tril$ (base) slava@slava:~/Documents/Tril$ make -j install make: *** No rule to make target 'install'. Stop.

dridzal commented 2 years ago

@slavakung : I'm not sure what make -j install does. Typically -j is used to specify the number of processes with which to build, e.g., make -j4 install. Can you just try make ?

dridzal commented 2 years ago

@slavakung : I tried to recreate your issue on my system, and I can't. Everything works fine. Please follow these directions.

Assuming Trilinos is your source directory (where you cloned the repo):

> cd Trilinos
> mkdir build
> cd build
> --- Run your cmake command here (with the correct Trilinos source location in the last line). ---
> make -j8 install

where you should adjust 8 to the number of processes you want to use for the build.

The cmake script I ran was

cmake \
-DCMAKE_C_COMPILER=/usr/bin/gcc \
-DCMAKE_CXX_COMPILER=/usr/bin/g++ \
-DCMAKE_Fortran_COMPILER=/usr/bin/gfortran \
-DTrilinos_ENABLE_ALL_PACKAGES=OFF \
-DTrilinos_ENABLE_ROL=ON \
-DTrilinos_ENABLE_ALL_OPTIONAL_PACKAGES=OFF \
-DTrilinos_ENABLE_TESTS=ON \
-DCMAKE_INSTALL_PREFIX=/home/dridzal/development/quickbuild/Trilinos/build/install \
../../Trilinos

So this is virtually identical to your cmake command, except for the location of the install directory (I decided to put it in the build directory). Also, note ../../Trilinos at the end to point to the source directory from this build directory. Finally, if you already have the Trilinos/build directory, please remove it before running these commands. Let me know how it goes.

slavakung commented 2 years ago

I tried as you wrote. It does not seem to create a make file

base) slava@slava:~/Documents/Trilinos/build$ cmake \

-DCMAKE_C_COMPILER=/usr/bin/gcc \ -DCMAKE_CXX_COMPILER=/usr/bin/g++ \ -DCMAKE_Fortran_COMPILER=/usr/bin/gfortran \ -DTrilinos_ENABLE_ALL_PACKAGES=OFF \ -DTrilinos_ENABLE_ROL=ON \ -DTrilinos_ENABLE_ALL_OPTIONAL_PACKAGES=OFF \ -DTrilinos_ENABLE_TESTS=ON \ -DCMAKE_INSTALL_PREFIX=/home/slava/Documents/Trilinos/build/install \ -DTrilinos_SET_GROUP_AND_PERMISSIONS_ON_INSTALL_BASE_DIR=/home/slava/Documents/ \ ../../Trilinos

Configuring Trilinos build directory

-- PROJECT_SOURCE_DIR='/home/slava/Documents/Trilinos/Trilinos-master' -- PROJECT_BINARY_DIR='/home/slava/Documents/Trilinos' -- Trilinos_TRIBITS_DIR='/home/slava/Documents/Trilinos/Trilinos-master/cmake/tribits' -- TriBITS_VERSION_STRING='0.9 (Dev)' -- CMAKE_VERSION='3.22.0' -- CMAKE_GENERATOR='Unix Makefiles' -- CMAKE_HOST_SYSTEM_NAME='Linux' -- Trilinos_HOSTNAME='slava' -- PYTHON_EXECUTABLE='/home/slava/anaconda3/bin/python'

Setting up major user options ...

-- Setting Trilinos_ENABLE_EXAMPLES=ON because Trilinos_ENABLE_TESTS=ON -- Setting Trilinos_ENABLE_TriKota=OFF because '/home/slava/Documents/Trilinos/Trilinos-master/packages/TriKota/Dakota' does not exist!

NOTE: Skipping generation of TrilinosRepoVersion.txt because project source is not a git repo!

Reading list of native TPLs from /home/slava/Documents/Trilinos/Trilinos-master/TPLsList.cmake

-- Trilinos_NUM_TPLS='116'

Reading list of native packages from /home/slava/Documents/Trilinos/Trilinos-master/PackagesList.cmake

-- Trilinos_NUM_PACKAGES='64'

Processing Project, Repository, and Package dependency files and building internal dependencies graph ...

-- Trilinos_NUM_SE_PACKAGES='161' -- Tentatively enabling TPL 'DLlib'

Explicitly enabled packages on input (by user): ROL 1

Explicitly enabled SE packages on input (by user): ROL 1

Explicitly disabled packages on input (by user or by default): TriKota NewPackage 2

Explicitly disabled SE packages on input (by user or by default): ShyLU_NodeBasker ShyLU_NodeFastILU SEACASExotec2 TriKota ShyLU_DDCore PanzerExprEval NewPackage 7

Explicitly enabled TPLs on input (by user): DLlib 1

Explicitly disabled TPLs on input (by user or by default): MPI Matio 2

Disabling all packages that have a required dependency on disabled TPLs and optional package TPL support based on TPLENABLE=OFF ...

-- Setting Trilinos_ENABLE_SEACASExo2mat=OFF because SEACASExo2mat has a required library dependence on disabled TPL Matio -- Setting Trilinos_ENABLE_SEACASMat2exo=OFF because SEACASMat2exo has a required library dependence on disabled TPL Matio -- Setting Trilinos_ENABLE_STKCoupling=OFF because STKCoupling has a required library dependence on disabled TPL MPI -- Setting Trilinos_ENABLE_STKMesh=OFF because STKMesh has a required library dependence on disabled TPL MPI -- Setting Trilinos_ENABLE_STKSearch=OFF because STKSearch has a required library dependence on disabled TPL MPI -- Setting Trilinos_ENABLE_ShyLU_DDBDDC=OFF because ShyLU_DDBDDC has a required library dependence on disabled TPL MPI -- Setting Trilinos_ENABLE_ShyLU_DDFROSch=OFF because ShyLU_DDFROSch has a required library dependence on disabled TPL MPI -- Setting Trilinos_ENABLE_PanzerDofMgr=OFF because PanzerDofMgr has a required library dependence on disabled TPL MPI -- Setting Trilinos_ENABLE_PanzerDiscFE=OFF because PanzerDiscFE has a required library dependence on disabled TPL MPI -- Setting Trilinos_ENABLE_PanzerMiniEM=OFF because PanzerMiniEM has a required library dependence on disabled TPL MPI -- Setting Trilinos_ENABLE_PikeBlackBox=OFF because PikeBlackBox has a required library dependence on disabled TPL MPI

Disabling subpackages for hard disables of parent packages due to TrilinosENABLE=OFF ...

Disabling forward required SE packages and optional intra-package support that have a dependency on disabled SE packages TrilinosENABLE=OFF ...

-- Setting ROL_ENABLE_TriKota=OFF because ROL has an optional library dependence on disabled package TriKota -- Setting Trilinos_ENABLE_STKIO=OFF because STKIO has a required library dependence on disabled package STKMesh -- Setting Trilinos_ENABLE_STKTools=OFF because STKTools has a required library dependence on disabled package STKMesh -- Setting Trilinos_ENABLE_STKBalance=OFF because STKBalance has a required library dependence on disabled package STKMesh -- Setting Trilinos_ENABLE_STKSearchUtil=OFF because STKSearchUtil has a required library dependence on disabled package STKMesh -- Setting Trilinos_ENABLE_Percept=OFF because Percept has a required library dependence on disabled package STKMesh -- Setting Trilinos_ENABLE_PanzerAdaptersSTK=OFF because PanzerAdaptersSTK has a required library dependence on disabled package STKMesh -- Setting Trilinos_ENABLE_STKTransfer=OFF because STKTransfer has a required library dependence on disabled package STKSearch -- Setting Trilinos_ENABLE_ShyLU_DD=OFF because ShyLU_DD has a required library dependence on disabled package ShyLU_DDBDDC -- Setting Trilinos_ENABLE_ShyLU=OFF because ShyLU has a required library dependence on disabled package ShyLU_DD -- Setting Trilinos_ENABLE_PikeImplicit=OFF because PikeImplicit has a required library dependence on disabled package PikeBlackBox

Enabling subpackages for hard enables of parent packages due to TrilinosENABLE=ON ...

Enabling all tests and/or examples that have not been explicitly disabled because TrilinosENABLE[TESTS,EXAMPLES]=ON ...

-- Setting ROL_ENABLE_TESTS=ON -- Setting ROL_ENABLE_EXAMPLES=ON

Enabling all required upstream SE packages for current set of enabled packages (Trilinos_ENABLE_SECONDARY_TESTED_CODE=ON) ...

-- Setting Trilinos_ENABLE_Teuchos=ON because ROL has a required dependence on Teuchos -- Setting Trilinos_ENABLE_TeuchosCore=ON because Teuchos has a required dependence on TeuchosCore -- Setting Trilinos_ENABLE_TeuchosParser=ON because Teuchos has a required dependence on TeuchosParser -- Setting Trilinos_ENABLE_TeuchosParameterList=ON because Teuchos has a required dependence on TeuchosParameterList -- Setting Trilinos_ENABLE_TeuchosComm=ON because Teuchos has a required dependence on TeuchosComm -- Setting Trilinos_ENABLE_TeuchosNumerics=ON because Teuchos has a required dependence on TeuchosNumerics -- Setting Trilinos_ENABLE_TeuchosRemainder=ON because Teuchos has a required dependence on TeuchosRemainder

Enabling all optional intra-package enables ENABLE that are not currently disabled if both sets of packages are enabled ...

-- NOT setting TeuchosCore_ENABLE_KokkosCore=ON since KokkosCore is NOT enabled at this point! -- NOT setting Teuchos_ENABLE_TeuchosKokkosCompat=ON since TeuchosKokkosCompat is NOT enabled at this point! -- NOT setting Teuchos_ENABLE_TeuchosKokkosComm=ON since TeuchosKokkosComm is NOT enabled at this point! -- NOT setting ROL_ENABLE_Belos=ON since Belos is NOT enabled at this point! -- NOT setting ROL_ENABLE_Epetra=ON since Epetra is NOT enabled at this point! -- NOT setting ROL_ENABLE_Tpetra=ON since Tpetra is NOT enabled at this point! -- NOT setting ROL_ENABLE_Thyra=ON since Thyra is NOT enabled at this point! -- NOT setting ROL_ENABLE_Sacado=ON since Sacado is NOT enabled at this point! -- NOT setting ROL_ENABLE_Intrepid=ON since Intrepid is NOT enabled at this point! -- NOT setting ROL_ENABLE_MiniTensor=ON since MiniTensor is NOT enabled at this point! -- NOT setting ROL_ENABLE_Shards=ON since Shards is NOT enabled at this point! -- NOT setting ROL_ENABLE_Amesos=ON since Amesos is NOT enabled at this point! -- NOT setting ROL_ENABLE_Amesos2=ON since Amesos2 is NOT enabled at this point! -- NOT setting ROL_ENABLE_Ifpack2=ON since Ifpack2 is NOT enabled at this point! -- NOT setting ROL_ENABLE_MueLu=ON since MueLu is NOT enabled at this point! -- NOT setting ROL_ENABLE_Tempus=ON since Tempus is NOT enabled at this point! -- NOT setting ROL_ENABLE_Gtest=ON since Gtest is NOT enabled at this point!

Enabling all remaining required TPLs for current set of enabled packages ...

-- Setting TPL_ENABLE_BLAS=ON because it is required by the enabled package TeuchosNumerics -- Setting TPL_ENABLE_LAPACK=ON because it is required by the enabled package TeuchosNumerics

Enabling all optional package TPL support ENABLE not currently disabled for enabled TPLs ...

Enabling TPLs based on ENABLE=ON if TPL is not explicitly disabled ...

Set cache entries for optional packages/TPLs and tests/examples for packages actually enabled ...

Enabling the shell of non-enabled parent packages (mostly for show) that have at least one subpackage enabled ...

Final set of enabled packages: Teuchos ROL 2

Final set of enabled SE packages: TeuchosCore TeuchosParser TeuchosParameterList TeuchosComm TeuchosNumerics TeuchosRemainder Teuchos ROL 8

Final set of non-enabled packages: TrilinosFrameworkTests TrilinosATDMConfigTests Gtest Kokkos KokkosKernels RTOp Sacado MiniTensor Epetra Zoltan Shards Triutils EpetraExt Tpetra TrilinosSS Domi Thyra Xpetra Isorropia Pliris AztecOO Galeri Amesos Pamgen Zoltan2Core Ifpack ML Belos ShyLU_Node Amesos2 SEACAS Komplex Anasazi Ifpack2 Stratimikos FEI Teko TriKota Intrepid Intrepid2 Compadre STK Percept Phalanx NOX Moertel MueLu Zoltan2Sphynx Zoltan2 ShyLU_DD ShyLU Rythmos Tempus Stokhos Piro Panzer PyTrilinos NewPackage Adelus TrilinosCouplings Pike TrilinosBuildStats 62

Final set of non-enabled SE packages: TrilinosFrameworkTests TrilinosATDMConfigTests Gtest KokkosCore KokkosContainers KokkosAlgorithms Kokkos TeuchosKokkosCompat TeuchosKokkosComm KokkosKernels RTOp Sacado MiniTensor Epetra Zoltan Shards Triutils EpetraExt TpetraClassic TpetraTSQR TpetraCore Tpetra TrilinosSS Domi ThyraCore ThyraEpetraAdapters ThyraEpetraExtAdapters ThyraTpetraAdapters Thyra Xpetra Isorropia Pliris AztecOO Galeri Amesos Pamgen Zoltan2Core Ifpack ML Belos ShyLU_NodeHTS ShyLU_NodeTacho ShyLU_NodeBasker ShyLU_NodeFastILU ShyLU_Node Amesos2 SEACASExodus SEACASExodus_for SEACASExoIIv2for32 SEACASNemesis SEACASIoss SEACASChaco SEACASAprepro_lib SEACASSupes SEACASSuplib SEACASSuplibC SEACASSuplibCpp SEACASSVDI SEACASPLT SEACASAlgebra SEACASAprepro SEACASBlot SEACASConjoin SEACASEjoin SEACASEpu SEACASCpup SEACASExo2mat SEACASExodiff SEACASExomatlab SEACASExotxt SEACASExo_format SEACASEx1ex2v2 SEACASExotec2 SEACASFastq SEACASGjoin SEACASGen3D SEACASGenshell SEACASGrepos SEACASExplore SEACASMapvarlib SEACASMapvar SEACASMapvar-kd SEACASMat2exo SEACASNas2exo SEACASZellij SEACASNemslice SEACASNemspread SEACASNumbers SEACASSlice SEACASTxtexo SEACASEx2ex1v2 SEACAS Komplex Anasazi Ifpack2 Stratimikos FEI Teko TriKota Intrepid Intrepid2 Compadre STKUtil STKEmend STKCoupling STKMath STKSimd STKNGP_TEST STKTopology STKMesh STKIO STKSearch STKTransfer STKTools STKBalance STKUnit_test_utils STKSearchUtil STKUnit_tests STKDoc_tests STKExprEval STK Percept Phalanx NOX Moertel MueLu Zoltan2Sphynx Zoltan2 ShyLU_DDBDDC ShyLU_DDFROSch ShyLU_DDCore ShyLU_DDCommon ShyLU_DD ShyLU Rythmos Tempus Stokhos Piro PanzerCore PanzerDofMgr PanzerDiscFE PanzerAdaptersSTK PanzerMiniEM PanzerExprEval Panzer PyTrilinos NewPackage Adelus TrilinosCouplings PikeBlackBox PikeImplicit Pike TrilinosBuildStats 153

Final set of enabled TPLs: BLAS LAPACK DLlib 3

Final set of non-enabled TPLs: MKL yaml-cpp Peano CUDA CUBLAS CUSOLVER CUSPARSE Thrust Cusp TBB Pthread HWLOC QTHREAD BinUtils ARPREC QD MPI Boost Scotch OVIS gpcd METIS MTMETIS ParMETIS PuLP TopoManager LibTopoMap PaToH CppUnit ADOLC ADIC TVMET MF ExodusII Nemesis XDMF Zlib HDF5 CGNS Pnetcdf Netcdf ADIOS2 y12m SuperLUDist SuperLUMT SuperLU Cholmod UMFPACK MA28 AMD CSparse HYPRE PETSC BLACS SCALAPACK MUMPS STRUMPACK PARDISO_MKL PARDISO Oski TAUCS ForUQTK Dakota HIPS MATLAB CASK SPARSKIT QT gtest BoostLib BoostAlbLib OpenNURBS Portals CrayPortals Gemini InfiniBand BGPDCMF BGQPAMI Pablo HPCToolkit Clp GLPK qpOASES Matio PAPI MATLABLib Eigen X11 Lemon GLM quadmath CAMAL RTlib AmgX CGAL CGALCore VTune TASMANIAN ArrayFireCPU SimMesh SimModel SimParasolid SimAcis SimField Valgrind QUO ViennaCL Avatar mlpack pebbl MAGMASparse Check SARMA 113

Setting up export dependencies for all enabled SE packages ...

Probing the environment ...

-- USE_XSDK_DEFAULTS='FALSE' -- BUILD_SHARED_LIBS='ON' -- CMAKE_BUILD_TYPE='DEBUG' -- CMAKE_C_COMPILER_ID='GNU' -- CMAKE_C_COMPILER_VERSION='9.3.0' -- CMAKE_CXX_COMPILER_ID='GNU' -- CMAKE_CXX_COMPILER_VERSION='9.3.0' -- Trilinos_SET_INSTALL_RPATH='TRUE' -- CMAKE_INSTALL_RPATH_USE_LINK_PATH='TRUE' -- Setting default for CMAKE_INSTALL_RPATH pointing to Trilinos_INSTALL_LIB_DIR -- CMAKE_INSTALL_RPATH='/home/slava/Documents/Trilinos/build/install/lib' -- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)

Getting information for all enabled TPLs ...

Processing enabled TPL: BLAS (enabled by TeuchosNumerics, disable with -DTPL_ENABLE_BLAS=OFF) -- BLAS_LIBRARY_NAMES='blas blas_win32' -- TPL_BLAS_LIBRARIES='/usr/lib/x86_64-linux-gnu/libblas.so' Processing enabled TPL: LAPACK (enabled by TeuchosNumerics, disable with -DTPL_ENABLE_LAPACK=OFF) -- LAPACK_LIBRARY_NAMES='lapack lapack_win32' -- TPL_LAPACK_LIBRARIES='/usr/lib/x86_64-linux-gnu/liblapack.so' Processing enabled TPL: DLlib (enabled explicitly, disable with -DTPL_ENABLE_DLlib=OFF) -- Attempting to tentatively enable TPL 'DLlib' ... -- DLlib_LIBRARY_NAMES='dl' -- TPL_DLlib_LIBRARIES='/usr/lib/x86_64-linux-gnu/libdl.so' -- Attempt to tentatively enable TPL 'DLlib' passed!

Setting up testing support ...

-- CTEST_DROP_METHOD='http' -- CTEST_DROP_SITE='testing.sandia.gov' -- CTEST_PROJECT_NAME='Trilinos' -- CTEST_DROP_LOCATION='/cdash/submit.php?project=Trilinos' -- CTEST_TRIGGER_SITE='' -- CTEST_DROP_SITE_CDASH='TRUE' -- TRIBITS_2ND_CTEST_DROP_SITE='testing-dev.sandia.gov' -- TRIBITS_2ND_CTEST_DROP_LOCATION='/cdash/submit.php?project=Trilinos'

Configuring individual enabled Trilinos packages ...

-- NOTE: Can't fill in version date files for Trilinos since /home/slava/Documents/Trilinos/Trilinos-master/.git/ does not exist! Processing enabled package: Teuchos (Core, Parser, ParameterList, Comm, Numerics, Remainder) -- You set HAVE_GCC_ABI_DEMANGLE=1; this suggests you are cross compiling. If you're not cross compiling, best practice is not to set this; Trilinos will figure it out for you. -- You set HAVE_TEUCHOS_BLASFLOAT=1; this suggests you are cross compiling. If you're not cross compiling, best practice is not to set this; Trilinos will figure it out for you. -- You set HAVE_TEUCHOS_LAPACKLARND=; this suggests you are cross compiling. If you're not cross compiling, best practice is not to set this; Trilinos will figure it out for you. -- C++ compiler supports attribute((constructor)) syntax -- C++ compiler supports attribute((weak)) syntax and testing weak functions -- C++ compiler does NOT support #pragma weak syntax and testing weak functions -- Wrapping every Teuchos timer with a Kokkos profiling region. Processing enabled package: ROL (Libs, Tests, Examples) -- ROL has been configured to use the build options: -- ROL::Ptr is implemented by Teuchos::RCP -- ROL::ParameterList is implemented by Teuchos::ParameterList -- ROL::stacktrace is implemented by Teuchos::stacktrace -- ROL::LinearAlgebra is implemented by Teuchos::SerialDense -- ROL::LAPACK is implemented by Teuchos::LAPACK -- ROL::BLAS is implemented by Teuchos::BLAS -- Enabling ROL examples with required dependency on Teuchos::RCP or Teuchos::ParameterList

No ETI support requested by packages.

Set up for creating a distribution ...

Finished configuring Trilinos!

-- Configuring done -- Generating done -- Build files have been written to: /home/slava/Documents/Trilinos (base) slava@slava:~/Documents/Trilinos/build$ (base) slava@slava:~/Documents/Trilinos/build$ make install make: No rule to make target 'install'. Stop. (base) slava@slava:~/Documents/Trilinos/build$ make make: No targets specified and no makefile found. Stop.

cgcgcg commented 2 years ago

Could you remove -DTrilinos_SET_GROUP_AND_PERMISSIONS_ON_INSTALL_BASE_DIR=/home/slava/Documents/ and try again?

slavakung commented 2 years ago

Same result

cgcgcg commented 2 years ago

Have you tried completely deleting build, install and source dirs and starting from a new clone?

dridzal commented 2 years ago

@slavakung : There are issues with the directory locations. Let me recap and clarify. Please follow as written.

> git clone git@github.com:trilinos/Trilinos.git
> cd Trilinos
> mkdir build
> cd build
> --- Run your cmake command here (with the correct Trilinos source location in the last line). ---
> make -j8 install

where you should adjust 8 to the number of processes you want to use for the build.

In your case it appears that Trilinos-master is your source directory, rather than Trilinos. Also, the build directory is different from Trilinos/build. Compare your configure output

-- PROJECT_SOURCE_DIR='/home/slava/Documents/Trilinos/Trilinos-master'
-- PROJECT_BINARY_DIR='/home/slava/Documents/Trilinos'
-- Trilinos_TRIBITS_DIR='/home/slava/Documents/Trilinos/Trilinos-master/cmake/tribits'

with mine

-- PROJECT_SOURCE_DIR='/home/dridzal/development/quickbuild/Trilinos'
-- PROJECT_BINARY_DIR='/home/dridzal/development/quickbuild/Trilinos/build'
-- Trilinos_TRIBITS_DIR='/home/dridzal/development/quickbuild/Trilinos/cmake/tribits'
slavakung commented 2 years ago

Thank you. Indeed after deleting all of the directories and then starting from scratch with these commands, it appears that it performed cmake and make install without error.

And now is everything set to go to use ROL? I recall I had to turn off installing other libraries, if at the moment I would only like to use this solver, is there a point of concern, as in are there some other packages I should also install?

Thanks

dridzal commented 2 years ago

@slavakung : I'm glad that worked. ROL should be ready to use. Note that this install won't include interfaces to other Trilinos packages. If you don't need them, then you're all set. I recommend using the ROL 2.0 interfaces. The older code will be deprecated later this year. Please see

https://github.com/trilinos/Trilinos/blob/master/packages/rol/Version-2.0.md

While this document is specific to transitioning from 1.0 to 2.0, it may be useful more generally for ROL beginners. Note: ROL::Solver takes a ROL::Ptr< ROL::Problem > and not a ROL::Problem as the example indicates.