Skip to content

Developer and Build

Basic steps

  • Install prerequisite softwares

  • Checkout DSM2 from github repository 

  • Compile and build input_storage and oprule libraries (may also need third party)

  • Compile and build DSM2 (That should result in the hydro.exe and qual.exe and ptm.dll in the build folders)

  • Test and validate the newly compiled

  • Copy and update DSM2 distribution package

  • Package for DSM2 new release

DSM2 version 82* compilation and packaging assuming a minor (bug-fix) release. 

Required Software

  1. Visual Studio 2015 (check its installation and management details at Intel Compiler Installation for Windows)
  2. Intel Composer for Fortran and C++ (Parallel Studio 2019)
  3. Cmake 3.14 https://cmake.org/ (better use a latest stable version, not *rc)
  4. Git https://git-scm.com/downloads
  5. Source Tree (free git client, optional) https://www.sourcetreeapp.com/
  6. Flex and Bison packages in Cygwin http://www.cygwin.com/setup.exe  (make sure {cywin}/bin in the environment path)
  7. Inno Setup Compiler v5.2.3 http://files.jrsoftware.org/is/5/isetup-5.2.3.exe
  8. Python 3 http://www.python.org/download/
  9. Java Development Kit (32-bit)  http://java.sun.com/javase/downloads/index.jsp
  10. Microsoft Office 2010
  11. Apache ANT http://ant.apache.org/bindownload.cgi

Note: make sure all software have their binary, header, or library folder set in the environment variables. (given that Department Virtual Machines may prohibit editing, users can still edit in their own account. Be aware of the software version which could fail some step of compiling)

Validation

To test new compiled DSM2 and see its difference from older version, the following tools are often used:

  • DSM2-vista Compare DSS Files Tool requires output settings (pathnames) exactly the same, but provides a quick summary of accumulated difference, especially useful when we want to confirm if two versions are the same. 
  • DSM2-vista Compare DSS Tool is flexible to compare between different pathnames, yet requires users set up configuration one-by-one.
  • HEC-DSSVue has a compare function in its 'Tools' menu

Attachments:

image2019-11-15_10-58-45.png (image/png)
image2019-11-15_10-54-29.png (image/png)
image2019-11-15_10-53-40.png (image/png)
DSM2_v8_0_PTM_Compiling_eclipse.docx (application/vnd.openxmlformats-officedocument.wordprocessingml.document)
DSM2_v8_0_Compiling_and_Packaging.docx (application/vnd.openxmlformats-officedocument.wordprocessingml.document)