Ниже приведена структура моего проекта,
root@user-VirtualBox:/home/user/octane_etk_sample-6.0.0.240# ls
bin include paho.mqtt.c speedway_embedded_example.cpp
cap lib paho.mqtt.cpp VERSION
cap_description.in Makefile SCMREV
У меня есть пакет paho.mqtt. cpp внутри каталога проекта, т.е. octane_etk_sample-6.0.0.240, и я установил все упомянутые шаги в https://github.com/eclipse/paho.mqtt.cpp.
Теперь я включил заголовочный файл MQTTAsyn c в speedway_embedded_example. cpp, как показано ниже,
#include <iostream>
#include <string>
#include <algorithm>
#include <signal.h>
#include <stdio.h>
#include <cstdlib>
#include "ltkcpp.h"
#include "impinj_ltkcpp.h"
#include "time.h"
#include "/home/user/octane_etk_sample-6.0.0.240/paho.mqtt.c/src/MQTTAsync.h"
После включения файл заголовка, я пытаюсь установить sh клиентское соединение MQTT внутри класса publi c,
void
CMyApplication::printOneTagReportData (
CTagReportData * pTagReportData)
{
string address = "tcp://mqtt1.mindlogic.com:1883";
cout << "OK\n" << address;
mqtt::async_client cli(address, "", 120, "data-persist");
}
Когда я пытаюсь создать файл speedway_embedded_example, я получаю ошибку ниже,
root@user-VirtualBox:/home/mindlogic/octane_etk_sample-6.0.0.240# make
mkdir -p ./bin
g++ \
-m32 -Wno-write-strings \
-Iinclude \
speedway_embedded_example.cpp \
-Llib -lltkcpp_x86 -lltkcppimpinj_x86 -lxml2_x86 \
-L/usr/bin -ldl -lssl -lcrypto \
-o bin/speedwayr_x86
speedway_embedded_example.cpp: In member function ‘void CMyApplication::printOneTagReportData(LLRP::CTagReportData*)’:
speedway_embedded_example.cpp:1650:4: error: ‘mqtt’ has not been declared
mqtt::async_client cli(address, "", 120, "data-persist");
Кто-нибудь поможет мне установить sh клиентское соединение в вышеупомянутом сценарии?