You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The CYGWIN `bash` shell is used for all steps on the command line. It is automatically available after the first installation step (typically to be launched via the CYGWIN desktop icon).
30
+
31
+
1. Install CYGWIN (64-bit version) and development packages
Inside the Cygwin Setup GUI use `C:\cygwin64` for both `Root Directory` and `Local Package Directory`. `Chose a Download Site` close to you (also http mirrors often work better). Continue to complete the bare minimum installation. This will end with a desktop icon named `Cygwin64 Terminal`. Double-click this to open the shell and launch further commands from there.
37
+
38
+
For detailed informations on how to install CYGWIN and selected packages see [CYGWIN Installation](https://cygwin.com/install.html).
39
+
40
+
* Install development tools (dependencies on these packages will be automatically selected by CYGWIN)
41
+
42
+
> NOTE: A single command installing all required packages in one is given below this list
43
+
44
+
1. General build environment tools
45
+
* autoconf
46
+
* autoconf2.5
47
+
* autogen
48
+
* automake
49
+
* automake1.15
50
+
* libtool
51
+
* make
52
+
1. Compilers
53
+
* gcc-g++
54
+
* mingw64-x86_64-gcc-core
55
+
* mingw64-x86_64-gcc-g++
56
+
1. Python
57
+
* python37
58
+
* python37-devel
59
+
* python3-configobj
60
+
1. OpenMPI
61
+
* libopenmpi-devel
62
+
* openmpi
63
+
1. Miscellaneous
64
+
* vim (or any other editor in order to be able to edit files)
65
+
* rsh
66
+
* wget (to be able to download from the command line)
67
+
* zlib-devel
68
+
69
+
* All-in-one installation of packages (after the initial minimum installation):
70
+
71
+
> NOTE: Prepend path to `setup-x86_64.exe` (depending where it has been downloaded)
1. Configure CYGWINs default mount point (optional, but following steps use a syntax relying on this)
78
+
79
+
```bash
80
+
mount -c / -o binary,noacl,posix=0
81
+
mount -m > /etc/fstab
82
+
```
83
+
84
+
1. Configure OpenMPI
85
+
86
+
Because in OpenMPI the C++ interface was removed, the option `-lmpi_cxx` has to be removed from the linker defaults. We need to check if this option is contained in the wrapper control file. This depends on the installed OpenMPI libraries.
87
+
88
+
Assuming the 64-bit CYGWIN is installed in`C:\cygwin64` and `/etc/fstab` has been modified as in the previous step:
* Extract files and change into the folder where the files were extracted to:
121
+
122
+
```bash
123
+
tar -xzvf v6.2.0.tar.gz
124
+
cd SU2-6.2.0
125
+
```
126
+
127
+
> NOTE: This is later the folder where the SU2_HOME variable points to
128
+
129
+
1. Run the utility for autoconf/automake toolchain setup:
130
+
131
+
```bash
132
+
./bootstrap
133
+
```
134
+
135
+
1. Create Makefiles:
136
+
137
+
> NOTE: didn't yet get `tecio` working, therefore disabled with `--disable-tecio`<br>
138
+
> NOTE: Removed `-DHAVE_EXECINFO_H` from metis cppflags (potentially could be solved via [gnulib](https://www.gnu.org/software/gnulib/manual/html_node/execinfo_002eh.html))
1. Distribute executables, etc. to their intended locations:
151
+
152
+
```bash
153
+
make install
154
+
```
155
+
156
+
1. Add the `$SU2_HOME` and `$SU2_RUN` environment variables to `~/.bashrc` (and `source ~/.bashrc`)
157
+
158
+
```bash
159
+
export SU2_RUN="path_where_you_want_the_Executables" (use same folder here as in the configure command above)
160
+
export SU2_HOME="/d/software/CFD/SU2/SU2-6.2.0" <-- UPDATE THIS folder according to your environment
161
+
export PATH=$PATH:$SU2_RUN
162
+
export PYTHONPATH=$PYTHONPATH:$SU2_RUN
163
+
```
164
+
165
+
1. Test serial and parallel versions:
166
+
167
+
```bash
168
+
cd $SU2_HOME/QuickStart
169
+
```
170
+
171
+
SERIAL command (due to the previous step `SU2_CFD.exe` should now be available in the path):
172
+
173
+
```bash
174
+
SU2_CFD.exe inv_NACA0012.cfg
175
+
```
176
+
177
+
PARALLEL command:
178
+
Both `mpirun` and `mpiexec` do the same; `mpiexec` is recommended as the standard command.
179
+
180
+
```bash
181
+
mpiexec -n 4 SU2_CFD.exe inv_NACA0012.cfg
182
+
```
183
+
184
+
If more processes are requested than cores are available an error will be thrown:
185
+
186
+
> There are not enough slots available in the system.
187
+
188
+
On WINDOWS this can be if hyperthreading is active. A system physically having 4 CPUs (cores), would show 8 CPUs in case of hyperthreading. Oversubscribe allows more processes than cores (which not necessarily is faster).
0 commit comments