Skip to main content

sqlitecpp-build-cmake

Build SQLiteCpp with CMake. Use for CMake builds, tests, options, or build scripts.

Informations de source

Dépôt
SRombauts/SQLiteCpp
Dernière activité de la source
2 octobre 2026 à 19:16
Langue détectée de SKILL.md
anglais
Étoiles
2 789
Forks
575

Options d'installation

Le prompt qui vérifie d'abord la source est sélectionné par défaut. Vous pouvez passer à une commande directe ou télécharger une copie locale.

Vérifiez les fichiers source

Lisez SKILL.md et les fichiers associés affichés par SkillsMP avant de décider de l'installer.

Affichage de SKILL.md

SKILL.md
Instructions source · Aperçu en lecture seule
name
sqlitecpp-build-cmake
description
Build SQLiteCpp with CMake. Use for CMake builds, tests, options, or build scripts.
# SQLiteCpp CMake Build ## Quick builds - Windows (VS 2026): - `mkdir build` - `cd build` - `cmake -G "Visual Studio 18 2026" -DSQLITECPP_BUILD_TESTS=ON -DSQLITECPP_BUILD_EXAMPLES=ON ..` - `cmake --build . --config Release` - Unix/macOS: - `mkdir build && cd build` - `cmake -DCMAKE_BUILD_TYPE=Debug -DSQLITECPP_BUILD_TESTS=ON -DSQLITECPP_BUILD_EXAMPLES=ON ..` - `cmake --build .` ## Build scripts - `build.bat` (Windows) enables shared libs, tests, examples, and runs `ctest`. - `build.sh` (Unix) enables ASAN, shared libs, tests, examples, and runs `ctest`. ## Common options - `SQLITECPP_BUILD_TESTS` (OFF): build unit tests. - `SQLITECPP_BUILD_EXAMPLES` (OFF): build examples. - `BUILD_SHARED_LIBS` (OFF): build shared libs (DLLs). - `SQLITECPP_INTERNAL_SQLITE` (ON): use bundled sqlite3 source. - `SQLITE_ENABLE_COLUMN_METADATA` (ON): enable `getColumnOriginName()`. - `SQLITECPP_RUN_CPPLINT` (ON): run cpplint target. - `SQLITECPP_RUN_CPPCHECK` (ON): run cppcheck target. - `SQLITECPP_RUN_DOXYGEN` (OFF): generate docs. - `SQLITECPP_USE_ASAN` (OFF): address sanitizer. - `SQLITECPP_USE_UBSAN` (OFF): undefined behavior sanitizer for the library and linked consumers. - `SQLITECPP_USE_GCOV` (OFF): GCov coverage. - `SQLITECPP_DISABLE_STD_FILESYSTEM` (OFF): disable std::filesystem support. - `SQLITECPP_DISABLE_EXPANDED_SQL` (OFF): disable sqlite3_expanded_sql support. ## Tests - `ctest --output-on-failure` - `ctest --output-on-failure -V` - `ctest --output-on-failure -R "Database"` ## Notes - Tests can use a system `GTest`; otherwise they fall back to the `googletest` submodule. - If the submodule is needed: `git submodule update --init --recursive`. - SQLiteCpp requires CMake 3.16 or newer and C++17 or newer. - MSVC requires VS2017 15.9 / MSVC 19.16 or newer, enforced with a fatal configuration diagnostic. - `cxx_std_17` requests a standard mode; it does not prove complete C++17 feature support. Old MSVC toolsets are a special case: CMake can advertise standard meta-features even when the compiler has no standard-selection flag, and can map C++17 to `/std:c++latest` on VS2015 Update 3. `CXX_STANDARD_REQUIRED` therefore does not guarantee an early rejection of unsupported MSVC versions. Preserve explicit minimum-version diagnostics when needed, using `message(FATAL_ERROR ...)`. See https://cmake.org/cmake/help/latest/prop_tgt/CXX_STANDARD_REQUIRED.html and https://cmake.org/cmake/help/latest/manual/cmake-compile-features.7.html#requiring-language-standards. - Keep the minimum CMake version deliberate and update CMake configuration and documentation together. - The `...4.4` policy maximum in `cmake_minimum_required` does not cap the supported CMake version; it opts into policy behavior through CMake 4.4 while still allowing newer CMake releases.
Voir sur GitHub