eclipse / paho.mqtt-sn.embedded-c

Paho C MQTT-SN gateway and libraries for embedded systems. Paho is an Eclipse IoT project.
https://eclipse.org/paho
Other
313 stars 179 forks source link

some compile issues #239

Closed vortex314 closed 3 years ago

vortex314 commented 3 years ago

Issue 1

int MQTTSN::Client<Network, Timer, MAX_PACKET_SIZE, MAX_MESSAGE_HANDLERS>::subscribe(MQTTSN_topicid& topicFilter, enum QoS qos, messageHandler messageHandler)
{
    int rc = FAILURE;
    Timer timer = Timer(command_timeout_ms);
    int len = 0;

    if (!isconnected)
        goto exit;

    bool freeHandler = false;
    for (int i = 0; i < MAX_MESSAGE_HANDLERS; ++i)

ERROR

/home/lieven/workspace/mqtt-sn/../paho.mqtt-sn.embedded-c/MQTTSNClient/src/MQTTSNClient.h: In member function ‘int MQTTSN::Client<Network, Timer, MAX_PACKET_SIZE, MAX_MESSAGE_HANDLERS>::subscribe(MQTTSN_topicid&, MQTTSN::QoS, MQTTSN::Client<Network, Timer, MAX_PACKET_SIZE, MAX_MESSAGE_HANDLERS>::messageHandler)’:
/home/lieven/workspace/mqtt-sn/../paho.mqtt-sn.embedded-c/MQTTSNClient/src/MQTTSNClient.h:764:1: error: jump to label ‘exit’
  764 | exit:
      | ^~~~
/home/lieven/workspace/mqtt-sn/../paho.mqtt-sn.embedded-c/MQTTSNClient/src/MQTTSNClient.h:717:14: note:   from here
  717 |         goto exit;
      |              ^~~~
/home/lieven/workspace/mqtt-sn/../paho.mqtt-sn.embedded-c/MQTTSNClient/src/MQTTSNClient.h:719:10: note:   crosses initialization of ‘bool freeHandler’
  719 |     bool freeHandler = false;
      |          ^~~~~~~~~~~

Issue 2

/home/lieven/workspace/mqtt-sn/../paho.mqtt-sn.embedded-c/MQTTSNClient/src/MQTTSNClient.h:704:5: error: ‘MQTTPacket_connectData’ was not declared in this scope; did you mean ‘MQTTSNPacket_connectData’?
  704 |     MQTTPacket_connectData default_options = MQTTPacket_connectData_initializer;
      |     ^~~~~~~~~~~~~~~~~~~~~~
      |     MQTTSNPacket_connectData
/home/lieven/workspace/mqtt-sn/../paho.mqtt-sn.embedded-c/MQTTSNClient/src/MQTTSNClient.h:705:20: error: ‘default_options’ was not declared in this scope
  705 |     return connect(default_options);

Doing a grep over all sources didn't find MQTTPacket_connectData..

lieven@pcpro:~/workspace/paho.mqtt-sn.embedded-c$ grep -r MQTTPacket_connectData .
./MQTTSNClient/src/MQTTSNClient.h:    MQTTPacket_connectData default_options = MQTTPacket_connectData_initializer;
./MQTTSNPacket/samples/IBMIoTUDPExample.cpp:    MQTTPacket_connectData data = MQTTPacket_connectData_initializer;
./MQTTSNGateway/src/MQTTGWPacket.h:#define MQTTPacket_connectData_initializer { {'M', 'Q', 'T', 'C'}, 0, 4, {NULL, {0, NULL}}, 60, 1, 0, \
lieven@pcpro:~/workspace/paho.mqtt-sn.embedded-c$ 
ty4tw commented 3 years ago

Hi,

The README states that MQTTSNClient - high(er) level C++ client (not yet complete)

vortex314 commented 3 years ago

That's a pity. Thanks.