【问题标题】:Finding SQLiteCpp package with CMake使用 CMake 查找 SQLiteCpp 包
【发布时间】:2017-07-18 20:59:06
【问题描述】:

我正在尝试在 Ubuntu 17.04 64 位上使用此 CMakeLists.txt 查找 SQLiteCpp。

# CMakeLists.txt
cmake_minimum_required(VERSION 3.7)
project(shule)

find_package(SQLiteCpp CONFIG REQUIRED)
include_directories(${SQLITECPP_INCLUDE_DIR})

set(SOURCE src/main.cpp)

add_executable(shule ${SOURCE})
target_link_libraries(shule SQLiteCpp)

SQLiteCpp 安装在 'usr/local/lib' 下,名称为 'libSQLiteCpp.a',其 CMake 脚本 'SQLiteCppConfig.cmake''SQLiteCppConfig-noconfig.cmake' 安装在 'usr/local/lib/cmake/SQLiteCpp' 下。包含文件安装在“usr/local/include/SQLiteCpp”下。我正在尝试编译以下简单文件。

#include <iostream>
#include <string>

#include <SQLiteCpp.h>


int main(int argc, char** argv)
{
    std::cout << "Database" << std::endl;
    return 0;
}

我收到错误消息 SQLiteCpp.h: No such file or directory #include 。我错过了什么?

【问题讨论】:

  • 试试#include &lt;SQLiteCpp/SQLiteCpp.h&gt;
  • SQLiteCPP 的所有包含不是都嵌套的,所以你必须包含

标签: c++ cmake


【解决方案1】:

如果您的头文件位于usr/local/include/SQLiteCpp 中,则usr/local/include 很可能位于您的$PATH 中。确保包含子目录。

#include &lt;SQLiteCpp/SQLiteCpp.h&gt;

【讨论】:

  • 另外,您应该使用提供的 CMAKE 变量target_link_libraries(shule ${SQLITECPP_LIBRARY})
猜你喜欢
  • 2013-11-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多