pahp.mqtt.cpp sample program compilation error

65 views
Skip to first unread message

Sarah

unread,
Apr 27, 2023, 8:40:19 AM4/27/23
to MQTT
Heloo

I have problem with compile sample program.

Inspiron-15-3552:~/paho.mqtt.cpp/src/samples$ g++ async_publish.cpp -o test
/usr/bin/ld : /tmp/ccFzFNrn.o : dans la fonction « main » :
async_publish.cpp:(.text+0x1a1) : référence indéfinie vers « mqtt::async_client::async_client(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) »
/usr/bin/ld : async_publish.cpp:(.text+0x1c9) : référence indéfinie vers « mqtt::async_client::set_callback(mqtt::callback&) »
/usr/bin/ld : async_publish.cpp:(.text+0x2e7) : référence indéfinie vers « mqtt::connect_options::connect_options(mqtt::connect_options const&) »
/usr/bin/ld : async_publish.cpp:(.text+0x307) : référence indéfinie vers « mqtt::async_client::connect(mqtt::connect_options) »
/usr/bin/ld : async_publish.cpp:(.text+0x46e) : référence indéfinie vers « mqtt::async_client::publish(std::shared_ptr<mqtt::message const>) »
/usr/bin/ld : async_publish.cpp:(.text+0x56e) : référence indéfinie vers « mqtt::async_client::publish(mqtt::buffer_ref<char>, void const*, unsigned long, int, bool) »
/usr/bin/ld : async_publish.cpp:(.text+0x7ee) : référence indéfinie vers « mqtt::async_client::publish(std::shared_ptr<mqtt::message const>, void*, mqtt::iaction_listener&) »
/usr/bin/ld : async_publish.cpp:(.text+0x97c) : référence indéfinie vers « mqtt::async_client::publish(std::shared_ptr<mqtt::message const>, void*, mqtt::iaction_listener&) »
/usr/bin/ld : async_publish.cpp:(.text+0xa25) : référence indéfinie vers « mqtt::async_client::get_pending_delivery_tokens() const »
/usr/bin/ld : async_publish.cpp:(.text+0xb85) : référence indéfinie vers « mqtt::async_client::~async_client() »
/usr/bin/ld : async_publish.cpp:(.text+0xf45) : référence indéfinie vers « mqtt::async_client::~async_client() »
/usr/bin/ld : /tmp/ccFzFNrn.o : dans la fonction « mqtt::exception::reason_code_str[abi:cxx11](int) » :
async_publish.cpp:(.text._ZN4mqtt9exception15reason_code_strB5cxx11Ei[_ZN4mqtt9exception15reason_code_strB5cxx11Ei]+0x32) : référence indéfinie vers « MQTTReasonCode_toString »
/usr/bin/ld : /tmp/ccFzFNrn.o : dans la fonction « mqtt::properties::~properties() » :
async_publish.cpp:(.text._ZN4mqtt10propertiesD2Ev[_ZN4mqtt10propertiesD5Ev]+0x18) : référence indéfinie vers « MQTTProperties_free »
/usr/bin/ld : /tmp/ccFzFNrn.o : dans la fonction « mqtt::message::message(mqtt::buffer_ref<char>, void const*, unsigned long) » :
async_publish.cpp:(.text._ZN4mqtt7messageC2ENS_10buffer_refIcEEPKvm[_ZN4mqtt7messageC5ENS_10buffer_refIcEEPKvm]+0x7f) : référence indéfinie vers « mqtt::message::message(mqtt::buffer_ref<char>, void const*, unsigned long, int, bool, mqtt::properties const&) »
/usr/bin/ld : /tmp/ccFzFNrn.o : dans la fonction « mqtt::message::create(mqtt::buffer_ref<char>, mqtt::buffer_ref<char>) » :
async_publish.cpp:(.text._ZN4mqtt7message6createENS_10buffer_refIcEES2_[_ZN4mqtt7message6createENS_10buffer_refIcEES2_]+0x4d) : référence indéfinie vers « mqtt::message::DFLT_RETAINED »
/usr/bin/ld : async_publish.cpp:(.text._ZN4mqtt7message6createENS_10buffer_refIcEES2_[_ZN4mqtt7message6createENS_10buffer_refIcEES2_]+0x54) : référence indéfinie vers « mqtt::message::DFLT_QOS »
/usr/bin/ld : /tmp/ccFzFNrn.o : dans la fonction « mqtt::connect_options::set_will_message(mqtt::message const&) » :
async_publish.cpp:(.text._ZN4mqtt15connect_options16set_will_messageERKNS_7messageE[_ZN4mqtt15connect_options16set_will_messageERKNS_7messageE]+0x3f) : référence indéfinie vers « mqtt::will_options::will_options(mqtt::message const&) »
/usr/bin/ld : async_publish.cpp:(.text._ZN4mqtt15connect_options16set_will_messageERKNS_7messageE[_ZN4mqtt15connect_options16set_will_messageERKNS_7messageE]+0x55) : référence indéfinie vers « mqtt::connect_options::set_will(mqtt::will_options&&) »
/usr/bin/ld : /tmp/ccFzFNrn.o : dans la fonction « mqtt::connect_options_builder::connect_options_builder() » :
async_publish.cpp:(.text._ZN4mqtt23connect_options_builderC2Ev[_ZN4mqtt23connect_options_builderC5Ev]+0x18) : référence indéfinie vers « mqtt::connect_options::connect_options() »
/usr/bin/ld : /tmp/ccFzFNrn.o : dans la fonction « mqtt::connect_options_builder::finalize() » :
async_publish.cpp:(.text._ZN4mqtt23connect_options_builder8finalizeEv[_ZN4mqtt23connect_options_builder8finalizeEv]+0x23) : référence indéfinie vers « mqtt::connect_options::connect_options(mqtt::connect_options const&) »
/usr/bin/ld : /tmp/ccFzFNrn.o : dans la fonction « mqtt::async_client::disconnect() » :
async_publish.cpp:(.text._ZN4mqtt12async_client10disconnectEv[_ZN4mqtt12async_client10disconnectEv]+0x49) : référence indéfinie vers « mqtt::disconnect_options::disconnect_options() »
/usr/bin/ld : /tmp/ccFzFNrn.o : dans la fonction « void __gnu_cxx::new_allocator<mqtt::message>::construct<mqtt::message, mqtt::buffer_ref<char>, mqtt::buffer_ref<char>, int const&, bool const&>(mqtt::message*, mqtt::buffer_ref<char>&&, mqtt::buffer_ref<char>&&, int const&, bool const&) » :
async_publish.cpp:(.text._ZN9__gnu_cxx13new_allocatorIN4mqtt7messageEE9constructIS2_JNS1_10buffer_refIcEES6_RKiRKbEEEvPT_DpOT0_[_ZN9__gnu_cxx13new_allocatorIN4mqtt7messageEE9constructIS2_JNS1_10buffer_refIcEES6_RKiRKbEEEvPT_DpOT0_]+0x108) : référence indéfinie vers « mqtt::message::message(mqtt::buffer_ref<char>, mqtt::buffer_ref<char>, int, bool, mqtt::properties const&) »
collect2: error: ld returned 1 exit status

can anyone help please ?
sarah

Dougie Lawson

unread,
Apr 27, 2023, 10:54:40 AM4/27/23
to mq...@googlegroups.com
Hi Sarah,

You need -lmosquitto -lmosquittopp as extra flags on your gcc call.

Regards, Dougie

--
To learn more about MQTT see https://mqtt.org
---
You received this message because you are subscribed to the Google Groups "MQTT" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mqtt+uns...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mqtt/3d4780e7-530c-42bf-b6d5-7bdad7ec2051n%40googlegroups.com.


--
Message has been deleted

Sarah

unread,
Apr 27, 2023, 12:01:12 PM4/27/23
to MQTT
Dear Dougie,
I tried to execute with -lmosquitto -lmosquittopp  flags and i get this error :

Inspiron-15-3552:~/paho.mqtt.cpp/src/samples$ g++ async_publish.cpp -o test -lmosquitto -lmosquittopp
/usr/bin/ld : ne peut trouver -lmosquitto
/usr/bin/ld : ne peut trouver -lmosquittopp

collect2: error: ld returned 1 exit status

Thanks a lot by the way.

Dougie Lawson

unread,
Apr 27, 2023, 3:04:21 PM4/27/23
to mq...@googlegroups.com
Hi Sarah,

You'll need to install those two libraries.
On Linux that's done with sudo apt update; sudo apt install libmosquitto1* libmosquittopp1* 

Regards, Dougie

--
To learn more about MQTT see https://mqtt.org
---
You received this message because you are subscribed to the Google Groups "MQTT" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mqtt+uns...@googlegroups.com.


--
Reply all
Reply to author
Forward
0 new messages