vcpkg和cmake的简单C ++项目:无法通过已安装的库运行

时间:2019-08-27 12:59:12

标签: c++ cmake vcpkg

我对C ++及其生态系统还很陌生,仍然在学习。最近,我正在尝试学习如何安装库并在我的项目中使用它。

我在以下链接中关注本教程:https://vcpkg.readthedocs.io/en/latest/examples/installing-and-using-packages/

我对vcpkg的基本用法很满意,并按照教程安装sqlite3库进行操作。

还了解了cmake的基础知识。如本教程所述:The best way to use installed libraries with cmake is via the toolchain file。因此,我准备了以下CMakeLists.txt

cmake_minimum_required(VERSION 3.0)

set(CMAKE_TOOLCHAIN_FILE "C:/Develop/test/cpp/test-vcpkg/vcpkg/scripts/buildsystems/vcpkg.cmake")

project(test)

set(sqlite3_DIR "C:/Develop/test/cpp/test-vcpkg/vcpkg/installed/x64-windows/share/sqlite3")

find_package(sqlite3 CONFIG REQUIRED)

add_executable(main main.cpp)

target_link_libraries(main sqlite3)

我的CMakeLists.txt与本教程中的稍有不同,我设置了本教程中未提及的sqlite3_DIR(如果不添加它,则构建过程将失败。 )

源文件非常简单,如下所示:

#include <sqlite3.h>
#include <stdio.h>

int main()
{
    printf("%s\n", sqlite3_libversion());
    return 0;
}

然后按照本教程所示运行build命令:

cmake .. 

cmake --build .

这两个命令始终正确运行。

我尝试使用Visual Studio打开在.sln进程中生成的cmake ..文件,并尝试对其进行构建,出现以下错误:

The application was unable to start correctly(0xc000007b)

如果我尝试访问main.exe过程中获得的cmake --build .可执行文件。我将看到相同的错误消息窗口。

有什么帮助或想法吗?

0 个答案:

没有答案