Personal tools

Difference between revisions of "Compiling with IFC 11"

From MohidWiki

Jump to: navigation, search
(Creating a new project)
Line 8: Line 8:
 
#Open the solution from the CODEPLEX structure above under folder > Solutions > VisualStudio2008_IntelFortran11
 
#Open the solution from the CODEPLEX structure above under folder > Solutions > VisualStudio2008_IntelFortran11
 
#All the setting are already done.
 
#All the setting are already done.
 
== Release and Debug settings ==
 
Please follow the steps below and set them EXACTLY as they are presented. Do not make additional changes in the settings unless you’re testing some optimizations. Note that settings under "Debug" and "Release" configurations are slightly different. You can select "Release" configuration and apply this settings first and then do the same for "Debug" configuration or select "All configurations".
 
 
#Now select "Project...Properties" and start editing your compilation settings.
 
#In "Fortran...General", set "Supress Startup Banner" to '''"Yes"''', define the path to the folder where the HDF5 libraries will be placed in the "Additional Include Directories" text box (local folder of Libs\IntelFortran11.x\HDF_1.6.8\Include from source safe). Also set "Optimization" to '''"Maximize Speed plus Higher Level Optimizations"'''.
 
#In "Fortran...Optimization" define "I/O Buffering" to '''Yes'''.
 
#In "Fortran...Preprocessor" set "Preprocessor Source File" to '''Yes''' and define again, in the Additional Include Directories text box, the path to the folder where the HDF5 libraries will be placed (local folder of Libs\IntelFortran11.x\HDF_1.6.8\Include from source safe).
 
#In "Fortran...Diagnostics", set "Warn For Non-Standard Fortran" to '''"Fortran 95"'''. Also, set the "Warn For Undeclared Symbols" to '''"Yes"''', "Warn For Unused Variables" to '''"Yes"''' and "Warn When Truncating Source Code Line" to '''"Yes"'''.
 
#In "Linker...General", set "Enable Incremental Link" to '''"No"''' and "Supress Startup Banner" to '''"Yes"'''. In the Additional Include Directories text box, set the path to i) the folder where the HDF5 libraries will be placed (local folder of Libs\IntelFortran11.x\HDF_1.6.8\Lib) ii) the folder where the SZlib libraries will be placed (local folder of Libs\IntelFortran11.x\SZlib_2.1\dll) and iii) the folder where the Zlib libraries will be placed (local folder of Libs\IntelFortran11.x\Zlib_1.2\dll). Note that the 3 paths are separated by ''';'''
 
#In "Linker.. Input", write down the names of the libraries in the "Additional Dependencies" text box. The names for the 2008 Visual Studio integration are:
 
'''hdf5.lib  hdf5_fortran.lib hdf5_f90cstub.lib zlib1.lib szlibdll.lib'''
 
 
== Specific Debug settings ==
 
Select the "Debug" configuration and change the following settings groups:
 
#In "Fortran...General", ser "Debug Information Format" to '''"Full"''' and "Optimization" to '''"Disable"'''.
 
#In "Fortran...Optimization", set "Optimization" to '''"Disable"'''.
 
#In "Linker.. Input", in "Ignore Additional Libraries" write down '''LIBCMT.lib'''
 
  
 
== Build Solution ==
 
== Build Solution ==

Revision as of 11:23, 6 November 2009

Please follow these instructions step by step and until the end:

Creating a new project

  1. Make sure you have installed in your computer Microsoft Visual Studio 2008 and Intel Fortran Compiler 11.0. If you don’t have both installed, please install them.
  2. Make sure you have downloaded the last version of the code and solutions from codeplex (http://mohid.codeplex.com) for example via tortoise software.
  3. Your folder structure will look like this after the download:
    CodePlex local folder structure
  4. Open Microsoft Visual Studio 2008.
  5. Open the solution from the CODEPLEX structure above under folder > Solutions > VisualStudio2008_IntelFortran11
  6. All the setting are already done.

Build Solution

  1. Select "Build...Build Solution"

Optional compilation settings

  1. To perform optional compilation, just add the compilation pre-processor keywords in "Properties...Fortran...PreProcessor", in the "Preprocessor Definitions" text box.

Exclude modules

Some modules can be completely excluded from compilation. If your simulations do not use these modules you can use this pre-processor keywords.

_LAGRANGIAN_	   excludes Modules Lagrangian + Jet + Oil
_AIR_	           excludes Modules InterfaceWaterAir + Atmosphere
_WAVES_	           excludes Module Waves
_SEDIMENT_	   excludes Modules SedimentProperties + Consolidation

Other options

Other keywords can also be used.

_USE_MPI           includes MPI code
_SHORT_LINE_LENGTH sets line_length = 64  (default line_length is 256)
_LONG_LINE_LENGTH  sets line_length = 1024(default line_length is 256)
_GUI_              includes GUI code