Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows 如何在CMake中查找vcpkg安装的GTK_Windows_Cmake_Gtk_Gtk3_Vcpkg - Fatal编程技术网

Windows 如何在CMake中查找vcpkg安装的GTK

Windows 如何在CMake中查找vcpkg安装的GTK,windows,cmake,gtk,gtk3,vcpkg,Windows,Cmake,Gtk,Gtk3,Vcpkg,我使用以下工具安装GTK软件包: vcpkg install gtk:x64-windows 我还将环境变量CMAKE_TOOLCHAIN_FILE设置为C:\vcpkg\scripts\buildsystems\vcpkg.CMAKE,但find_package无法找到GTK。如何在CMake中找到GTK?在构建GTK后,是否确保通过Powershell管理员运行\vcpkg integrate install?您是否正在使用已定义的x64 windows三元组(vcpgg\u TARGET

我使用以下工具安装GTK软件包:

vcpkg install gtk:x64-windows

我还将环境变量
CMAKE_TOOLCHAIN_FILE
设置为
C:\vcpkg\scripts\buildsystems\vcpkg.CMAKE
,但
find_package
无法找到GTK。如何在CMake中找到GTK?

在构建GTK后,是否确保通过Powershell管理员运行
\vcpkg integrate install
?您是否正在使用已定义的
x64 windows
三元组(vcpgg\u TARGET\u三元组)构建项目

^完成此操作后,请删除CMakeCache,并/或测试到其他文件夹的重新生成,然后再次尝试配置


在CMake端,检查您的CmakeList是否也有
find_package(GTK)
。您可能还必须在CMake端定义
GTK\u INCLUDE\u DIR
并通过
target\u link\u库
链接GTK。

CMake find\u包和vcpkg集成不能按预期工作,至少在GTK4库中是这样。我可以通过手动添加依赖项(如下面所示)或创建CMAKE宏来修复

include_directories(${PATH TO VCPKG INSTALLED}/gtk-4.0)
include_directories(${PATH TO VCPKG INSTALLED}/gtkmm-4.0) .. include rest of the used dependencies
上面应该能够编译代码,下面的库也应该链接如下


target_link_库(main“[VCPKG安装]/lib/sigc-3.0.lib”)和所有依赖项gtkmm-4.0.lib、gtk-4.lib。。根据您的需要

您的答案完全不可读。请编辑并使用标记代码嵌入功能。