Mqtt clientid unique issue

Please provide complete information as applicable to your setup.

**• Hardware Platform (Jetson / GPU)**Jetson
• DeepStream Version 6.3
• JetPack Version (valid for Jetson only) 5.1.2
• TensorRT Version
• NVIDIA GPU Driver Version (valid for GPU only)
• Issue Type( questions, new requirements, bugs)
• How to reproduce the issue ? (This is for bugs. Including which sample app is using, the configuration files content, the command line used and other details for reproducing)
• Requirement details( This is for new requirement. Including the module name-for which plugin or for which sample application, the function description)

I just follow this topic, and I want to know where I can get the source code and how I recomplile it. I also meet the same issue.

mqtt clientid issue

libnvds_mqtt_proto.so source code is not opensource. please refer to this link for customizing MQTT protocol adapter.

It seems deepstream 6.3 doesn’t support to configure client-id, and 6.4 can support that. If I want to copy libnvds_mqtt_proto.so from 6.4 to 6.3, is it feasible what else I shall do changes?

Please provide complete information as applicable to your setup.

• Hardware Platform (Jetson / GPU)

• DeepStream Version

• JetPack Version (valid for Jetson only)

• TensorRT Version

• NVIDIA GPU Driver Version (valid for GPU only)

• Issue Type( questions, new requirements, bugs)

• How to reproduce the issue ? (This is for bugs. Including which sample app is using, the configuration files content, the command line used and other details for reproducing)

• Requirement details( This is for new requirement. Including the module name-for which plugin or for which sample application, the function description)

Jetson
Deepstream 6.3
JetPack 5.1.2

you can copy the so and configuration file to try.

It fails during legacy_gst_nvmsgbroker_start. So I am blocked.

you can use /opt/nvidia/deepstream/deepstream/sources/libs/mqtt_protocol_adaptor/test_mqtt_proto_async.cpp to to test. it is a so test tool. please refer to the readme and the topic in the issue description.

It seems 6.4 so file can’t be executed on JetPack 5.1.2. It there other workaround to handle this client id issue?

  1. could you share the result of “ldd test_mqtt_proto_async”?
  2. client-id is not configurable on DS6.3. you can upgrade to DS6.4 or customize protocol adapter.
nvidia@miivii-tegra:/opt/nvidia/deepstream/deepstream-6.3/sources/libs/mqtt_protocol_adaptor$ ldd test_mqtt_proto_async                                                                              linux-vdso.so.1 (0x0000ffffb9ec8000)
        libdl.so.2 => /lib/aarch64-linux-gnu/libdl.so.2 (0x0000ffffb9e4c000)
        libstdc++.so.6 => /lib/aarch64-linux-gnu/libstdc++.so.6 (0x0000ffffb9c67000)
        libgcc_s.so.1 => /lib/aarch64-linux-gnu/libgcc_s.so.1 (0x0000ffffb9c43000)
        libpthread.so.0 => /lib/aarch64-linux-gnu/libpthread.so.0 (0x0000ffffb9c12000)
        libc.so.6 => /lib/aarch64-linux-gnu/libc.so.6 (0x0000ffffb9a9f000)
        /lib/ld-linux-aarch64.so.1 (0x0000ffffb9e98000)
        libm.so.6 => /lib/aarch64-linux-gnu/libm.so.6 (0x0000ffffb99f4000)

because of the jetson device limition, I can only use DS 6.3. And about customize protocol adapter, it seems much difficult for me if there is no example.

it seems that dlopen so failed. could you share the result of “ldd /opt/nvidia/deepstream/deepstream/lib/libnvds_mqtt_proto.so” ? please execute “export LD_LIBRARY_PATH=/opt/nvidia/deepstream/deepstream/lib/:$LD_LIBRARY_PATH” , then try again.

nvidia@miivii-tegra:/opt/nvidia/deepstream/deepstream-6.3/lib$ cp libnvds_mqtt_proto.so libnvds_mqtt_proto.so.6.3
nvidia@miivii-tegra:/opt/nvidia/deepstream/deepstream-6.3/lib$ ldd libnvds_mqtt_proto.so.6.3
        linux-vdso.so.1 (0x0000ffff87207000)
        libglib-2.0.so.0 => /lib/aarch64-linux-gnu/libglib-2.0.so.0 (0x0000ffff8705e000)
        libmosquitto.so.1 => /usr/local/lib/libmosquitto.so.1 (0x0000ffff87035000)
        libcrypto.so.1.1 => /lib/aarch64-linux-gnu/libcrypto.so.1.1 (0x0000ffff86da2000)
        libnvds_logger.so (0x0000ffff86d90000)
        libstdc++.so.6 => /lib/aarch64-linux-gnu/libstdc++.so.6 (0x0000ffff86bab000)
        libpthread.so.0 => /lib/aarch64-linux-gnu/libpthread.so.0 (0x0000ffff86b7a000)
        libc.so.6 => /lib/aarch64-linux-gnu/libc.so.6 (0x0000ffff86a07000)
        /lib/ld-linux-aarch64.so.1 (0x0000ffff871d7000)
        libgcc_s.so.1 => /lib/aarch64-linux-gnu/libgcc_s.so.1 (0x0000ffff869e3000)
        libpcre.so.3 => /lib/aarch64-linux-gnu/libpcre.so.3 (0x0000ffff86971000)
        libssl.so.1.1 => /lib/aarch64-linux-gnu/libssl.so.1.1 (0x0000ffff868d7000)
        libdl.so.2 => /lib/aarch64-linux-gnu/libdl.so.2 (0x0000ffff868c3000)
        libm.so.6 => /lib/aarch64-linux-gnu/libm.so.6 (0x0000ffff86818000)
nvidia@miivii-tegra:/opt/nvidia/deepstream/deepstream-6.3/lib$ cp /opt/nvidia/deepstream/deepstream-6.4/lib/libnvds_mqtt_proto.so libnvds_mqtt_proto.so.6.4
nvidia@miivii-tegra:/opt/nvidia/deepstream/deepstream-6.3/lib$ ldd libnvds_mqtt_proto.so.6.4
./libnvds_mqtt_proto.so.6.4: /lib/aarch64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by ./libnvds_mqtt_proto.so.6.4)
        linux-vdso.so.1 (0x0000ffff914b5000)
        libglib-2.0.so.0 => /lib/aarch64-linux-gnu/libglib-2.0.so.0 (0x0000ffff9130b000)
        libmosquitto.so.1 => /usr/local/lib/libmosquitto.so.1 (0x0000ffff912e2000)
        libcrypto.so.3 => not found
        libnvds_logger.so (0x0000ffff912d0000)
        libstdc++.so.6 => /lib/aarch64-linux-gnu/libstdc++.so.6 (0x0000ffff910eb000)
        libc.so.6 => /lib/aarch64-linux-gnu/libc.so.6 (0x0000ffff90f78000)
        /lib/ld-linux-aarch64.so.1 (0x0000ffff91485000)
        libgcc_s.so.1 => /lib/aarch64-linux-gnu/libgcc_s.so.1 (0x0000ffff90f54000)
        libpcre.so.3 => /lib/aarch64-linux-gnu/libpcre.so.3 (0x0000ffff90ee2000)
        libpthread.so.0 => /lib/aarch64-linux-gnu/libpthread.so.0 (0x0000ffff90eb1000)
        libssl.so.1.1 => /lib/aarch64-linux-gnu/libssl.so.1.1 (0x0000ffff90e17000)
        libcrypto.so.1.1 => /lib/aarch64-linux-gnu/libcrypto.so.1.1 (0x0000ffff90b84000)
        libm.so.6 => /lib/aarch64-linux-gnu/libm.so.6 (0x0000ffff90ad9000)
        libdl.so.2 => /lib/aarch64-linux-gnu/libdl.so.2 (0x0000ffff90ac5000)
nvidia@miivii-tegra:/opt/nvidia/deepstream/deepstream-6.3/lib$

Shall I upgrade GLIBCXX? And how to do this?

it seems that GLIBC and libcrypto.so.3 are not found. Currently I suggest upgrading to DS6.4 or customizing protocol adapter.

I can’t migrate to DS6.4 I also have to recompile the mqtt adaptor. It is fixed now.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.