===== Compile Multiwfn by Intel Visual Fortran in Windows 64bit system ======

In Windows platform, Multiwfn can only be compiled by Intel Visual Fortran. Below I describe how to compile Multiwfn using Intel Visual Fortran (version 2023.1) under Microsoft Visual Studio 2022, this is also the environment I am using for developing current Multiwfn version.

1 Boot up Visual Studio, create a new Intel Visual Fortran project named "Multiwfn" (Console Application - Empty Project), copy all content from Multiwfn source code package to the project folder, and then add all following files into "Source Files" of the current project:
all .F and .f90 files (including those in "libreta_hybrid" and "ext" folders)
disifl_d.lib

2 "Build" - "Configuration Manager", switch to "Release", in "Platform" select <New...>, click "OK", then click "Close". Now compilation mode has been changed from the default Win32 to x64 (i.e. Windows 64bit).

3 Enter "Project" - "Properties", choose "Fortran" tab, then
In "General" sub-tab, set "Multi-process Compilation" to "Yes (/MP)"
In "Optimization" sub-tab, set "Enable Matrix Multiply Library Call" to "Yes (/Qopt-matmul)".
In "Preprocessor" sub-tab, set "Preprocess Source File" to "Yes (/fpp)".
In "Code Generation" sub-tab, set "Enable Enhanced Instruction Set" to "Streaming SIMD Extensions 3" (If your CPU supports AVX, set to "Intel Advanced Vector Extensions")
In "Language" sub-tab, set "Process OpenMP Directives" to "Generate Parallel Code (/Qopenmp)".
In "Diagnostics" sub-tab, set "Disable Specific Diagnostics" to "8290,8291,6371,10316,6843".
In "Libraries" sub-tab, set "Runtime Library" to "Multithread", set "Use Intel Math Kernel Library" to "Parallel (/Qmkl:parallel)", set "Use Common Windows Libraries" to "Yes".
In "Command Line" sub-tab, add "/DINTEL_MKL" to the text box.

4 Choose "Linker" tab, then
In "Input" sub-tab, write "legacy_stdio_definitions.lib" in the "Additional Dependencies" textbox.
In "Command Line" sub-tab, add "/STACK:20000000000" (about 20GB) in "Additional Options" textbox.

5 Click "blockhrr_012345.f90" in Visual Studio by right mouse button, select "Properties", enter "Fortran" - "General", set "Optimization" to "Minimize Size (/O1)" (otherwise the compilation may take a few hours!)

6 Compiling this project by choosing "Build" - "Build Solution". Error may encounter during the compliation, it doesn't matter, in this case clicking "function.f90" by right mouse button, select "Compile" to solely compile this file, and then choose "Build" - "Build Solution" again, the compilation should normally continue.

Compilation of blockhrr_012345.f90 is the most time-consuming step, it usually takes 10+ minutes.

Finally you will get "x64\Release\Multiwfn.exe" in the project folder. Then copy this file into Multiwfn binary package to overwrite the existing one.