我正在尝试编译一个由以下代码组成的基本 C++ 应用程序:
#include <unity/unity/unity.h>
int main()
{
return 0;
}
只是为了在开始对应用程序进行任何工作之前尝试libunity
编译库。我使用 QMake 来管理 makefile,如下所示:
######################################################################
# Automatically generated by qmake (2.01a) Mon Jan 2 16:33:26 2012
######################################################################
TEMPLATE = app
TARGET = unity-lens-test
CONFIG -= qt
unix {
CONFIG += link_pkgconfig
PKGCONFIG += glib-2.0
PKGCONFIG += dee-1.0
PKGCONFIG += libdbusmenu-0.4
}
LIBS += -lunity \
+= -lgtest
DEPENDPATH += . src
INCLUDEPATH += .
# Input
SOURCES += src/main.cpp
PKGCONFIG
我的问题在于块中的第三条指令unix{}
,指的是libdbusmenu-0.4
。当我尝试在此文件上运行时qmake
,出现以下错误:
Package libdbusmenu-0.4 was not found in the pkg-config search path.
Perhaps you should add the directory containing `libdbusmenu-0.4.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libdbusmenu-0.4' found
Package libdbusmenu-0.4 was not found in the pkg-config search path.
Perhaps you should add the directory containing `libdbusmenu-0.4.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libdbusmenu-0.4' found
Package libdbusmenu-0.4 was not found in the pkg-config search path.
Perhaps you should add the directory containing `libdbusmenu-0.4.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libdbusmenu-0.4' found
glib-2,0
当我添加或条目时,我从未遇到过此错误dee-1.0
。当我尝试不使用此选项进行编译时,命令qmake
成功,但 GCC 返回以下错误:
/usr/include/unity/unity/unity.h:15:37: fatal error: libdbusmenu-glib/client.h: No such file or directory
当我搜索此文件时,我发现它位于
/usr/include/libdbusmenu-0.4/libdbusmenu-glib/client.h
在这种情况下,我希望PKGCONFIG += libdbusmenu-0.4
解决这个问题,至少根据我对前两个选项的经验。
我已经安装了所有 libunity 构建依赖项,因此我不确定我还需要做什么才能完成编译。有什么特别之处libdbusmenu
需要不同的方法吗?问题出在我这边吗?我查看了自由摇摆注释,但其中没有关于编译的任何内容。
在此先感谢您的帮助。
答案1
您正在寻找错误的包配置文件。它应该是dbusmenu-glib-0.4
。
答案2
安装以下软件包:
sudo apt-get install libdbusmenu-glib-dev
sudo apt-get install libunity-dev