-
Notifications
You must be signed in to change notification settings - Fork 59
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Problems installing Trilinos on candi #135
Comments
Did you set BLAS_LIB and LAPACK_LIB inside candi.cfg to a folder containing the compiled versions? Are there libblas.so etc. found inside /home/Felipe/BIGSOFTWARE/lapack-release-lapack-3.8.0/BLAS/SRC ? |
Hi Timo,
What should I do? cheers many many, |
Your SRC/ folder does not seem to contain the compiled libraries. No wonder Trilinos is unhappy.
Those are the versioned shared libraries, which means you managed to compile them at least. I don't think Trilinos will pick them up (there is typically a symlink from libblas.so to the libblas.so.x.y). Bottom line: you need to figure out how to install blas/lapack first. Two alternatives:
|
Hi Timo, Thanks a loooooot for your support. (My message text is long, but it mostly pasted text from the logfile for you to see) I started from scratch. Inside candi directory I edited candi.cfg , solely uncomenting two lines, activating the zlib and openblas packages. I run candi using 8 cores, and it went well until failing. Did this 3 times to understand and check. I am worried about something at the beginning of the process and logfile: It warns that compiler variables mpicc, mpicxx, mpif90, mpif77 are not set. I checked, I do have mpich (I installed it), which seems to do the job, ..for example:
Unsurprisingly, the compilation-installation process goes on without having those variables set. So I guess mpich does the work for candi. More so, it seems candi effectively did install Openblas. In fact I got a directory OpenBLAS-0.2.20, with subdirs bin, include, lib. Upon reviewing my logfile, I read PASSED THE COMPUTATIONAL TESTS, and I also read: I guess after this library has been installed, its directory is set by default by candi.. so I don’t have to worry.. But I got an error later, right after the previous line. This is what it outputs: Building opencascade 0.18.2 but contradictory, I do have cmake (I installed it): [Felipe@mu01 candi]$ cmake [Felipe@mu01 candi]$ cmake -version CMake suite maintained and supported by Kitware (kitware.com/cmake). cheers, |
This should be on your screen "CXX variable not set, but default mpicxx found". This is not a problem, but you can override it by setting an env variable CXX, etc..
Not sure, but you can check the files candi_configure and candi_configure.log in <destination_folder>/tmp/build/oce*/ |
Hello Timo, or to whom it may concern,
I have been working on this. I managed to clean my installation-compilation, with the environment variables as they should.
I decided to go on with instructing candi.cfg to install Openblas at its will, also cmake (that I already had, but I had a newer-latest version, which is not the one candi installs. But all good with that).
In this way, my compilation installs cmake3.11.2, OpenBLAS-0.2.20, and also installs oce-OCE, parmetis, hdf5, p4est.
It is failing during Trilinos install. It does not like the here-built OpenBlas anyway.
This is the error message I get:
Processing enabled TPL: MPI (enabled explicitly, disable with -DTPL_ENABLE_MPI=OFF)
Processing enabled TPL: BLAS (enabled by TeuchosNumerics, disable with -DTPL_ENABLE_BLAS=OFF)
…-- Searching for libs in BLAS_LIBRARY_DIRS='/home/Felipe/BIGSOFTWARE/candi/OpenBLAS-0.2.20/lib'
-- Searching for a lib in the set "blas blas_win32":
-- Searching for lib 'blas' ...
-- Searching for lib 'blas_win32' ...
-- ERROR: Did not find a lib in the lib set "blas blas_win32" for the TPL 'BLAS'!
-- ERROR: Could not find the libraries for the TPL 'BLAS'!
-- TIP: If the TPL 'BLAS' is on your system then you can set:
-DBLAS_LIBRARY_DIRS='<dir0>;<dir1>;...'
to point to the directories where these libraries may be found.
Or, just set:
-DTPL_BLAS_LIBRARIES='<path-to-libs0>;<path-to-libs1>;...'
to point to the full paths for the libraries which will
bypass any search for libraries and these libraries will be used without
question in the build. (But this will result in a build-time error
if not all of the necessary symbols are found.)
-- ERROR: Failed finding all of the parts of TPL 'BLAS' (see above), Aborting!
-- NOTE: The find module file for this failed TPL 'BLAS' is:
/home/Felipe/BIGSOFTWARE/candi/tmp/unpack/Trilinos-trilinos-release-12-10-1/cmake/tribits/common_tpls/FindTPLBLAS.cmake
which is pointed to in the file:
/home/Felipe/BIGSOFTWARE/candi/tmp/unpack/Trilinos-trilinos-release-12-10-1/TPLsList.cmake
TIP: One way to get past the configure failure for the
TPL 'BLAS' is to simply disable it with:
-DTPL_ENABLE_BLAS=OFF
which will disable it and will recursively disable all of the
downstream packages that have required dependencies on it, including
the package 'TeuchosNumerics' which triggered its enable.
When you reconfigure, just grep the cmake stdout for 'BLAS'
and then follow the disables that occur as a result to see what impact
this TPL disable has on the configuration of Trilinos.
CMake Error at cmake/tribits/core/package_arch/TribitsProcessEnabledTpl.cmake:127 (MESSAGE):
ERROR: TPL_BLAS_NOT_FOUND=TRUE, aborting!
Call Stack (most recent call first):
cmake/tribits/core/package_arch/TribitsGlobalMacros.cmake:1614 (TRIBITS_PROCESS_ENABLED_TPL)
cmake/tribits/core/package_arch/TribitsProjectImpl.cmake:202 (TRIBITS_PROCESS_ENABLED_TPLS)
cmake/tribits/core/package_arch/TribitsProject.cmake:93 (TRIBITS_PROJECT_IMPL)
CMakeLists.txt:93 (TRIBITS_PROJECT)
-- Configuring incomplete, errors occurred!
See also "/home/Felipe/BIGSOFTWARE/candi/tmp/build/trilinos-release-12-10-1/CMakeFiles/CMakeOutput.log".
See also "/home/Felipe/BIGSOFTWARE/candi/tmp/build/trilinos-release-12-10-1/CMakeFiles/CMakeError.log".
Failure with exit status: 1
Exit message: There was a problem configuring trilinos 12-10-1.
##############################################
Then, checking the OpenBLAS directory, I see bin, include and lib subdirs. Of these, bin dir is empty,
include dir has:
[Felipe@mu01 include]$ ls
cblas.h lapacke_config.h lapacke_mangling.h openblas_config.h
f77blas.h lapacke.h lapacke_utils.h
and lib has
[Felipe@mu01 lib]$ ls
cmake libopenblas_sandybridgep-r0.2.20.a libopenblas.so pkgconfig
libopenblas.a libopenblas_sandybridgep-r0.2.20.so libopenblas.so.0
cmake and pkgconfig are dirs.
What should I modify to get OpenBLAS installed in the way Trilinos needs?
Maybe more instructions on candi.cfg could allow the proper successful installation.
I would appreciate your help,
Felipe
Sent: Friday, February 28, 2020 at 11:58 PM
From: "Timo Heister" <notifications@github.com>
To: dealii/candi <candi@noreply.github.com>
Cc: UfrancoU <aloctono@gmx.com>, Author <author@noreply.github.com>
Subject: Re: [dealii/candi] Problems installing Trilinos on candi (#135)
Where should I set those compiler variables?
This should be on your screen "CXX variable not set, but default mpicxx found". This is not a problem, but you can override it by setting an env variable CXX, etc..
Building opencascade 0.18.2
./candi_configure: line 105: cmake: command not found
Failure with exit status: 127
Not sure, but you can check the files candi_configure and candi_configure.log in <destination_folder>/tmp/build/oce*/
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.
|
So, I am trying to install deal II on the new (shared, so I don't have admin rights) computer here, and apparently we are running to the same exact error. Did you manage to install it finally? -- Searching for libs in BLAS_LIBRARY_DIRS='' According to my sysadmin, blas and lapack are installed, and in /usr/lib64. But I don't understand how to tell trilinos that they are there. First of all maybe: the computer is running on Oracle Linux, which is not listed, so I used the "Linux cluster" configuration. Apparently, Oracle is a Red Hat, as CentOS was, so I also tried using the CentOS configuration without more success. Thanks |
Do you set |
I haven't try to build trilinos by itself. I'll try tomorrow. Many thanks to take the time to answer :-) |
Have a look at https://github.com/dealii/candi#configuration-file-options. You can set |
Dear @MarineLasbleis do you have the devel packages for blas and lapack installed on the machine? On CentOS those are blas-devel and lapack-devel |
@koecher That's a very good question. I will verify with the sys admin! |
@MarineLasbleis For zlib via candi everything should be there, but you may need to explicitly give aspect the new variables as listed in the config file / enable.sh for the configuration of cmake |
@tjhei do you have additional help for installing aspect with the reported problem above? |
Thank you to everyone. |
Hi all,
-- Searching for libs in BLAS_LIBRARY_DIRS=''
-- Searching for a lib in the set "blas blas_win32":
-- Searching for lib 'blas' ...
-- Searching for lib 'blas_win32' ...
-- ERROR: Did not find a lib in the lib set "blas blas_win32" for the TPL 'BLAS'!
-- ERROR: Could not find the libraries for the TPL 'BLAS'!
But, I do have BLAS and LAPACK on my account.
So, this problem is simple and classic, it is a linking problem.
I have tried two ways to fix this linking issue:
I created a file (/etc/ld.so.conf.d/mylibs.conf ) with dir to a shared-library path for my BLAS: /home/Felipe/BIGSOFTWARE/lapack-release-lapack-3.8.0/BLAS/SRC
I edited my .bashrc file adding export BLAS_LIBRARY_PATH=$BLAS_LIBRARY_PATH:/home/Felipe/BIGSOFTWARE/lapack-release-lapack-3.8.0/BLAS/SRC
I seized the opportunity and also added the path for Lapack..which is best friend of Blas.. :)
After a day learning how and doing both of these things., I started a new session and started over with candi (no traces of the previous trial. I downloaded-cloned a new candi), and executed candi..
The error was the same.. the candi compiling of Trilinos can not find my BLAS library.
Where and how should I specify the path for BLAS and LAPACK for candi to be able to properly do its job?
cheers,
Felipe
The text was updated successfully, but these errors were encountered: