Richard Gilmore's Research: Setting up Compiling for UDFs ANSYS Fluent on Windows 7
Checking for Installed Windows SDKs with Compilers and Uninstalling
Go to Control Panel, Programs, Programs and Features. Check to see if you have "Microsoft Visual C++ Compilers 2010 SP1 Standard - x64" (and x86). If so skip installation and run the SetEnv.Cmd as instructed below. In the list of programs look for all the "Microsoft Visual C++ 2010" and uninstall them (a few are shown below).
Download: "Microsoft Windows SDK for Windows 7 and .NET Framework 4" by copying and pasting this link.
Run the installer program "winsdk_web.exe" (may take 20sec to start downloading and running). If the Error screen "Some components cannot be installed and require .NET Framework 4", fix this later and continue with the installation. Uninstall any compenents that maybe requested by right clicking on the setup.exe for the compenents and selecting uninstall. During install UNSELECT "Visual C++ Compilers" and Microsoft Visual C++ 2010" (see below), leaving only "Windows Headers and Libraries" and "Tools" seleced, then continue with the installation.
If you had the error above check to see if you have .NET 4.7.1 installed, uninstall it, and install .NET 4.7 or just 4 and it will update to 4.7.
Download and install "Microsoft Visual C++ 2010 Service Pack 1 Compilers Update for the Windows SDK 7.1". This is the SDK 7.1 patch. Copy and paste this link:
Downloads file: VC-Compiler-KB2519277.exe"
Now reinstall the C++ package we uninstalled at the beginning by copy and pasting these links:
Downloads files: vcredist_x64.exe and vcredist_x86.exeReference the following original content from this page here for more Information:
Verify Installation of SDK and C++ Compilers Environment on Windows 7
Open the Command Prompt. Search for cmd or find it under Accessories.
Run the SetEnv.cmd program found in the SDK bin directory. Copy and paste this:
"C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.Cmd"
This should result in a yellow font for the x64 Debug Build Environment and no error message.
Next try to run the command "nmake". Which should give you a NMAKE: fatal error U1064 MAKEFILE not found...(see below)
Now we can start fluent with the ability to compile UDFs. Copy and past this for Fluent Version 17.1
"C:\Program Files\ANSYS Inc\v171\fluent\ntbin\win64\fluent.exe"
Select -> User-Defined, Functions, Compiled...
The "Compiled UDFs" window will open. Select "Add.." under "Soruce Files" and click OK.
Select the UDF you want to compile.
Once the UDF file is added click "Build", and the output in the Colsole window is shown below.
Then select LOAD udf, and the list of all the availabe UDF function should be displayed.
Simplifying UDF Compiler Environment for in Fluent Launcher and use in Workbench
To simplify the loading of the compiling enviornment under SDK v7.1 when no other versions of Visual Studio are installed with a complete compiler. The Fluent-Launcher has an optional envionment setup available. During Fluent Laucher startup click the plus sign next to "Show More Options".
Select the "Set up Compilation Envionment for UDF".
However, this udf.bat file isn't setup correctly for SDK v7.1 and must be change a little bit. Open up this file with administrative privileges, or copy it and save it back to it's original place, or save it in your home directory and point the Fluent Launcher to that file.
This program starts by looking for a Microsoft C compiler that you might have purchased and installed, and not the SDK v7.1. So to rearrange things a bit we move the search for the SDK packages to the top. At around line number 77 (85 in Fluent V18.2): "echo trying to find MS C compiler, SDKs..." to line 85 (93 in Fluent V18.2) it's looking for the SDKs.
However, v7.1 is missing. So copy and paste these lines to just after line 6, but above the line "echo trying to find MS C compilers, version 140..." Then copy and paste the three repeat lines of code and change it in two places (see below). Changing "v6.1" to "v7.1", and the line ending with "goto msvc_sdk61" to "goto msvc_sdk71".
Now near the bottom of the file at about line 147 (169 in Fluent V18.2) is ":msvc_sdk61", which needs it's own copy for v7.1. So copy and past these four lines and change to ":msvc_sdk71" and change 6.1 to a 7.1.
Once this is done anytime fluent is launched through the Fluent Launcher it will automatically setup the SDK envionment for compiling the UFD. However, this seems to only work correctly in ANSYS Fluent 17 (fails in 18.2).