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
It turned out, that on other computers the original installation instructions did't work. So I tried to overcome the respective caveats. Further I did some better formatting with GitHub Flavored Markdown.
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
+
32
+
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.
38
+
39
+
For detailed informations on how to install CYGWIN and selected packages see [CYGWIN Installation](https://cygwin.com/install.html).
40
+
41
+
* Install development tools (dependencies on these packages will be automatically selected by CYGWIN)
42
+
43
+
> NOTE: A single command installing all required packages in one is given below this list
44
+
45
+
1. General build environment tools
46
+
* autoconf
47
+
* autoconf2.5
48
+
* autogen
49
+
* automake
50
+
* automake1.15
51
+
* libtool
52
+
* make
53
+
1. Compilers
54
+
* gcc-g++
55
+
* mingw64-x86_64-gcc-core
56
+
* mingw64-x86_64-gcc-g++
57
+
1. Python
58
+
* python37
59
+
* python37-devel
60
+
* python3-configobj
61
+
1. OpenMPI
62
+
* libopenmpi-devel
63
+
* openmpi
64
+
1. Miscellaneous
65
+
* vim (or any other editor in order to be able to edit files)
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
+
85
+
1. Configure OpenMPI
86
+
87
+
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.
88
+
89
+
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:
123
+
124
+
```bash
125
+
tar -xzvf v6.2.0.tar.gz
126
+
cd SU2-6.2.0
127
+
```
128
+
129
+
> NOTE: This is later the folder where the SU2_HOME variable points to
130
+
131
+
1. Run the utility for autoconf/automake toolchain setup:
132
+
133
+
```bash
134
+
./bootstrap
135
+
```
136
+
137
+
1. Create Makefiles:
138
+
139
+
NOTE: didn't yet get `tecio` working, therefore disabled with `--disable-tecio`<br>
140
+
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:
153
+
154
+
```bash
155
+
make install
156
+
```
157
+
158
+
1. Add the `$SU2_HOME` and `$SU2_RUN` environment variables to `~/.bashrc` (and `source ~/.bashrc`)
159
+
160
+
```bash
161
+
export SU2_RUN="path_where_you_want_the_Executables" (use same folder here as in the configure command above)
162
+
export SU2_HOME="/d/software/CFD/SU2/SU2-6.2.0" <-- UPDATE THIS folder according to your environment
163
+
export PATH=$PATH:$SU2_RUN
164
+
export PYTHONPATH=$PYTHONPATH:$SU2_RUN
165
+
```
166
+
167
+
1. Test serial and parallel versions:
168
+
169
+
```bash
170
+
cd $SU2_HOME/QuickStart
171
+
```
172
+
173
+
SERIAL command (due to the previous step `SU2_CFD.exe` should now be available in the path):
174
+
175
+
```bash
176
+
SU2_CFD.exe inv_NACA0012.cfg
177
+
```
178
+
179
+
PARALLEL command:
180
+
Both `mpirun` and `mpiexec` do the same; `mpiexec` is recommended as the standard command.
181
+
182
+
```bash
183
+
mpiexec -n 4 SU2_CFD.exe inv_NACA0012.cfg
184
+
```
185
+
186
+
If more processes are requested than cores are available an error will be thrown:
187
+
188
+
> There are not enough slots available in the system.
189
+
190
+
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