Skip to main content

sqlitecpp-build-cmake

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

来源信息

仓库
SRombauts/SQLiteCpp
最近来源活动
2026年10月2日 19:16
检测到的 SKILL.md 语言
英语
星标
2,789
分支
575

安装方式

默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。

检查来源文件

决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。

正在显示 SKILL.md

SKILL.md
来源说明 · 只读预览
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.
在 GitHub 查看