Skip to main content

sqlitecpp-build-cmake

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

معلومات المصدر

المستودع
SRombauts/SQLiteCpp
آخر نشاط في المصدر
٢ أكتوبر ٢٠٢٦ في ١٩:١٦
لغة SKILL.md المكتشفة
الإنجليزية
النجوم
٢٬٧٩٠
التفرعات
٥٧٥

خيارات التثبيت

يُحدَّد 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