SqliteModernCpp / sqlite_modern_cpp

The C++14 wrapper around sqlite library
MIT License
903 stars 156 forks source link

Possible to use via FetchContent or CPM? #231

Open adamski opened 12 months ago

adamski commented 12 months ago

I'm trying to use this library via the standard method of FetchContent and CPM in my CMakeLists.txt.

CPMAddPackage(
        NAME sqlite_modern_cpp
        GIT_REPOSITORY https://github.com/SqliteModernCpp/sqlite_modern_cpp.git
        GIT_TAG v3.2
)

And then link it:

target_link_libraries(${PROJECT_NAME} sqlite_modern_cpp)

However although I can see it's been downloaded, it can't find the include:

#include <sqlite_modern_cpp.h>
fatal error: 'sqlite_modern_cpp.h' file not found

Is this installation and usage method supported?

codethinki commented 11 months ago

i dont think you need to link it its not a library its a header. I don't know how to use CPM but i looked it up and try something like this:

if(sqlite_modern_cpp_ADDED)      
    target_include_directories(...)
 endif();
mhhollomon commented 4 days ago

This has been working for me.

CPMAddPackage(
  GITHUB_REPOSITORY SqliteModernCpp/sqlite_modern_cpp
  VERSION 3.2
  DOWNLOAD_ONLY
)

add_library(sqlite_modern_cpp INTERFACE)

target_include_directories(sqlite_modern_cpp
  INTERFACE
    $<BUILD_INTERFACE:${sqlite_modern_cpp_SOURCE_DIR}/hdr>
)

Then add sqlite_modern_cpp to target_link_libraries() for your project.