Howto: Mit CMake + VS2022 IDE die gen.exe bauen/ausführen/debuggen
man braucht SDL2 und SDL2_mixer Libs/Dlls - diese werden direkt vom SDL Projekt zum download angeboten (man kann das auch z.B. direkt über vcpkg machen - dann ist das Package-Management fast wie es unter Linux/Msys2 gemacht wird)
https://github.com/libsdl-org/SDL/releas...ase-2.32.8
https://github.com/libsdl-org/SDL/releas...2.8-VC.zip <---
https://github.com/libsdl-org/SDL_mixer/...ease-2.8.1
https://github.com/libsdl-org/SDL_mixer/...8.1-VC.zip <---
dann noch die freie oder Pro Variante von Visual Studio 2022 (VS2019,VS2017 sollten auch gehen)
und eine CMake Version von https://cmake.org/download/
dann bauen wir folgende Verzeichnis-Struktur (oder wie es beliebt wenn man sich auskennt)
dann per Kommandozeile, es geht auch mit dem CMake-GUI oder direkt in der IDE - aber ich bevorzuge die CMake Basis-Generierung direkt in der Konsole (weitere Änderungen in der CMakeLists.txt werden dann vom VStudio selbständig erkannt und in der Projektansicht/settings nachgezogen - Projektsettings-Änderungen direkt in der IDE überleben maximal den nächsten CMake lauf bei CMakeLists.txt-Änderung)
Optional kann man auch -T ClangCL mit abgeben dann wird das ganzen Projekt schon mit dem Clang-CL als Kompiler gesetzt - kann man aber auch in der IDE umstellen
das sollte folgenden Ausgabe ergeben
noch die beiden Dlls C:\Temp\BrightEyes_dev\3rd_party\SDL2_mixer-2.8.1\lib\x64\SDL2_mixer.dll und C:\Temp\BrightEyes_dev\3rd_party\SDL2-2.32.8\lib\x64\SDL2.dll
in C:\Temp\BrightEyes_dev\__build\Debug
kopieren damit die ngen_cl.exe.exe laufen kann
dann mit der VS2022 IDE die C:/Temp/BrightEyes_dev/__build/NGen.sln öffnen
Fertig!
man braucht SDL2 und SDL2_mixer Libs/Dlls - diese werden direkt vom SDL Projekt zum download angeboten (man kann das auch z.B. direkt über vcpkg machen - dann ist das Package-Management fast wie es unter Linux/Msys2 gemacht wird)
https://github.com/libsdl-org/SDL/releas...ase-2.32.8
https://github.com/libsdl-org/SDL/releas...2.8-VC.zip <---
https://github.com/libsdl-org/SDL_mixer/...ease-2.8.1
https://github.com/libsdl-org/SDL_mixer/...8.1-VC.zip <---
dann noch die freie oder Pro Variante von Visual Studio 2022 (VS2019,VS2017 sollten auch gehen)
und eine CMake Version von https://cmake.org/download/
dann bauen wir folgende Verzeichnis-Struktur (oder wie es beliebt wenn man sich auskennt)
Code:
C:\temp\BrightEyes_dev
__build <-- wir machen hier einen Out-of-Repo aka Out-of-Source build damit wir keine build-Artefake oder sonstiges in die .gitignore stecken müssen
BrightEyes <- github Repo
3rd_party
SDL2-2.32.8
cmake
docs
...
SDL2_mixer-2.8.1
cmake
docs
...dann per Kommandozeile, es geht auch mit dem CMake-GUI oder direkt in der IDE - aber ich bevorzuge die CMake Basis-Generierung direkt in der Konsole (weitere Änderungen in der CMakeLists.txt werden dann vom VStudio selbständig erkannt und in der Projektansicht/settings nachgezogen - Projektsettings-Änderungen direkt in der IDE überleben maximal den nächsten CMake lauf bei CMakeLists.txt-Änderung)
Code:
cd C:\temp\BrightEyes_dev\__build
cmake -G "Visual Studio 17 2022" -DCMAKE_PREFIX_PATH="C:\Temp\BrightEyes_dev\3rd_party\SDL2-2.32.8;C:\Temp\BrightEyes_dev\3rd_party\SDL2_mixer-2.8.1" ..\BrightEyes\src\genOptional kann man auch -T ClangCL mit abgeben dann wird das ganzen Projekt schon mit dem Clang-CL als Kompiler gesetzt - kann man aber auch in der IDE umstellen
das sollte folgenden Ausgabe ergeben
Code:
C:\Temp\BrightEyes_dev\__build>cmake -G "Visual Studio 17 2022" -DCMAKE_PREFIX_PATH="C:\Temp\BrightEyes_dev\3rd_party\SDL2-2.32.8;C:\Temp\BrightEyes_dev\3rd_party\SDL2_mixer-2.8.1" ..\BrightEyes\src\gen
-- Selecting Windows SDK version 10.0.26100.0 to target Windows 6.2.9200.
-- The C compiler identification is MSVC 19.44.35214.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.44.35207/bin/Hostx64/x64/cl.exe - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Found OpenMP_C: -openmp (found version "2.0")
-- Found OpenMP: TRUE (found version "2.0")
-- Configuring done (4.9s)
-- Generating done (0.0s)
-- Build files have been written to: C:/Temp/BrightEyes_dev/__buildnoch die beiden Dlls C:\Temp\BrightEyes_dev\3rd_party\SDL2_mixer-2.8.1\lib\x64\SDL2_mixer.dll und C:\Temp\BrightEyes_dev\3rd_party\SDL2-2.32.8\lib\x64\SDL2.dll
in C:\Temp\BrightEyes_dev\__build\Debug
kopieren damit die ngen_cl.exe.exe laufen kann
dann mit der VS2022 IDE die C:/Temp/BrightEyes_dev/__build/NGen.sln öffnen
Fertig!

