У меня есть образец. cpp файла, из которого вызывается MQTT-клиент, который находится в другом файле
#include <iostream>
using namespace std;
extern "C" {
#include "pub.c"
}
int main()
{
payload = 1111
sendMQTT(payload)
}
Файл pub. c выглядит следующим образом
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "MQTTClient.h"
void sendMQTT(int payload){
MQTTClient client;
MQTTClient_connectOptions conn_opts = MQTTClient_connectOptions_initializer;
MQTTClient_message pubmsg = MQTTClient_message_initializer;
MQTTClient_deliveryToken token;
MQTTClient_create(&client, "tcp://mqtt1.mindlogic.com:1883", "ExampleClientPub",MQTTCLIENT_PERSISTENCE_NONE, NULL);
}
когда я запускаю образец файла. cpp, используя команду,
g++ sample.cpp
Может кто-нибудь помочь мне разобраться в чем здесь проблема?
Я получаю следующую ошибку,
undefined reference to `MQTTClient_create'
collect2: error: ld returned 1 exit status
Это библиотека Paho, которую я использовал https://github.com/eclipse/paho.mqtt.cpp