Comments (15)
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 ?
from candi.
Hi Timo,
Thanks a lot for your reply,
I compiled BLAS 3.8.0 just in November (so from all the .f files y got their corresponding .o subroutine files). But I find no proper‘libblas.so’ anywhere in my account. I also have LAPACK, which contains a Blas subdirectory.. but I don’t quite understand why these two libraries are united (part of one included inside the other) yet separated. I just expected linking between them.
Compilation of BLAS yielded .o files. I have nothing else to compile in my BLAS, so how could I get libblas.so files?
Inside Lapack-release-lapack-3.8.0/BLAS/SRC I see almost the same collection of .f and .o files. Is that what I need? Is that what is called libblas.so?
Beyond this, in the usr/lib64 folder of my cluster, there are 3 files named libblas.so.3.x.y (x, y 4 and 2) which I am not sure what they are..
There are lots of naming-and-linking conventions that I don’t get here. But I think I have all the necessary ingredients.
What should I do?
cheers many many,
Felipe
from candi.
Your SRC/ folder does not seem to contain the compiled libraries. No wonder Trilinos is unhappy.
Beyond this, in the usr/lib64 folder of my cluster, there are 3 files named libblas.so.3.x.y
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:
- If you have root access (or a sysadmin), let them install blas/lapack as instructed by candi when you start it (depends on your distribution).
- We have the package "openblas" inside candi, that you can install.
from candi.
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:
[Felipe@mu01 candi]$ mpif77
Error: Command line argument is needed!
[Felipe@mu01 candi]$ mpif77 -v
mpifort for MPICH version 3.1.4
Using built-in specs.
COLLECT_GCC=gfortran
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/4.8.5/lto-wrapper
Target: x86_64-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-languages=c,c++,objc,obj-c++,java,fortran,ada,go,lto --enable-plugin --enable-initfini-array --disable-libgcj --with-isl=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-x86_64-redhat-linux/isl-install --with-cloog=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-x86_64-redhat-linux/cloog-install --enable-gnu-indirect-function --with-tune=generic --with-arch_32=x86-64 --build=x86_64-redhat-linux
Thread model: posix
gcc version 4.8.5 20150623 (Red Hat 4.8.5-39) (GCC)
- Where should I set those compiler variables? In etc/profile ? In /.bashrc ? In candi.cfg?..candi does not seem to have a section for that.
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:
Generating OpenBLASConfig.cmake in /home/Felipe/BIGSOFTWARE/candi/OpenBLAS-0.2.20/lib/cmake/openblas
Generating OpenBLASConfigVersion.cmake in /home/Felipe/BIGSOFTWARE/candi/OpenBLAS-0.2.20/lib/cmake/openblas
Install OK!
make[1]: Leaving directory `/home/Felipe/BIGSOFTWARE/candi/tmp/build/OpenBLAS-0.2.20'
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
./candi_configure: line 105: cmake: command not found
Failure with exit status: 127
Exit message: There was a problem configuring opencascade 0.18.2.
but contradictory, I do have cmake (I installed it):
[Felipe@mu01 candi]$ cmake
Usage
cmake [options]
cmake [options]
cmake [options] -S -B
Specify a source directory to (re-)generate a build system for it in the
current working directory. Specify an existing build directory to
re-generate its build system.
Run 'cmake --help' for more information.
[Felipe@mu01 candi]$ cmake -version
cmake version 3.16.0-rc3
CMake suite maintained and supported by Kitware (kitware.com/cmake).
%%%%%%%%%%%%%%%%%%%
cheers,
Felipe
from candi.
- 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*/
from candi.
from candi.
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=''
-- 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'!
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.
I will try the openblas approach, but I am not sure it will help, considering what you got after.
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
Marine
from candi.
Do you set BLAS_DIR
and LAPACK_DIR
accordingly? Can you build Trilinos
without candi
?
from candi.
I haven't try to build trilinos by itself. I'll try tomorrow.
Could you be more specific on where to set the BLAS_DIR and LAPACK_DIR? I set them as system variables (so in the terminal: export BLAS_DIR=...) But I am worried I need to set them up in candi somewhere, and I don't know where?
Many thanks to take the time to answer :-)
from candi.
Have a look at https://github.com/dealii/candi#configuration-file-options. You can set BLAS_DIR
and LAPACK_DIR
in candi.cfg. Also, if you don't need Trilinos
in the first place, you can disable it there, too.
from candi.
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
from candi.
@koecher That's a very good question. I will verify with the sys admin!
I managed to install deal.II (at least apparently) asking candi to install openblas and zlib (even if my sys admin told me both should already be installed).
I'm installing deal.II for ASPECT, and apparently then the aspect installation is not correct, as it does not find zlib... (which should have been installed with deal ii as well as the path should be updated with the candi deal ii config file...). I have to dig through this.
from candi.
@MarineLasbleis
Thanks for reporting. openblas through candi should be fine as well. I do have also the standard blas and lapack package files in a private repo, if you need them, let me know.
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
We export 3 variables; cf. the very last lines of
https://github.com/dealii/candi/blob/dealii-9.2/deal.II-toolchain/packages/zlib.package
from candi.
@tjhei do you have additional help for installing aspect with the reported problem above?
from candi.
Thank you to everyone.
Please reopen this issue or a new one, if the problem is still there.
I got a notice that also the petsc package may have issues with other blas/lapack libraries due to automatic downloads.
from candi.
Related Issues (20)
- M1 parmetis is broken HOT 3
- Intel Compiler and p4est
- SLEPc link failure HOT 2
- muelu compilation HOT 1
- cmake on a broken mirror HOT 3
- Want to turn into C99 model in building p4est HOT 2
- p4est on Apple Silicon HOT 1
- Linker issue on Xcode 15 and PETSc v 3.19 on macOS Sonoma(intel) HOT 1
- deal.II installation faliure on RHEL8
- Trilinos: Symbol(s) not found for architecture arm64 during Linking CXX shared library libteko.dylib HOT 2
- SVE(Scaler Vector Extension) HOT 1
- Intel compiler icpx 2024 takes a long time to compile deal.II with -O3 HOT 2
- Ubuntu 23.10 issues? HOT 1
- Error during installation of ASPECT using dealii 9.5.2 both in ARM64 and x86x64 HOT 1
- deal.ii version control HOT 1
- Mac Xcode installation instructions
- CANDI installation STRUCK HOT 1
- dealii build fails on Mac arm due to use of "unary_function" HOT 3
- Issue with Deactivated Packages in deal.II Build Process HOT 1
- Problems with Trilinos TPetra instantiations when using Intel MKL
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from candi.