Linux un Windows build differences in CMakeLists and appropriate README

This commit is contained in:
jorenchik
2024-12-08 11:05:50 +02:00
parent 0d53d4fd7b
commit 5df0bf864f
5 changed files with 144 additions and 16 deletions

75
README.md Normal file
View File

@@ -0,0 +1,75 @@
# Nepieciešamie rīki un bibliotēkas
## Linux
- `C++` kompilators (piemēram, `g++`)
- Bibliotēka `Qt` (v5.15.0)
- Bibliotēka `QScintilla` (v2.14)
- Bibliotēka `GTest` (v1.15)
- Rīks `CMake`
- Rīks `Ninja`
## Windows
- `C++` kompilators ([`MinGw`](https://winlibs.com/))
- Bibliotēka `Qt` (v5.15.0)
- Bibliotēka `QScintilla` (v2.14)
- Bibliotēka `GTest` (v1.15)
- Rīks `CMake`
- Rīks `Ninja`
# Uzbūvēšana
Linux un Windows sistēmām ir norādītas noklusētās bibliotēku atrašanās vietas.
Lai uzbūvētu ar noklusētiem iestatījumiem.
```bash
mkdir Debug/
cd Debug/
cmake -DCMAKE_BUILD_TYPE=Debug -G Ninja ..
```
Lai nekompilētu testus pievieno `-DCOMPILE_TESTS=OFF`.
Ir pieejamas 2 cmake konfigurācijas - `Debug` (atkļūdošana) un `Release`
(piegāde). Ja nepieciešams pielāgot vienu vai vairākus parametrus, skatīt
nākamās 2 sadaļas.
## Linux
```bash
cmake -DCMAKE_BUILD_TYPE=Debug \
-DQt5_DIR="/usr/lib/cmake/Qt5" \
-DQSCINTILLA_LIB_PATH="/usr/lib/libqscintilla2_qt5.so" \
-DQSCINTILLA_INCLUDE_PATH="/usr/include/qt/Qsci" \
-DGTEST_INCLUDE_DIR="/usr/include/gtest" \
-DGTEST_LIBRARY="/usr/lib/libgtest.so" \
-DGTEST_MAIN_LIBRARY="/usr/lib/libgtest_main.so" \
-G Ninja ..
```
## Windows
```bash
cmake -DCMAKE_BUILD_TYPE=Debug \
-DQt5_DIR="C:/Qt/5.15.0/mingw81_64/lib/cmake/Qt5" \
-DQSCINTILLA_LIB_PATH="C:/Programs/binaries/qscintilla2_qt5.dll" \
-DQSCINTILLA_INCLUDE_PATH="C:/Programs/QScintilla_src-2.14.1/src" \
-DGTEST_INCLUDE_DIR="C:/Programs/binaries/gtest_include" \
-DGTEST_LIBRARY="C:/Programs/binaries/gtest_lib/libgtest.a" \
-DGTEST_MAIN_LIBRARY="C:/Programs/binaries/gtest_lib/libgtest_main.a" \
-G Ninja ..
```
Lai ieliktu direktorijā nepieciešamās bibliotēkas.
```
cd ./src/qtapp/
windeployqt MdemoryApp.exe
```
Darbam uz Windows direktorijā papildus jāieliek `qscintilla2_qt5.dll` un
`Qt5PrintSupport.dll`.
Piegādes kompilēšanā var pielikt `-DWIN32_EXECUTABLE=ON`, lai slēdzot programmu
nerādītos termināla logs.