首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用libmosquitto进行编译

如何使用libmosquitto进行编译
EN

Stack Overflow用户
提问于 2013-10-31 21:06:14
回答 1查看 11K关注 0票数 4

我正在尝试编译website网站(在底部)上提供的代码示例:http://mosquitto.org/man/libmosquitto-3.html

我使用的是Ubuntu12.04,并且我已经安装了libmosquitto1和libeyto1-dev包。在安装它们之前,我将蚊子添加到存储库:

代码语言:javascript
复制
sudo apt-add-repository ppa:mosquitto-dev/mosquitto-ppa
sudo apt-get update

我正在尝试编译这个示例,如下所示:

代码语言:javascript
复制
gcc -lmosquitto mosquito.c -o mosquito

但是我得到了以下错误:

代码语言:javascript
复制
/tmp/cc6eU8kw.o: In function `my_connect_callback':
mosquito.c:(.text+0xf8): undefined reference to `mosquitto_subscribe'
/tmp/cc6eU8kw.o: In function `main':
mosquito.c:(.text+0x298): undefined reference to `mosquitto_lib_init'
mosquito.c:(.text+0x2b4): undefined reference to `mosquitto_new'
mosquito.c:(.text+0x310): undefined reference to `mosquitto_log_callback_set'
mosquito.c:(.text+0x324): undefined reference to `mosquitto_connect_callback_set'
mosquito.c:(.text+0x338): undefined reference to `mosquitto_message_callback_set'
mosquito.c:(.text+0x34c): undefined reference to `mosquitto_subscribe_callback_set'
mosquito.c:(.text+0x364): undefined reference to `mosquitto_connect'
mosquito.c:(.text+0x3b4): undefined reference to `mosquitto_loop'
mosquito.c:(.text+0x3c8): undefined reference to `mosquitto_destroy'
mosquito.c:(.text+0x3d0): undefined reference to `mosquitto_lib_cleanup'
collect2: ld returned 1 exit status

有人能给我一些关于如何编译这个简单示例的提示吗?谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-10-31 23:14:03

你必须把-lmosquitto放在最后(在源文件之后)。

代码语言:javascript
复制
gcc mosquito.c -lmosquitto -o mosquito
# or
gcc mosquito.c -o mosquito -lmosquitto
# or
gcc -o mosquito mosquito.c -lmosquitto

或者更好:

代码语言:javascript
复制
gcc -Wall -Wextra -pedantic -o mosquito mosquito.c -lmosquitto
票数 12
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19707329

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档