我希望我的问题很容易解决。我应该在我的Raspberry Pi v2中使用mqtt协议,所以现在我正在使用Paho库:
我使用C++语言,所以我首先编写了以下命令
git clone http://git.eclipse.org/gitroot/paho/org.eclipse.paho.mqtt.c.git
cd org.eclipse.paho.mqtt.c.git
make
sudo make install
然后这些
git clone http://git.eclipse.org/gitroot/paho/org.eclipse.paho.mqtt.cpp.git
cd org.eclipse.paho.mqtt.cpp.git
make
现在我有两个问题:
mqtt::client
。我尝试过包含client.h
(我在文档中找到了它),但是编译器没有找到它。lib/linmqttpp.so.0.1
的make命令。我必须将它链接到编译命令中吗?多么?发布于 2015-11-15 14:46:04
目前,在paho c++中的git项目中,它没有为新用户正确构建。当您执行make操作时,它会创建一个空的c++库,这样链接到的任何代码都会在未定义的方法中失败。您可以通过运行此命令来检查库中可用的内容。
nm -g lib/linmqttpp.so.0.1
你会发现它是空的。
另外,如果您从网站复制并传递了示例代码,那么它将无法工作。除了网站上的代码外,它还需要其他代码。它只是给了你一个代码片段。
示例代码位于此目录中。src/samples
当前,示例文件的make文件将失败。
我刚刚向项目提交了一个修补程序,以修复主构建和示例文件构建。一旦应用了该程序,项目将正确构建,您就可以开始侵入示例文件。
关于C++项目,因为在make文件中没有目标来执行安装,所以没有安装它。如果您现在想用sudo权限将lib中创建的文件复制到下面。/usr/local/lib/
然后,您可以从任何项目访问共享库。
https://stackoverflow.com/questions/32632617
复制相似问题