0

已安装 libwnck-3-dev 但在尝试编译时:

fatal error: libwnck/libwnck.h: No such file or directory.

这是CmakeList.txt

该路径下存在文件/usr/include/libwnck-3.0/libwnck/libwnck.h

4

2 回答 2

2

查看您的个人资料,您似乎更擅长 javascript,所以如果您不介意,我会尝试告诉您这是如何工作的。

#include <path/to/header.h>使用或包含 C 和 C++ 中的代码#include "path/to/header.h"。前者在标准编译器中查找该文件的包含路径(例如,/usr/include/path/to/header.h)。后者在相对于正在编译的源文件的路径中查找。

CMake 通过将所需路径放入编译器包含路径来确保头文件路径解析。

看起来 libwnck 使用 packageconfig(这很不幸),在此处安装 PC 文件 --> /usr/lib/x86_64-linux-gnu/pkgconfig/libwnck-3.0.pc

做一点谷歌搜索,看起来你可以使用来自 cmake 的包配置模块

pkg_search_module(<PREFIX> [REQUIRED] [QUIET] <MODULE> [<MODULE>]*) 检查给定模块并使用第一个工作模块

所以也许是这样的:

pkg_search_module(REQUIRED libwnck)

或者:

pkg_search_module(REQUIRED libwnck-3.0)

从信息上讲,您通常想要做的是查看find_package,但该 debian 包似乎没有安装 cmake 包文件。

于 2017-07-30T18:32:44.320 回答
1

就我而言,我必须添加${WNCK_CFLAGS}toadd_definitions()${WNCK_LIBRARIES}to link_libraries()

于 2017-07-31T19:15:02.400 回答