FAQ - Delft3D
Category Filter
Asset Publisher
Uninstalling DS_Flex version 6.5.1.0 or older does not work on Windows 10 ▶
To uninstall the old DS_Flex on Windows 10, some manual actions are needed:
On 64-Bits windows:
1. Remove directory: C:\Program Files (x86)\DS_Flex
2. Remove from Registry:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\WL | Delft Hydraulics\DS_Flex
On 32-Bits windows:
1. Remove directory: C:\Program Files\DS_Flex
2. Remove from Registry:
HKEY_LOCAL_MACHINE\SOFTWARE\WL | Delft Hydraulics\DS_Flex
Then everything is clean and you can install the latest DS_Flex.
On Windows, the message "The program can't start because MSVCP110.dll is missing" appears ▶
This error might appear when you compile Delft3D on a machine (named A) using Microsoft Visual C++ 2010 and try to run the executables on another machine (named B), not containing that C++ version. The easiest solution is to install the related redistributable on machine (B). Download links to both the 32-bit and the 64-bit version are at the middle of this Microsoft page.
On Windows, the message 'ERROR: child killed: unknown signal' appears ▶
This means that when trying to run flow2d3d.dll, another dll is needed and can not be found. See the section above (the exact message may vary depending on your operating system).
On Windows, the message 'couldn't read file ".../create_config_xmlt.tcl": no such file or directory' appears ▶
The file "create_config_xml.tcl" is inside the source code. If you compile the (release version of the) source code, a directory named "<mysourcecodelocation>\bin\win32" will be created, containing also the file "<mysourcecodelocation>\bin\win32\menu\bin\create_config_xml.tcl". If you want to use the Deflt3D-GUI (version 4.01.00 or higher), you have to copy the full contents of "<mysourcecodelocation>\bin\win32" on top of the Delft3D installation directory (default directory "c:\Program Files (x86)\Deltares\Delft3D <versionnumber>\win32"), including the tcl file in the correct subdirectory. See also running a calculation.
On Windows, the message 'Cannot load component library "flow2d3d.dll"' appears ▶
This means that when trying to run flow2d3d.dll, another dll is needed and can not be found.
First have a look at ...\examples\01_standard\run_flow2d3d.bat. D3D_HOME
defines the root of the Delft3D installation:
set D3D_HOME=..\..\bin\win32
Dlls may be located in two directories: exedir and libdir:
set exedir=%D3D_HOME%\flow2d3d\bin
set libdir=%D3D_HOME%\flow2d3d\lib
Exedir
is supposed to contain the executables and the dlls, resulting from the compilation of (in this case) the flow2d3d source code. Libdir is supposed to contain the dlls, specific for the operating system you work on (Windows) and the compiler used (Intel). Both directories must be added to environment parameter PATH:
set PATH=%exedir%;%libdir%;%PATH%
The most common error is that one of these parameters (D3D_HOME, exedir, libdir, PATH) is not correctly defined.
If this does not help, find out what dll exactly can not be found. This information is not in the error message (since version 5.00) because "deltares_hydro.exe
" is actually a (temporary) script starting the real executable "d_hydro.exe
". Starting "d_hydro.exe" directly may give more information. To do this:
1) In the run script, replace the line:
%exedir%\deltares_hydro.exe %argfile%
by:
%exedir%\deltares_hydro.exe %argfile% -keepXML
This will ensure that "deltares_hydro.exe" will leave the input file for "d_hydro.exe" in the working directory. It will have a name like "TMP_config_flow2d3d_3552.xml".
2) In the run script, replace the line:
%exedir%\deltares_hydro.exe %argfile% -keepXML
by:
%exedir%\d_hydro.exe TMP_config_flow2d3d_3552.xml
When using this run script, a message box will appear containing the name of the missing dll.
3) Try to locate the missing dll and be sure that it can be reached using environment parameter PATH. What you have to do depends on what dll is missing and what caused this error to appear. It may help to have a look at the script that builds the install directory: ...\src\scripts_lgpl\win32\oss-install.cmd
(section "INSTALL_FLOW2D3D").
On Windows, problems with compiling "tools_gpl\vs" ▶
"vs" is a small tool that can be used to inspect nefis files. Most probably, you will not use it. You can ignore compilation problems related to "vs".
In case you do want to solve these compilation problems: When downloading the source code, two binaries are included called "Lex" and "Yacc", see sub-directory "...\src\third_party_open\lexyacc\bin\win32". These are used to convert *.l and *.y source code files in the "vs" project into C-code. Intermediate files are placed in directory "tmp" on the current drive. The "vs" project tries to create this directory.
Most problems are related to compiling on the C-drive, without having administrator rights. This might result in errors due to missing permissions to create directory "C:/tmp". There are two ways to solve this problem:
- Checkout the Delft3D source code on the D-drive, where all users have write-permission
- With help of your system administrator: Arrange directory "C:\tmp" with you having write permission in there.
On Windows, my single domain parallel run crashes after a few days of calculation ▶
This may be caused by anti virus sofware on your machine. It has been noticed that a file can not be written by Delft3D-FLOW while being scanned on viruses. It only has been noticed while running in parallel mode using MPI.
On Windows, I have problems related to warnings/error messages like "C:\Program Files\MSBuild\Microsoft.Cpp\Microsoft.CppBuild.targets(990,5): warning MSB8012" ▶
These messages are generated by MSBuild: a Microsoft plugin of VisualStudio. The Delft3D source code can not be compiled when using MSBuild. You have to disable/remove it in VisualStudio.
MSBuild seems to be added recently to the trial version of VisualStudio.
On Windows, I get the error message "the project (.vfproj) is not compatible with your Visual Studio version" ▶
Probably the Fortran compiler is missing. When you install the Intel Fortran compiler, it will cooperate with Visual Studio: Visual Studio will recognize the .vfproj projects as being Fortran projects and will activate the Fortran compiler automatically.
On Windows compilation of some projects fail with the message "LINK : fatal error LNK1104: cannot open file 'ifconsol.lib' (or 'libifcoremt.lib', ...)" ▶
These projects contain a main subroutine written in C. When linking them, the linker needs the path to the fortran runtime libraries. This directory is specified explicitly in the properties of the related project. This path differs for each version of the Intel compiler. It may be necessary to adapt this property as follows (assuming that you use "d_hydro_open_source_vs2010.sln", optionally upgraded by VisualStudio to VS20xx):
- Find out what the name of the environment parameter is pointing to the Intel compiler installation directory. As an example, for Intel 13 this is IFORT_COMPILER13
- Search for the string "IFORT_COMPILER12" in the following files:
...\src\engines_gpl\flow2d3d\packages\flow2d3d\flow2d3d.vcxproj
...\src\engines_gpl\flow2d3d\packages\flow2d3d_openda\flow2d3d_openda.vcproj
...\src\engines_gpl\part\packages\delpar\delpar.vfproj
...\src\engines_gpl\waq\packages\delwaq1\delwaq1.vfproj
...\src\engines_gpl\waq\packages\delwaq2\delwaq2.vfproj
...\src\engines_gpl\waq\packages\delwaq2_lib\delwaq2_lib.vfproj
...\src\engines_gpl\waq\packages\delwaq2_openda_lib\delwaq2_openda_lib.vfproj
...\src\engines_gpl\wave\packages\wave\wave_vs2010.vfproj
...\src\tools_gpl\datsel\packages\datsel\datsel.vcproj
...\src\tools_gpl\kubint\packages\kubint\kubint.vcproj
...\src\tools_gpl\lint\packages\lint\lint.vcproj - Replace all occurences of the string "IFORT_COMPILER12" in the files above by the correct name on your system, for example "IFORT_COMPILER13".
- Compile again
Remark: NetCDF support on output files is introduced in revision 4649. This complicates the compilation as follows:
- You have to be sure that the NetCDF libraries are available, compiled with exactly the same compiler as you use for Delft3D. Check directory "...\src\third_party_open\netcdf\lib\win32\Release" for the available precompiled NetCDF versions.
- You have to change "...\src\engines_gpl\flow2d3d\packages\flow2d3d\flow2d3d.vcxproj", such that it points to the correct version of the precompiled NetCDF libraries.