2017-07-18 56 views
0

我试图在Ubuntu 17.04 64bit上使用此CMakeLists.txt查找SQLiteCpp。使用CMake查找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:没有这样的文件或目录#include。我错过了什么?

+1

尝试'的#include ' –

+0

都不尽包括SQLiteCPP嵌套的,所以你必须包括? –

回答

2

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

#include <SQLiteCpp/SQLiteCpp.h>

+0

另外,您应该使用提供的CMAKE变量 'target_link_libraries(shule $ {SQLITECPP_LIBRARY})' –