BASEMENTBasic Simulation Environment for computation of environmental flow and natural hazard simulationLaboratory of Hydraulics, Hydrology and Glaciology (VAW)ETH Zurich |
You are not logged in.
Pages: 1
I was just trying to run basement on rpm-based systems like CentOS or Fedora.
With the basement-cluster-executable I get the follwing error:
error while loading shared libraries: liblapack.so.3gf: cannot open shared object file: No such file or directory
available would be
/lib64/liblapack.a
/lib64/liblapack.so.3
/lib64/liblapack.so.3.2.1
/lib64/liblapack.so
/lib64/liblapack.so.3.2
Of course, it would be nice to have a 32bit and 64bit rpm-package.
Offline
Hi Michelk,
unfortunately I have no solution to your problem. I would have supposed that the lapack-libraries are so commonly used that they are found on all common linux systems. Your missing library seems to be a Fortran-library, perhaps you can install some corresponding packages?
We use Ubuntu and have no experience regarding CentOS and rpm package creation. If you cannot solve this problem and you need a running BASEMENT version on CentOS, we may compile you a special version, which does not depend upon the lapack libraries. However, no implicit computations are possible without the lapack libraries. Let us know if you need such a version.
Best regards,
Christian
Last edited by Christian Volz (2014-10-30 16:18:12)
Offline
Thanks Christian for the reply and the suggestion. If I couldn't workaround the
problem, we may need such a version in the near future for an online-model on a
CentOS-Server. Then I will let you know.
Best regards, Michel
Offline
With the Linux executable I also noticed an issue with relative filepaths:
Input-files in the bmc are searched relative to the directory of the bmc-file,
instead of the working-directory.
Say I have the following setup:
$ ls
input.txt run.bmc
and a section in the bmc-file with
BOUNDARY {
string_name = input
type = hydrograph
file = input.txt
slope = 1
}
Everything runs fine with
$ basement -b -f run.bmc
But If I now do
$ mkdir test
$ mv input.txt test/
$ cd test/
$ basement -b -f ../run.bmc
I get an error with
Could not find input-file '../input.txt'
Offline
this issue is actually not an issue, this behavior is on purpose: all files (input, mesh, log, etc) have to be in the same directory, i.e. in the directory of the .bmc-file.
this should prevent any confusions with different runs and different input and result files.
we hope you get along with this restriction...? cheers
Offline
> all files (input, mesh, log, etc) have to be in the same directory, i.e. in the directory
> of the .bmc-file.
The restriction is not enforced; you could happily have eg. the mesh
somewhere else and reference it with relative paths.
The matter is, relative to which directory. And here the windows and linux implementations differ.
On windows with cygwin this works
$ wget http://www.basement.ethz.ch/services/te … H_BP_4.zip
$ unzip H_BP_4.zip
$ mv run.bmc ..
$ basement -b -f ../run.bmc
If I do the same thing on linux I get an error:
*******************************************************************************
*!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Error !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*
*******************************************************************************
-> Cannot open the grid file '../H_BP_4.2dm'.
Program is terminated...
Offline
we cannot reproduce the behavior you describe (v2.4, Linux and Windows), i.e. without having all files in the same directory BASEMENT returns an error ("-> Cannot open ...").
if you have a BASEMENT version and/or an operating system where this is not the case, you can count yourself a lucky guy ...
but, we are discussing to open this restriction, e.g. to have one level of sub-folders in the directory of the run.bmc file where you can organize the numerous input and result files.
Offline
Any update on the original issue? Are there any rpm-based binaries for e.g. CentOS?
Offline
I wanted the try the brand-new Docker feature on CentOS.
I did:
sudo docker build -t docker-basement .
sudo docker images
# =>
# REPOSITORY TAG IMAGE ID CREATED SIZE
# docker-basement latest d1e91a206c07 10 minutes ago 183.6 MB
# docker.io/ubuntu 16.04 0ef2e08ed3fa 12 hours ago 130 MB
sudo docker run docker-basement
I guess then I shoud enter a bash with basement in PATH. But nothings happens.
I
Offline
following the instructions in BASEMENT documentation should work out fine!
nevertheless, some remarks on your try:
- the default command in BASEMENT docker environment is 'bash', i.e. you have to keep STDIN open (-i flag in run command), otherwise bash is executed and exits immediately as in your case. the same applies when you run 'docker start'
- if you want to have access from inside the container to modeling data stored outside of the container, map volumes with -v flag
Offline
Thanks for the hint Sam.
Offline
Pages: 1