Buildprocess for Windows:
In the console: switch to tool's main folder where the main CMakeLists.txt lies.
cd multivariateprojectionviewer\MultivariateProjectionViewer
run cmake → Makefiles are generatedcmake -G “MinGW Makefiles”
run make to compile the code:mingw32-make
start the Tool:source\IUI\VisualSheetExplorer.exe
IN WIN:
If you do so, as a post_build process, a programm is run named “windeployqt .exe”, which collects all required *.dll's of the main application and copy it to the binary folder.
- - - - - Morover, in folder “\tools”, there, a lot of build scripts are available.
Use the provided Builtools (Build_Start.cmd) or this Build Process:
The above mentioned build is generated with: WIN: - Build_Start.cmd (= cmake > mingw32-make > windeployqt.exe)
To additionally build the installer you call: WIN: - MakeClean_Build_And_MakeGenerateInstaller.cmd (= cmake > mingw32-make > windeployqt.exe > iccs installerscript.iss)
where iccs is a tool from “innosetup” that build the installer based on a script that is placed under the folder “InstallerBuildProcess”
Notizen zum Buildprozess:
# um im DEBUG MODUS zu kompilieren:
in cmake einfügen: set(CMAKE_BUILD_TYPE Debug)
darauf achten das in der resultierenden makefile -G bei den Kompileranweisungen stehen soll und ein -O2 in den Kompileranweisungen eben nicht stehen sollte.
Gesetzt werden die Kompilerflags in der Cmake für die entsprechenden Kompilermodi durch:
SET(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG") SET(CMAKE_CXX_FLAGS_DEBUG "-Wall") SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g")
Bitte darauf verzichten CMAKE_CXX_FLAGS zu verwenden. Diese Kompileranweisungen gelten für jeden Mode was zu Konflikten führen kann (in der Vergangenheit hatten wir das gelegentlich); darum setzen wir CMAKE_CXX_FLAGS nicht mehr ein.
# um im RELEASE MODUS zu kompilieren:
set(CMAKE_BUILD_TYPE Release)
darauf achten das in der resultierenden makefile ein -O2 bei den Kompileranweisungen stehen soll und ein -G in den Kompileranweisungen eben nicht stehen sollte.
Als Optimierungslevel verwednen wir O2 und nicht O3. Das kompilieren mit O3 führ zu Konflikten mit unserer Eigenversion, daher verwenden wir O2.
Hinweis:
CMAKE_C_FLAGS_RELEASE:STRING=-O2 -DNDEBUG …DNDEBUG mein asserts will be removed