intro story D-Flow FM

 

D-Flow Flexible Mesh

D-Flow Flexible Mesh (D-Flow FM) is the new software engine for hydrodynamical simulations on unstructured grids in 1D-2D-3D. Together with the familiar curvilinear meshes from Delft3D 4, the unstructured grid can consist of triangles, pentagons (etc.) and 1D channel networks, all in one single mesh. It combines proven technology from the hydrodynamic engines of Delft3D 4 and SOBEK 2 and adds flexible administration, resulting in:

  • Easier 1D-2D-3D model coupling, intuitive setup of boundary conditions and meteorological forcings (amongst others).
  • More flexible 2D gridding in delta regions, river junctions, harbours, intertidal flats and more.
  • High performance by smart use of multicore architectures, and grid computing clusters.
An overview of the current developments can be found here.
 
The D-Flow FM - team would be delighted if you would participate in discussions on the generation of meshes, the specification of boundary conditions, the running of computations, and all kinds of other relevant topics. Feel free to share your smart questions and/or brilliant solutions! 

 

=======================================================
We have launched a new website (still under construction so expect continuous improvements) and a new forum dedicated to Delft3D Flexible Mesh.

Please follow this link to the new forum: 
/web/delft3dfm/forum

Post your questions, issues, suggestions, difficulties related to our Delft3D Flexible Mesh Suite on the new forum.

=======================================================

** PLEASE TAG YOUR POST! **

 

 

Sub groups
D-Flow Flexible Mesh
DELWAQ
Cohesive sediments & muddy systems

 


Message Boards

make ds-install & undefined symbol: MPI_Init

LL
LI LI, modified 6 Years ago.

make ds-install & undefined symbol: MPI_Init

Youngling Posts: 17 Join Date: 2/7/14 Recent Posts
Dear All,

As I use Unbuntu12.04 64-bit linux to compiling Delft3D, alles fine without any problem when I followed the Webinar, but when I continue to do the installation with the command in the 'readme.tex', as follows,

Compiling on Linux
==================
1) In directory "src", do one of the following two options:
Option A):
./autogen.sh
CFLAGS='-O2' CXXFLAGS='-O2' FFLAGS='-O2' FCFLAGS='-O2' ./configure --prefix=`pwd`
make ds-install

After 'make ds-install', the error shows like that, I have no idea about that, what should I do with that.

I did this step, then the error shows like this,
( \
cd . ; \
./install.sh /home/lili/Documents/delft3trunk/src \
)
oss-install...
Prefix : /home/lili/Documents/delft3trunk/src
Target directory: /home/lili/Documents/delft3trunk/src/../bin
Project : install_all
installing all open source projects . . .
installing d_hydro . . .
Gathering libraries for d_hydro...
scripts_lgpl/linux/oss-install.sh: scripts_lgpl/linux/gatherlibraries.rb: /usr/bin/ruby: bad interpreter: No such file or directory
cp: missing destination file operand after ‘/home/lili/Documents/delft3trunk/src/../bin/lnx/flow2d3d/bin’
Try 'cp --help' for more information.
installing flow2d3d . . .
Gathering libraries for flow2d3d...
scripts_lgpl/linux/oss-install.sh: scripts_lgpl/linux/gatherlibraries.rb: /usr/bin/ruby: bad interpreter: No such file or directory
cp: missing destination file operand after ‘/home/lili/Documents/delft3trunk/src/../bin/lnx/flow2d3d/bin’
Try 'cp --help' for more information.
scripts_lgpl/linux/oss-install.sh: scripts_lgpl/linux/gatherlibraries.rb: /usr/bin/ruby: bad interpreter: No such file or directory
cp: missing destination file operand after ‘/home/lili/Documents/delft3trunk/src/../bin/lnx/plugins/bin’
Try 'cp --help' for more information.
installing delwaq . . .
cp: cannot stat ‘/home/lili/Documents/delft3trunk/src/lib/libwaq_plugin_wasteload.so’: No such file or directory
can't copy "/home/lili/Documents/delft3trunk/src/lib/libwaq_plugin_wasteload.so" to "/home/lili/Documents/delft3trunk/src/../bin/lnx/waq/bin"
Gathering libraries for delwaq...
scripts_lgpl/linux/oss-install.sh: scripts_lgpl/linux/gatherlibraries.rb: /usr/bin/ruby: bad interpreter: No such file or directory
cp: missing destination file operand after ‘/home/lili/Documents/delft3trunk/src/../bin/lnx/waq/bin’
Try 'cp --help' for more information.
installing wave . . .
Gathering libraries for wave...
scripts_lgpl/linux/oss-install.sh: scripts_lgpl/linux/gatherlibraries.rb: /usr/bin/ruby: bad interpreter: No such file or directory
cp: missing destination file operand after ‘/home/lili/Documents/delft3trunk/src/../bin/lnx/wave/bin’
Try 'cp --help' for more information.
Gathering libraries for swan...
scripts_lgpl/linux/oss-install.sh: scripts_lgpl/linux/gatherlibraries.rb: /usr/bin/ruby: bad interpreter: No such file or directory
cp: missing destination file operand after ‘/home/lili/Documents/delft3trunk/src/../bin/lnx/swan/bin’
Try 'cp --help' for more information.
installing plugin_culvert . . .
Gathering libraries for plugin_culvert...
scripts_lgpl/linux/oss-install.sh: scripts_lgpl/linux/gatherlibraries.rb: /usr/bin/ruby: bad interpreter: No such file or directory
cp: missing destination file operand after ‘/home/lili/Documents/delft3trunk/src/../bin/lnx/flow2d3d/bin’
Try 'cp --help' for more information.
installing plugin_delftflow_traform . . .
Gathering libraries for plugin_delftflow_traform...
scripts_lgpl/linux/oss-install.sh: scripts_lgpl/linux/gatherlibraries.rb: /usr/bin/ruby: bad interpreter: No such file or directory
cp: missing destination file operand after ‘/home/lili/Documents/delft3trunk/src/../bin/lnx/flow2d3d/bin’
Try 'cp --help' for more information.
installing datsel . . .
Gathering libraries for datsel...
scripts_lgpl/linux/oss-install.sh: scripts_lgpl/linux/gatherlibraries.rb: /usr/bin/ruby: bad interpreter: No such file or directory
cp: missing destination file operand after ‘/home/lili/Documents/delft3trunk/src/../bin/lnx/flow2d3d/bin’
Try 'cp --help' for more information.
installing kubint . . .
Gathering libraries for kubint...
scripts_lgpl/linux/oss-install.sh: scripts_lgpl/linux/gatherlibraries.rb: /usr/bin/ruby: bad interpreter: No such file or directory
cp: missing destination file operand after ‘/home/lili/Documents/delft3trunk/src/../bin/lnx/flow2d3d/bin’
Try 'cp --help' for more information.
installing lint . . .
Gathering libraries for lint...
scripts_lgpl/linux/oss-install.sh: scripts_lgpl/linux/gatherlibraries.rb: /usr/bin/ruby: bad interpreter: No such file or directory
cp: missing destination file operand after ‘/home/lili/Documents/delft3trunk/src/../bin/lnx/flow2d3d/bin’
Try 'cp --help' for more information.
installing mormerge . . .
Gathering libraries for mormerge...
scripts_lgpl/linux/oss-install.sh: scripts_lgpl/linux/gatherlibraries.rb: /usr/bin/ruby: bad interpreter: No such file or directory
cp: missing destination file operand after ‘/home/lili/Documents/delft3trunk/src/../bin/lnx/flow2d3d/bin’
Try 'cp --help' for more information.
installing vs . . .
Gathering libraries for vs...
scripts_lgpl/linux/oss-install.sh: scripts_lgpl/linux/gatherlibraries.rb: /usr/bin/ruby: bad interpreter: No such file or directory
cp: missing destination file operand after ‘/home/lili/Documents/delft3trunk/src/../bin/lnx/flow2d3d/bin’
Try 'cp --help' for more information.
installing nesthd1 . . .
Gathering libraries for nesthd1...
scripts_lgpl/linux/oss-install.sh: scripts_lgpl/linux/gatherlibraries.rb: /usr/bin/ruby: bad interpreter: No such file or directory
cp: missing destination file operand after ‘/home/lili/Documents/delft3trunk/src/../bin/lnx/flow2d3d/bin’
Try 'cp --help' for more information.
installing nesthd2 . . .
Gathering libraries for nesthd2...
scripts_lgpl/linux/oss-install.sh: scripts_lgpl/linux/gatherlibraries.rb: /usr/bin/ruby: bad interpreter: No such file or directory
cp: missing destination file operand after ‘/home/lili/Documents/delft3trunk/src/../bin/lnx/flow2d3d/bin’
Try 'cp --help' for more information.


Then When I run the example in 01_standard, run_flow2d3d.sh, the error shows like ,

../../bin/lnx/flow2d3d/bin/d_hydro.exe: symbol lookup error: ../../bin/lnx/flow2d3d/bin/libflow2d3d.so: undefined symbol: MPI_Init

What's wrong with that? still MPI problem?

Thank you very much if you could give me some clue.

Bests,
Melody
Giordano Lipari, modified 6 Years ago.

RE: make ds-install & undefined symbol: MPI_Init

Youngling Posts: 12 Join Date: 3/23/11 Recent Posts
Hi! I guess you have solved this in the meantime. If not, my guess would have been that that the program does not know where to find library files.

It could be that you have to update the environmental variable LD_LIBRARY_PATH. It's on slides 25 through 27 of the webinar. To my understanding the command is

export LD_LIBRARY_PATH=<where you have installed delft3D>/lib:$LD_LIBRARY_PATH

At the end of the compilation, I then think that you should add this line at the end of the file ~/.bashrc. In this way every time you use the terminal the programs invoked from there pick up this setting of the environmental variable once again.

Hope this helps and happy to be corrected.
Giordano
XW
xia wei, modified 4 Years ago.

RE: make ds-install & undefined symbol: MPI_Init

Youngling Posts: 16 Join Date: 10/24/16 Recent Posts
Hi Melody,

Have you solved the problem, I have meet the same problem like you, I installed the mpich2-4.1.3 manually under the /opt/mpich direction.
If you have solved this problem, can you give me some suggestions?

Many thanks.
Xia Wei.
Adri Mourits, modified 4 Years ago.

RE: make ds-install & undefined symbol: MPI_Init

Yoda Posts: 1221 Join Date: 1/3/11 Recent Posts
Hi Xia Wei,

Please have a look at the script build.sh to see what environment parameters should be set related to mpich2.
Please be sure that the mpich version you downloaded is compiled with exactly the same compilers as you use for Delft3D.

Regards,

Adri
XW
xia wei, modified 4 Years ago.

RE: make ds-install & undefined symbol: MPI_Init

Youngling Posts: 16 Join Date: 10/24/16 Recent Posts
Hi Adri,

I have checked the bush.sh script, I think I have set all the environment parameters as followed command in .bashrc:
export NETCDF=/opt/netcdf
export PATH=$NETCDF/bin:$PATH
export NETCDF_INCDIR=$NETCDF/include
export NETCDF_LIBDIR=$NETCDF/lib
export LD_LIBRARY_PATH=$NETCDF/lib:$LD_LIBRARY_PATH
export PATH NETCDF

export PATH=/home/xiawei/delft3d_6686/src/build/bin:$PATH
export LD_LIBRARY_PATH=/home/xiawei/delft3d_6686/src/build/lib:$LD_LIBRARY_PATH

export PATH=/opt/mpich2-1.4.1-gcc-4.6.2/bin:$PATH
export MPI_INCLUDE=/opt/mpich2-1.4.1-gcc-4.6.2/include
export MPILIBS_ADDITIONAL="-L/opt/mpich2-1.4.1-gcc-4.6.2/lib -lfmpich -lmpich -lmpl"
export MPIFC=/opt/mpich2-1.4.1-gcc-4.6.2/bin/mpif90

export NETCDF_CFLAGS=/opt/netcdf/include
export NETCDF_LIBS=/opt/netcdf/lib


xiawei@xiawei-OptiPlex-9020:~$ printenv
XDG_VTNR=7
NETCDF_LIBS=/opt/netcdf/lib
MPI_INCLUDE=/opt/mpich2-1.4.1-gcc-4.6.2/include
XDG_SESSION_ID=c2
CLUTTER_IM_MODULE=xim
XDG_GREETER_DATA_DIR=/var/lib/lightdm-data/xiawei
SESSION=ubuntu
GPG_AGENT_INFO=/home/xiawei/.gnupg/S.gpg-agent:0:1
TERM=xterm-256color
SHELL=/bin/bash
VTE_VERSION=4205
NETCDF_CFLAGS=/opt/netcdf/include
QT_LINUX_ACCESSIBILITY_ALWAYS_ON=1
WINDOWID=56625408
OLDPWD=/home
UPSTART_SESSION=unix:abstract=/com/ubuntu/upstart-session/1000/1436
GNOME_KEYRING_CONTROL=
GTK_MODULES=gail:atk-bridge:unity-gtk-module
NETCDF_INCDIR=/opt/netcdf/include
USER=xiawei
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:
QT_ACCESSIBILITY=1
LD_LIBRARY_PATH=/home/xiawei/delft3d_6686/src/build/lib:/opt/netcdf/lib:/opt/mpich2-1.4.1-gcc-4.6.2/lib/:/home/xiawei/delft3d_6686/src/build/lib:/opt/netcdf/lib:
XDG_SESSION_PATH=/org/freedesktop/DisplayManager/Session0
XDG_SEAT_PATH=/org/freedesktop/DisplayManager/Seat0
SSH_AUTH_SOCK=/run/user/1000/keyring/ssh
DEFAULTS_PATH=/usr/share/gconf/ubuntu.default.path
XDG_CONFIG_DIRS=/etc/xdg/xdg-ubuntu:/usr/share/upstart/xdg:/etc/xdg
MPILIBS_ADDITIONAL=-L/opt/mpich2-1.4.1-gcc-4.6.2/lib -lfmpich -lmpich -lmpl
PATH=/opt/mpich2-1.4.1-gcc-4.6.2/bin:/home/xiawei/delft3d_6686/src/build/bin:/opt/netcdf/bin:/home/xiawei/bin:/home/xiawei/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
DESKTOP_SESSION=ubuntu
QT_IM_MODULE=ibus
QT_QPA_PLATFORMTHEME=appmenu-qt5
XDG_SESSION_TYPE=x11
JOB=unity-settings-daemon
PWD=/home/xiawei
XMODIFIERS=@im=ibus
NETCDF_LIBDIR=/opt/netcdf/lib
GNOME_KEYRING_PID=
LANG=en_SG.UTF-8
MPIFC=/opt/mpich2-1.4.1-gcc-4.6.2/bin/mpif90
GDM_LANG=en_US
MANDATORY_PATH=/usr/share/gconf/ubuntu.mandatory.path
IM_CONFIG_PHASE=1
COMPIZ_CONFIG_PROFILE=ubuntu
GDMSESSION=ubuntu
SESSIONTYPE=gnome-session
GTK2_MODULES=overlay-scrollbar
HOME=/home/xiawei
XDG_SEAT=seat0
SHLVL=1
LANGUAGE=en_SG:en
GNOME_DESKTOP_SESSION_ID=this-is-deprecated
UPSTART_INSTANCE=
NETCDF=/opt/netcdf
UPSTART_EVENTS=xsession started
XDG_SESSION_DESKTOP=ubuntu
LOGNAME=xiawei
COMPIZ_BIN_PATH=/usr/bin/
QT4_IM_MODULE=xim
XDG_DATA_DIRS=/usr/share/ubuntu:/usr/share/gnome:/usr/local/share/:/usr/share/:/var/lib/snapd/desktop
DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-socFAgyPWi
LESSOPEN=| /usr/bin/lesspipe %s
INSTANCE=
UPSTART_JOB=unity7
XDG_RUNTIME_DIR=/run/user/1000
DISPLAY=:0
XDG_CURRENT_DESKTOP=Unity
GTK_IM_MODULE=ibus
LESSCLOSE=/usr/bin/lesspipe %s %s
XAUTHORITY=/home/xiawei/.Xauthority
_=/usr/bin/printenv

also I compiled the mpich2 with the same compiler used for Delft3D:

xiawei@xiawei-OptiPlex-9020:~$ mpich2version
MPICH2 Version: 1.4.1
MPICH2 Release date: Wed Aug 24 14:40:04 CDT 2011
MPICH2 Device: ch3:nemesis
MPICH2 configure: --prefix=/opt/mpich2-1.4.1-gcc-4.6.2 --enable-shared --enable-lib-depend --enable-sharedlibs=gcc F77=gfortran FC=gfortran CC=gcc CXX=g++ FCFLAGS=-O2 CFLAGS=-O2 CCFLAGS=-O2 CXXFLAGS=-O2
MPICH2 CC: gcc -O2 -O2
MPICH2 CXX: g++ -O2 -O2
MPICH2 F77: gfortran -O2
MPICH2 FC: gfortran -O2 -O2

and I compiled the Delft3D with the command
./autogen.sh
NETCDF_CFLAGS=-I/opt/netcdf/include NETCDF_LIBS=-L/opt/netcdf/lib F77=gfortran FC=gfortran CC=gcc CXX=g++ CFLAGS='-O2' CXXFLAGS='-O2' FFLAGS='-O2' FCFLAGS='-O2' ./configure --prefix=$(pwd)/build
./ sudo make install

but I still meet the problem when I run the 01_standard example:
xiawei@xiawei-OptiPlex-9020:~/delft3d_6686/examples/01_standard$ d_hydro.exe config_d_hydro.xml
d_hydro.exe: symbol lookup error: /home/xiawei/delft3d_6686/src/build/lib/libflow2d3d.so: undefined symbol: MPI_Init

when I check the config.log I found there is a error: gfortran: error: unrecognized command line option '-showme:link' .
I have the FAQ about this error but I found those different from me, so can you check it for me what's the problem.

attach is my config.log and make.log

Many thanks,
Xia Wei.
Adri Mourits, modified 4 Years ago.

RE: make ds-install & undefined symbol: MPI_Init

Yoda Posts: 1221 Join Date: 1/3/11 Recent Posts
Hi Xia Wei,

All your settings look fine.

Let's first exclude the easy thing that might go wrong:
You do a "make install". This will not create the directory tree "bin/lnx64/flow2d3d/bin" at the top level of the source code tree. To do that, you have to execute "make ds-install".

The run script of example "01_standard" points to "bin/lnx64/flow2d3d/bin". If an existing, "old"/"wrong" version of Delft3D is available, that might explain the behaviour.

So, can you do a "make ds-install", then go to the directory of example "01_standard", remove the file(s) "tri-diag.*", run it and have a look at the Delft3D creation date/time at the very top of the freshly created tri-diag file(s)? It should refer to the date/time that "make ds-install" was executed.

Does this help?

Regards,

Adri
XW
xia wei, modified 4 Years ago.

RE: make ds-install & undefined symbol: MPI_Init

Youngling Posts: 16 Join Date: 10/24/16 Recent Posts
Hi Adri,

I have tried the make ds-install like what you said, but it still the same problem when I run the 01_standard example:

xiawei@xiawei-OptiPlex-9020:~/delft3d_6686/examples/01_standard$ d_hydro.exe config_d_hydro.xml
d_hydro.exe: symbol lookup error: /home/xiawei/delft3d_6686/src/build/lib/libflow2d3d.so: undefined symbol: MPI_Init

And I have check with the build direction the lnx64 folder is here, but it in not under the bin directory as what the 01_standard point to "bin/lnx64/flow2d3d/bin"

xiawei@xiawei-OptiPlex-9020:~/delft3d_6686/src/build$ ls
bin lib lnx64

I also check the usr/bin and /bin directory both do not have the lnx64 directory.

Also there did not have the "tri-diag.*" files when I failed the running of the 01_standard examples.

As to the old version Delft3D on my computer, I did try to installed the 5565 version before, install is successful but also have undefined symbol error, so I deleted all the open source file and also the environment path. then try to install the 6686 version form the begin.

Hope the information could be helpful.

Many thanks,
Xia Wei.
Adri Mourits, modified 4 Years ago.

RE: make ds-install & undefined symbol: MPI_Init

Yoda Posts: 1221 Join Date: 1/3/11 Recent Posts
Hi Xia Wei,

I'm a bit confused by your info, and I do want to clarify this a bit, to be sure we are doing the same things:
- I assume you downloaded the source code in directory "~/delft3d_6686"
- In directory "~/delft3d_6686/src", you executed "autogen.sh", "configure" and "make ds-install".
As a result, directory "~/delft3d_6686/bin" is created, containing "~/delft3d_6686/bin/lnx64/flow2d3d/bin/libflow2d3d.so". The creation date/time of this so-file, should match the data/time of executing the "make ds-install" command.
- In directory "~/delft3d_6686/examples/01_standard", you executed the script "run_flow2d3d.sh"

Do you still run into the "undefined symbol: MPI_Init" error when following the recipe above?
Is the file "~/delft3d_6686/examples/01_standard/tri-diag.f34" created and does it contain error messages?

Regards,

Adri
XW
xia wei, modified 4 Years ago.

RE: make ds-install & undefined symbol: MPI_Init

Youngling Posts: 16 Join Date: 10/24/16 Recent Posts
Hi Adri,

Sorry that my information make you confused.

I did executed "autogen.sh", "configure" and "make ds-install" in the directory "~/delft3d_6686/src", like what you said. The only difference is that I prefix to the direction to ~/delft3d_6686/src/build, so the delft3d are installed in the "~/delft3d_6686/src/build" directory.

I executed the script "run_flow2d3d.sh" under the directory "~/delft3d_6686/examples/01_standard". But it still have problem, as followed

xiawei@xiawei-OptiPlex-9020:~/delft3d_6686/examples/01_standard$ ./run_flow2d3d.sh
./run_flow2d3d.sh: line 38: ../../bin/lnx64/flow2d3d/bin/d_hydro.exe: No such file or directory

it seems that the "lnx64" should be under the " ~/delft3d_6686/src/build/bin" directory. But the problem is that the "linx64" is under the "~/delft3d_6686/src/build" directory. As you can see when I ls the build directory, the "lnx64" is in the same level with "bin" instead of under the "bin".

xiawei@xiawei-OptiPlex-9020:~/delft3d_6686/src/build$ ls
bin lib lnx64

since the /../bin/lnx64/flow2d3d/bin/d_hydro.exe can no be found so there is no "~/delft3d_6686/examples/01_standard/tri-diag.f34" file.

So my point is that why the "lnx64" is not under the " ~/delft3d_6686/src/build/bin" directory. Is it because I prefixing to the direction to ~/delft3d_6686/src/build when I configure be the cause?

Best,
Xia Wei.
XW
xia wei, modified 4 Years ago.

RE: make ds-install & undefined symbol: MPI_Init

Youngling Posts: 16 Join Date: 10/24/16 Recent Posts
And I have also try to change the run_flow2d3d.sh script to:

export ARCH=lnx64
export D3D_HOME=../../bin
exedir=/home/xiawei/delft3d_6686/src/build/$ARCH/flow2d3d/bin

so the "d_hydro.exe" cloud be found.

But when I run the "run_flow2d3d.sh " the error is as followed:

xiawei@xiawei-OptiPlex-9020:~/delft3d_6686/examples/01_standard$ ./run_flow2d3d.sh
/home/xiawei/delft3d_6686/src/build/lnx64/flow2d3d/bin/d_hydro.exe: symbol lookup error: /home/xiawei/delft3d_6686/src/build/lnx64/flow2d3d/bin/libflow2d3d.so: undefined symbol: MPI_Init

it seems that mpich still have problem.

Best,

Xia Wei.
Adri Mourits, modified 4 Years ago.

RE: make ds-install & undefined symbol: MPI_Init

Yoda Posts: 1221 Join Date: 1/3/11 Recent Posts
Hi Xia Wei,

I expect that the prefix messes things up. Can you try without a prefix and execute "run_flow2d3d.sh" without changes?

Regards,

Adri
Qinghua Ye, modified 4 Years ago.

RE: make ds-install & undefined symbol: MPI_Init

Jedi Council Member Posts: 612 Join Date: 3/2/11 Recent Posts
Hi Xia Wei,

It seems to me still the problem with MPICH library. Pls refer to the email.

Greetings,

Qinghua
wakhidatik nurfaida, modified 4 Years ago.

RE: make ds-install & undefined symbol: MPI_Init

Youngling Posts: 3 Join Date: 4/14/14 Recent Posts
Hello all,

I also facing the same error,

/run_flow2d3d.sh ../../bin/lnx64/flow2d3d/bin/d_hydro.exe: symbol lookup error: ../../bin/lnx64/flow2d3d/bin/libflow2d3d.so: undefined symbol: MPI_Init

I did the same steps as explained.
I have installed NetCDF, and all prerequisites.

I have the /bin/lnx64/flow2d3d/bin as well.

When i tried to run the example on folder wave, it seems work. However, when i ran the flow2d3d it shows the error.

Thanking you in advance!

Best Regards,
Ida
XW
xia wei, modified 3 Years ago.

RE: make ds-install & undefined symbol: MPI_Init

Youngling Posts: 16 Join Date: 10/24/16 Recent Posts
Hi lda,

Yes we have the same problem.

it runs well with the wave example but has error when run the 01_standard example. Have you already solved this problem? By the way, which version of Linux distribution and Delft3D open source do you use? My distribution is Ubuntu 16.04 LTS and delft3d is the Trunk version, are they the same with your's?

Best,
Xia Wei.
wakhidatik nurfaida, modified 3 Years ago.

RE: make ds-install & undefined symbol: MPI_Init

Youngling Posts: 3 Join Date: 4/14/14 Recent Posts
Hi Xia Wei,

I tried the post here:

http://oss.deltares.nl/web/delft3d/coast-/-estuary/-/message_boards/view_message/1047516

and it ran well for the 01_standard example.

Then i tried to refine the mesh, another problem occurred, but maybe it was due to my mesh setup or other model setup. i will try again on this.

Oh, by the way, i am using Ubuntu 16.04 LTS, and Delft3D tagged version 6686.

Best Regards,
Ida
Qinghua Ye, modified 3 Years ago.

RE: make ds-install & undefined symbol: MPI_Init

Jedi Council Member Posts: 612 Join Date: 3/2/11 Recent Posts
Thanks Ida,

http://oss.deltares.nl/web/delft3d/coast-/-estuary/-/message_boards/view_message/1047516#_19_message_1037019.

I made a copy of the link here, for later reference.

Qinghua
Adri Mourits, modified 3 Years ago.

RE: make ds-install & undefined symbol: MPI_Init

Yoda Posts: 1221 Join Date: 1/3/11 Recent Posts
Hi All,

Qinghua managed to get it compiled and running on a clean Ubuntu machine. There is a readme file and an build script file available in the trunk:
https://svn.oss.deltares.nl/repos/delft3d/trunk/src/build_ubuntu.16.04LT.readme
https://svn.oss.deltares.nl/repos/delft3d/trunk/src/build_ubuntu1604.sh

Regards,

Adri
XW
xia wei, modified 3 Years ago.

RE: make ds-install & undefined symbol: MPI_Init

Youngling Posts: 16 Join Date: 10/24/16 Recent Posts
Hi all,

Thank you for your help. I have successfully compiled the Delft3d software and also the examples run well.

It is very important to keep the ubuntu16.04 LT system clean, and check the mpich is not installed. I reinstalled the Ubuntu16.04LT system and compiled the delft3d again, it works.

Attached is my build file and read me file for those who are interested.

By the way, is there any instruction for running the delft3d on super computer? the super computer is national and the system is Centos6.6.

Many thanks,
Xia Wei.
Adri Mourits, modified 3 Years ago.

RE: make ds-install & undefined symbol: MPI_Init

Yoda Posts: 1221 Join Date: 1/3/11 Recent Posts
Hi Xia Wei,

Thank you for your feed back.

There are no special instructions for usage on a super computer. But it is important to compile the code using exactly the operationg system, libraries and tools as they are available on the super computer.

Other topics (queueing, working directory) depend heavily on the configuration of the super computer itself and cannot be answered in general.

Regards,

Adri
XW
xia wei, modified 3 Years ago.

RE: make ds-install & undefined symbol: MPI_Init

Youngling Posts: 16 Join Date: 10/24/16 Recent Posts
Hi Adri,

Thank you for your reply!

In fact, I have successfully installed the delft3d software on the supercomputer and have run the model. However I have encountered with the issue about view the result file trih.dat and trim.dat. I have noticed there are a few posts talking about the Quickplot. However, I don't have the Matlab license, so compiling the Quickplot on the supercomputer may be a problem for me. So, I am wondering is there any tool available which cloud convert the trih.dat into csv on Linux? and how do usually people solve this reading result file problem?

Many thanks,
Xia Wei.
Adri Mourits, modified 3 Years ago.

RE: make ds-install & undefined symbol: MPI_Init

Yoda Posts: 1221 Join Date: 1/3/11 Recent Posts
Hi Xia Wei,

There are two tools that may help:
1. The Delft3D UserInterface contains the program named VSI (inside "Utilities"). This will start a Windows GUI with which you can read nefis files and export data to CSV file.
2. When compiling the sourcecode, also the program "vs" will be build. You can use this in the same way as VSI, but it does not contain a GUI; it's command-prompt/script based. There is a manual for this tool.

Regards,

Adri
XW
xia wei, modified 3 Years ago.

RE: make ds-install & undefined symbol: MPI_Init

Youngling Posts: 16 Join Date: 10/24/16 Recent Posts
Hi Adri,

Thank you for your reply, and I can read the result file now.

Right now I am trying to run my delft3d-flow model on the supercomputer through ssh. But I alway get the error as follow no mater I try to run the model by mpirun or mpiexec.

[e0022672@nus01 up22]$ ./run_flow2d3d_parallel.sh
Contents of machinefile:
cat: /home/users/nus/e0022672/delft3d/examples/up22/machinefile: No such file or directory
----------------------------------------------------------------------
./run_flow2d3d_parallel.sh: line 89: mpd: command not found
./run_flow2d3d_parallel.sh: line 96: mpdboot: command not found

ldd libflow2d3d.so: start
linux-vdso.so.1 => (0x00002aaaaaacb000)
libDelftOnline.so.0 => /home/users/nus/e0022672/delft3d/src/lib/libDelftOnline.so.0 (0x00002aaaadc38000)
libmpifort.so.12 => ../../bin/lnx64/flow2d3d/bin/libmpifort.so.12 (0x00002aaaade4d000)
libmpi.so.12 => ../../bin/lnx64/flow2d3d/bin/libmpi.so.12 (0x00002aaaae083000)
libnetcdff.so.6 => /home/users/nus/e0022672/Downloads/libraries/netcdf_4.4/lib/libnetcdff.so.6 (0x00002aaaae511000)
libnetcdf.so.11 => /home/users/nus/e0022672/Downloads/libraries/netcdf_4.4/lib/libnetcdf.so.11 (0x00002aaaae788000)
libhdf5_hl.so.8 => /home/users/nus/e0022672/Downloads/libraries/hdf5-1.8.13/lib/libhdf5_hl.so.8 (0x00002aaab1b23000)
libhdf5.so.8 => /home/users/nus/e0022672/Downloads/libraries/hdf5-1.8.13/lib/libhdf5.so.8 (0x00002aaab1d52000)
libz.so.1 => /lib64/libz.so.1 (0x00002aaab2239000)
libdl.so.2 => /lib64/libdl.so.2 (0x00002aaab244f000)
libcurl.so.4 => ../../bin/lnx64/flow2d3d/bin/libcurl.so.4 (0x00002aaab2653000)
libgfortran.so.3 => /cm/local/apps/gcc/5.1.0/lib/../lib64/libgfortran.so.3 (0x00002aaab28a9000)
libquadmath.so.0 => /cm/local/apps/gcc/5.1.0/lib/../lib64/libquadmath.so.0 (0x00002aaab2bc9000)
librt.so.1 => /lib64/librt.so.1 (0x00002aaab2e07000)
libexpat.so.1 => ../../bin/lnx64/flow2d3d/bin/libexpat.so.1 (0x00002aaab3010000)
libstdc++.so.6 => /cm/local/apps/gcc/5.1.0/lib/../lib64/libstdc++.so.6 (0x00002aaab3238000)
libm.so.6 => /lib64/libm.so.6 (0x00002aaab35c5000)
libc.so.6 => /lib64/libc.so.6 (0x00002aaab384a000)
libgcc_s.so.1 => /cm/local/apps/gcc/5.1.0/lib/../lib64/libgcc_s.so.1 (0x00002aaab3bde000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00002aaab3df5000)
/lib64/ld-linux-x86-64.so.2 (0x00002aaaaaaab000)
libidn.so.11 => /lib64/libidn.so.11 (0x00002aaab4012000)
libldap-2.4.so.2 => /lib64/libldap-2.4.so.2 (0x00002aaab4244000)
libgssapi_krb5.so.2 => /lib64/libgssapi_krb5.so.2 (0x00002aaab4496000)
libkrb5.so.3 => /lib64/libkrb5.so.3 (0x00002aaab46da000)
libk5crypto.so.3 => /lib64/libk5crypto.so.3 (0x00002aaab49c1000)
libcom_err.so.2 => /lib64/libcom_err.so.2 (0x00002aaab4bee000)
libssl3.so => ../../bin/lnx64/flow2d3d/bin/libssl3.so (0x00002aaab4df2000)
libsmime3.so => ../../bin/lnx64/flow2d3d/bin/libsmime3.so (0x00002aaab5035000)
libnss3.so => ../../bin/lnx64/flow2d3d/bin/libnss3.so (0x00002aaab5263000)
libnssutil3.so => ../../bin/lnx64/flow2d3d/bin/libnssutil3.so (0x00002aaab55a3000)
libplds4.so => /lib64/libplds4.so (0x00002aaab57cf000)
libplc4.so => /lib64/libplc4.so (0x00002aaab59d4000)
libnspr4.so => /lib64/libnspr4.so (0x00002aaab5bd9000)
libssh2.so.1 => ../../bin/lnx64/flow2d3d/bin/libssh2.so.1 (0x00002aaab5e17000)
liblber-2.4.so.2 => /lib64/liblber-2.4.so.2 (0x00002aaab6040000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x00002aaab624f000)
libsasl2.so.2 => ../../bin/lnx64/flow2d3d/bin/libsasl2.so.2 (0x00002aaab646a000)
libkrb5support.so.0 => /lib64/libkrb5support.so.0 (0x00002aaab6684000)
libkeyutils.so.1 => /lib64/libkeyutils.so.1 (0x00002aaab688f000)
libssl.so.10 => ../../bin/lnx64/flow2d3d/bin/libssl.so.10 (0x00002aaab6a93000)
libcrypto.so.10 => ../../bin/lnx64/flow2d3d/bin/libcrypto.so.10 (0x00002aaab6d00000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00002aaab70e5000)
libselinux.so.1 => /lib64/libselinux.so.1 (0x00002aaab731c000)
libfreebl3.so => /lib64/libfreebl3.so (0x00002aaab753c000)
ldd libflow2d3d.so: end

MPI process number 002 has host unknown and is running on processor nus01
MPI process number 001 has host unknown and is running on processor nus01
MPI process number 004 has host unknown and is running on processor nus01
MPI process number 000 has host unknown and is running on processor nus01
MPI process number 003 has host unknown and is running on processor nus01
--------------------------------------------------------------------------------
Deltares, FLOW2D3D Version 6.02.09.6866, Dec 13 2016, 14:14:41
libflow2d3d.so entry Flow2D3D::Run
--------------------------------------------------------------------------------

Part I - Initialisation Time Dep. Data module...
runid : up22
Part II - Creating intermediate files...
Part III - Initialisation of the Execution module...
Part IV - Reading complete MD-file...
Part V - Initialisation & checking input...
Part VI - Initialisation & checking second part...
Part VII - Initialisation output...
Part VIII - Start Simulation...

Time to finish 3s, 0.0% completed, time steps left 350400
Flow exited abnormally
Check diagnosis file
Flow exited abnormally
Check diagnosis file
Flow exited abnormally
Check diagnosis file
Flow exited abnormally
Check diagnosis file
terminate called after throwing an instance of 'char const*'
terminate called after throwing an instance of 'char const*'
terminate called after throwing an instance of 'char const*'
terminate called after throwing an instance of 'char const*'

===================================================================================
= BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES
= PID 18744 RUNNING AT nus01
= EXIT CODE: 6
= CLEANING UP REMAINING PROCESSES
= YOU CAN IGNORE THE BELOW CLEANUP MESSAGES
===================================================================================
YOUR APPLICATION TERMINATED WITH THE EXIT STRING: Aborted (signal 6)
This typically refers to a problem with your application.
Please see the FAQ page for debugging suggestions
./run_flow2d3d_parallel.sh: line 124: mpdallexit: command not found


when I check the tri-diag file there are errors:

*** ERROR Not enough layers at bubble screen 67. Increase the number of layers.
*** ERROR Flow exited abnormally


I cloud run the model without parallel, can you give me some suggestions?

Many thanks,
Xia Wei.
Qinghua Ye, modified 3 Years ago.

RE: make ds-install & undefined symbol: MPI_Init

Jedi Council Member Posts: 612 Join Date: 3/2/11 Recent Posts
Hi Xia Wei,

You are using a combination of Z-layer model and bubble screen, which is not actually supported in parallel mode yet. Of course you are welcome to extend this function.

Greetings,

Qinghua
XW
xia wei, modified 3 Years ago.

RE: make ds-install & undefined symbol: MPI_Init

Youngling Posts: 16 Join Date: 10/24/16 Recent Posts
Hi Qinghua,

I have checked the 01_standard examples, I found the flow model also a z-layers model, the same with my own flow model. However I can run the 01_standard examples with parallel. I am a bit confuse why my own model cannot run with parallel, i use adopt the run_flow2d3d_parallel.sh file to my own flow model. should this work? is it right to do so? my own model is 19 layers and the 01_standard example is 5 layers.

Many thanks,
Xia Wei.
Qinghua Ye, modified 3 Years ago.

RE: make ds-install & undefined symbol: MPI_Init

Jedi Council Member Posts: 612 Join Date: 3/2/11 Recent Posts
Hi Xia Wei,

I mean the combination of Z-layer model and bubble screen, in parallel mode, is not yet supported.

Greetings,

Qinghua