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에서 보기