已安装 libwnck-3-dev 但仍然出现错误 libwnck.h

Installed libwnck-3-dev but still getting error about mising libwnck.h

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

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

这里是CmakeList.txt

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

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

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

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

It looks like libwnck uses packageconfig(很不幸),在这里安装一个PC文件 --> /usr/lib/x86_64-linux-gnu/pkgconfig/libwnck-3.0.pc.

稍微谷歌一下,it looks like you can use package config modules from cmake:

pkg_search_module(<PREFIX> [REQUIRED] [QUIET] <MODULE> [<MODULE>]*) checks for given modules and uses the first working one

所以也许是这样的:

pkg_search_module(REQUIRED libwnck)

或:

pkg_search_module(REQUIRED libwnck-3.0)

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

在我的例子中,我必须将 ${WNCK_CFLAGS} 添加到 add_definitions() 并将 ${WNCK_LIBRARIES} 添加到 link_libraries()