抱歉这个愚蠢的问题,但我真的不知道自己做错了什么。
我下载了这个回购:https://gitorious.org/gupnp/gupnp/source/ee436107df2ec2aa7ca619b47e2313557bb40d4e
它包含./example/目录中的简单示例和./libgupnp/目录中的一些标头。
一个例子包括gupnp.h
这一行:
#include <libgupnp/gupnp.h>
位于标题(./libgupnp/)目录中的 gupnp.h
。
我开始用gcc手动编译它并获取
light-server.c:12:28:致命错误:libgupnp / gupnp.h:没有这样的文件或 目录
好的,我安装了gupnp dev包
sudo apt-get install libgupnp-1.0-dev
现在gupnp.h也位于/usr/include/gupnp-1.0/libgupnp
我尝试使用
编译它gcc light-server.c -L / usr / include / gupnp-1.0 /
或
gcc light-server.c -llibgupnp
并采取相同的错误。
两个问题:
1)如何链接此标题?
2)如果我需要安装libgupnp-1.0-dev,或者我可以使用repo中带有样本的标题?
答案 0 :(得分:1)
从第二个问题开始,您可能不希望安装该开发包,因为您正在制作本地等效项。
您需要告诉gcc从库的本地副本中找到库的本地副本和标头的位置。我假设您已编译(./configure;make
),但未安装(make install
)。你需要向gcc提供指向./
如果你已经安装了它,你的-L和-I标志应指向你安装它的位置(可能分别是/ usr / local / lib和/ usr / local / include)