Cgf tool nodedescriptor: Failed to dlopen cannot open shared object file: No such file or directory

Please provide the following info (tick the boxes after creating this topic):
Software Version
DRIVE OS 6.0.8.1

Target Operating System
Linux

Hardware Platform
DRIVE AGX Orin Developer Kit (940-63710-0010-300)

Host Machine Version
native Ubuntu Linux 20.04 Host installed with DRIVE OS Docker Containers

Is any one had similar problem? where i tryed to create my own CGF example the compiled lib is not recognized by nodedescriptor tool,

I am able to run hello world cgf example compiled so, but not the my own example.

this is the error i get “Failed to dlopen ‘libcgf_custom_nodes_test.so’: libcgf_custom_nodes_test.so: cannot open shared object file: No such file or directory

src.zip (9.4 KB)

Any suggestions? thank you.

Dear @sushant.bahadure,
Could you share the followed steps?

steps I followed were as follows

  1. created .json files using dw cgf ui tool
  2. modified impl.cpp and impl.hpp for adding logic similar to helloworld cgf example
  3. copiled using cmake -B /mydir/build -DCMAKE_TOOLCHAIN_FILE=/usr/local/driveworks/s
    amples/cmake/Toolchain-V5L.cmake /mydir1/mydir2/samples/
  4. after .so is generated i tried to use nodedescriptor tool ./nodedescriptor /path_till_libfile/libcgf_custom_nodes_test.so or /usr…/tools/nodedescriptor/nodedescriptor ibcgf_custom_nodes_test.so

error states nodedescriptor is not able to find .so

Hi @SivaRamaKrishnaNV an gentle reminder, If you need anything more please let me know. Thank you.

Dear @sushant.bahadure ,
Could you remove the -DCMAKE_TOOLCHAIN_FILE from the compile command. it generates shared object for aarch64 and you are trying to load it on x86.

root@6.0.8.1-0006-build-linux-sdk:/home/nvidia/Topic-273203/build# cmake -B /home/nvidia/Topic-273203/build/ /usr/local/driveworks/samples/
-- The C compiler identification is GNU 9.4.0
-- The CXX compiler identification is GNU 9.4.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- The CUDA compiler identification is NVIDIA 11.4.409
-- Check for working CUDA compiler: /usr/local/cuda/bin/nvcc
-- Check for working CUDA compiler: /usr/local/cuda/bin/nvcc -- works
-- Detecting CUDA compiler ABI info
-- Detecting CUDA compiler ABI info - done
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.1")
-- Found EGL: /usr/lib/x86_64-linux-gnu/libEGL.so
-- Found /usr/lib/x86_64-linux-gnu/libEGL.so:
--  - Includes: [/usr/include]
--  - Libraries: [/usr/lib/x86_64-linux-gnu/libEGL.so]
-- DW_EXPERIMENTAL_FORCE_EGL not set, EGL Support Disabled
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Performing Test C_COMPILER_FLAG_FNO_OMIT_FRAME_POINTER
-- Performing Test C_COMPILER_FLAG_FNO_OMIT_FRAME_POINTER - Success
-- Performing Test CXX_COMPILER_FLAG_FNO_OMIT_FRAME_POINTER
-- Performing Test CXX_COMPILER_FLAG_FNO_OMIT_FRAME_POINTER - Success
-- Performing Test C_COMPILER_FLAG_FNO_TREE_VECTORIZE
-- Performing Test C_COMPILER_FLAG_FNO_TREE_VECTORIZE - Success
-- Performing Test CXX_COMPILER_FLAG_FNO_TREE_VECTORIZE
-- Performing Test CXX_COMPILER_FLAG_FNO_TREE_VECTORIZE - Success
-- Performing Test C_COMPILER_FLAG_FSTACK_PROTECTOR_STRONG
-- Performing Test C_COMPILER_FLAG_FSTACK_PROTECTOR_STRONG - Success
-- Performing Test CXX_COMPILER_FLAG_FSTACK_PROTECTOR_STRONG
-- Performing Test CXX_COMPILER_FLAG_FSTACK_PROTECTOR_STRONG - Success
-- Performing Test CXX_COMPILER_FLAG_WERROR_ALL
-- Performing Test CXX_COMPILER_FLAG_WERROR_ALL - Success
-- Building GLFW for X11 (static)
-- Found X11: /usr/include
-- Looking for XOpenDisplay in /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so
-- Looking for XOpenDisplay in /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Looking for IceConnectionNumber in ICE
-- Looking for IceConnectionNumber in ICE - found
-- **** Samples will be installed to `/home/nvidia/Topic-273203/build/install/usr/local/driveworks/samples/bin' on the host filesystem. ****
-- Found CUDART: /usr/local/cuda/targets/x86_64-linux/include
-- Found cuBLAS: /usr/local/cuda/targets/x86_64-linux/include
-- Found NvSCI: /usr/include
-- Found cuDNN: /usr/include (found version "8.9.2")
-- Found TensorRT: /usr/include/x86_64-linux-gnu (found version "8.6.11.4")
-- Found 'dw/core/base/Version.h' in /usr/local/driveworks-5.14/targets/x86_64-Linux/include
-- Found dwtrace library in /usr/local/driveworks-5.14/targets/x86_64-Linux/lib/libdwtrace.so
-- Found 'dw/core/base/Version.h' in /usr/local/driveworks-5.14/targets/x86_64-Linux/include
-- Found dw_base library in /usr/local/driveworks-5.14/targets/x86_64-Linux/lib/libdw_base.so
-- Found 'dw/core/base/Version.h' in /usr/local/driveworks-5.14/targets/x86_64-Linux/include
-- Found dw_calibration library in /usr/local/driveworks-5.14/targets/x86_64-Linux/lib/libdw_calibration.so
-- Found 'dw/core/base/Version.h' in /usr/local/driveworks-5.14/targets/x86_64-Linux/include
-- Found dw_egomotion library in /usr/local/driveworks-5.14/targets/x86_64-Linux/lib/libdw_egomotion.so
-- Found 'dw/core/base/Version.h' in /usr/local/driveworks-5.14/targets/x86_64-Linux/include
-- Found dw_imageprocessing library in /usr/local/driveworks-5.14/targets/x86_64-Linux/lib/libdw_imageprocessing.so
-- Found 'dw/core/base/Version.h' in /usr/local/driveworks-5.14/targets/x86_64-Linux/include
-- Found dw_pointcloudprocessing library in /usr/local/driveworks-5.14/targets/x86_64-Linux/lib/libdw_pointcloudprocessing.so
-- Found 'dw/core/base/Version.h' in /usr/local/driveworks-5.14/targets/x86_64-Linux/include
-- Found dw_sensors library in /usr/local/driveworks-5.14/targets/x86_64-Linux/lib/libdw_sensors.so
-- Found 'dw/core/base/Version.h' in /usr/local/driveworks-5.14/targets/x86_64-Linux/include
-- Found dw_vehicleio library in /usr/local/driveworks-5.14/targets/x86_64-Linux/lib/libdw_vehicleio.so
-- Found 'dw/core/base/Version.h' in /usr/local/driveworks-5.14/targets/x86_64-Linux/include
-- Found dw_dnn_base library in /usr/local/driveworks-5.14/targets/x86_64-Linux/lib/libdw_dnn_base.so
-- Found 'dwvisualization/core/Visualization.h' in /usr/local/driveworks-5.14/targets/x86_64-Linux/include
-- Found driveworks_visualization library in /usr/local/driveworks-5.14/targets/x86_64-Linux/lib/libdriveworks_visualization.so
-- Found 'dwvisualization/core/Visualization.h' in /usr/local/driveworks-5.14/targets/x86_64-Linux/include
-- Found 'dw/core/base/Version.h' in /usr/local/driveworks-5.14/targets/x86_64-Linux/include
-- Found dwshared library in /usr/local/driveworks-5.14/targets/x86_64-Linux/lib/libdwshared.so
-- Found 'dw/core/DynamicMemory.h' in /usr/local/driveworks-5.14/targets/x86_64-Linux/include
-- Found dwdynamicmemory library in /usr/local/driveworks-5.14/targets/x86_64-Linux/lib/libdwdynamicmemory.so
-- Found 'dwframework/dwnodes/common/factories/DWChannelFactory.hpp' in /usr/local/driveworks-5.14/targets/x86_64-Linux/include
-- Found 'dwcgf/channel/ChannelFactory.hpp' in /usr/local/driveworks-5.14/targets/x86_64-Linux/include
-- Found 'modern-json/json.hpp' in /usr/local/driveworks-5.14/targets/x86_64-Linux/include/3rdparty
-- Found dwpbwire library in /usr/local/driveworks-5.14/targets/x86_64-Linux/lib/libdwpbwire.so
-- Found 'dwframework/dwnodes/common/factories/DWChannelFactory.hpp' in /usr/local/driveworks-5.14/targets/x86_64-Linux/include
-- Found 'dwcgf/channel/ChannelFactory.hpp' in /usr/local/driveworks-5.14/targets/x86_64-Linux/include
-- Found 'modern-json/json.hpp' in /usr/local/driveworks-5.14/targets/x86_64-Linux/include/3rdparty
-- Found dwcgf library in /usr/local/driveworks-5.14/targets/x86_64-Linux/lib/libdwcgf.so
-- Found 'dwframework/dwnodes/common/factories/DWChannelFactory.hpp' in /usr/local/driveworks-5.14/targets/x86_64-Linux/include
-- Found 'dwcgf/channel/ChannelFactory.hpp' in /usr/local/driveworks-5.14/targets/x86_64-Linux/include
-- Found 'modern-json/json.hpp' in /usr/local/driveworks-5.14/targets/x86_64-Linux/include/3rdparty
-- Found dwframework_dwnodes library in /usr/local/driveworks-5.14/targets/x86_64-Linux/lib/libdwframework_dwnodes.so
-- Found 'dwframework/dwnodes/common/factories/DWChannelFactory.hpp' in /usr/local/driveworks-5.14/targets/x86_64-Linux/include
-- Found 'dwcgf/channel/ChannelFactory.hpp' in /usr/local/driveworks-5.14/targets/x86_64-Linux/include
-- Found 'modern-json/json.hpp' in /usr/local/driveworks-5.14/targets/x86_64-Linux/include/3rdparty
-- Found dwframework_dwnodes_channel_packets library in /usr/local/driveworks-5.14/targets/x86_64-Linux/lib/libdwframework_dwnodes_channel_packets.so
-- Found 'dwframework/dwnodes/common/factories/DWChannelFactory.hpp' in /usr/local/driveworks-5.14/targets/x86_64-Linux/include
-- Found 'dwcgf/channel/ChannelFactory.hpp' in /usr/local/driveworks-5.14/targets/x86_64-Linux/include
-- Found 'modern-json/json.hpp' in /usr/local/driveworks-5.14/targets/x86_64-Linux/include/3rdparty
-- Found dwroadcast-frontend library in /usr/local/driveworks-5.14/targets/x86_64-Linux/lib/libdwroadcast-frontend.so
-- Configuring done
-- Generating done
-- Build files have been written to: /home/nvidia/Topic-273203/build
root@6.0.8.1-0006-build-linux-sdk:/home/nvidia/Topic-273203/build# ls
3rdparty  CMakeCache.txt  CMakeFiles  Makefile  cmake_install.cmake  src
root@6.0.8.1-0006-build-linux-sdk:/home/nvidia/Topic-273203/build# make
Scanning dependencies of target lodepng-src
[  1%] Building CXX object 3rdparty/src/lodepng/CMakeFiles/lodepng-src.dir/src/lodepng.cpp.o
[  3%] Linking CXX static library liblodepng-src.a
[  3%] Built target lodepng-src
Scanning dependencies of target glfw-x11
[  5%] Building C object 3rdparty/src/glfw/CMakeFiles/glfw-x11.dir/3.2-screen/src/context.c.o
[  7%] Building C object 3rdparty/src/glfw/CMakeFiles/glfw-x11.dir/3.2-screen/src/init.c.o
[  9%] Building C object 3rdparty/src/glfw/CMakeFiles/glfw-x11.dir/3.2-screen/src/input.c.o
[ 11%] Building C object 3rdparty/src/glfw/CMakeFiles/glfw-x11.dir/3.2-screen/src/monitor.c.o
[ 13%] Building C object 3rdparty/src/glfw/CMakeFiles/glfw-x11.dir/3.2-screen/src/vulkan.c.o
[ 15%] Building C object 3rdparty/src/glfw/CMakeFiles/glfw-x11.dir/3.2-screen/src/window.c.o
[ 16%] Building C object 3rdparty/src/glfw/CMakeFiles/glfw-x11.dir/3.2-screen/src/x11_init.c.o
[ 18%] Building C object 3rdparty/src/glfw/CMakeFiles/glfw-x11.dir/3.2-screen/src/x11_monitor.c.o
[ 20%] Building C object 3rdparty/src/glfw/CMakeFiles/glfw-x11.dir/3.2-screen/src/x11_window.c.o
[ 22%] Building C object 3rdparty/src/glfw/CMakeFiles/glfw-x11.dir/3.2-screen/src/xkb_unicode.c.o
[ 24%] Building C object 3rdparty/src/glfw/CMakeFiles/glfw-x11.dir/3.2-screen/src/linux_joystick.c.o
[ 26%] Building C object 3rdparty/src/glfw/CMakeFiles/glfw-x11.dir/3.2-screen/src/posix_time.c.o
[ 28%] Building C object 3rdparty/src/glfw/CMakeFiles/glfw-x11.dir/3.2-screen/src/posix_tls.c.o
[ 30%] Building C object 3rdparty/src/glfw/CMakeFiles/glfw-x11.dir/3.2-screen/src/glx_context.c.o
[ 32%] Building C object 3rdparty/src/glfw/CMakeFiles/glfw-x11.dir/3.2-screen/src/egl_context.c.o
[ 32%] Built target glfw-x11
Scanning dependencies of target glfw-src
[ 33%] Linking C shared library libglfw.so
[ 33%] Built target glfw-src
Scanning dependencies of target glew-src
[ 35%] Building C object 3rdparty/src/glew/CMakeFiles/glew-src.dir/src/glew.c.o
[ 37%] Linking C shared library libglew.so
[ 37%] Built target glew-src
Scanning dependencies of target samples_allocator
[ 39%] Building CXX object src/framework/CMakeFiles/samples_allocator.dir/Allocator.cpp.o
[ 41%] Linking CXX static library libsamples_allocator.a
[ 41%] Built target samples_allocator
Scanning dependencies of target samples_framework
[ 43%] Building CXX object src/framework/CMakeFiles/samples_framework.dir/CameraFramePipeline.cpp.o
[ 45%] Building CXX object src/framework/CMakeFiles/samples_framework.dir/DriveWorksSample.cpp.o
[ 47%] Building CXX object src/framework/CMakeFiles/samples_framework.dir/DriveWorksSampleSeek.cpp.o
[ 49%] Building CXX object src/framework/CMakeFiles/samples_framework.dir/Grid.cpp.o
[ 50%] Building CXX object src/framework/CMakeFiles/samples_framework.dir/Log.cpp.o
[ 52%] Building CXX object src/framework/CMakeFiles/samples_framework.dir/MathUtils.cpp.o
[ 54%] Building CXX object src/framework/CMakeFiles/samples_framework.dir/MouseView3D.cpp.o
[ 56%] Building CXX object src/framework/CMakeFiles/samples_framework.dir/ProfilerCUDA.cpp.o
[ 58%] Building CXX object src/framework/CMakeFiles/samples_framework.dir/ProgramArguments.cpp.o
[ 60%] Building CXX object src/framework/CMakeFiles/samples_framework.dir/RenderUtils.cpp.o
[ 62%] Building CXX object src/framework/CMakeFiles/samples_framework.dir/SampleFramework.cpp.o
[ 64%] Building CXX object src/framework/CMakeFiles/samples_framework.dir/SamplesDataPath.cpp.o
[ 66%] Building CXX object src/framework/CMakeFiles/samples_framework.dir/ScreenshotHelper.cpp.o
[ 67%] Building CXX object src/framework/CMakeFiles/samples_framework.dir/SimpleCamera.cpp.o
[ 69%] Building CXX object src/framework/CMakeFiles/samples_framework.dir/SimpleRecordingPlayer.cpp.o
[ 71%] Building CXX object src/framework/CMakeFiles/samples_framework.dir/SimpleRenderer.cpp.o
[ 73%] Building CXX object src/framework/CMakeFiles/samples_framework.dir/Window.cpp.o
[ 75%] Building CXX object src/framework/CMakeFiles/samples_framework.dir/WindowGLFW.cpp.o
[ 77%] Linking CXX static library libsamples_framework.a
[ 77%] Built target samples_framework
Scanning dependencies of target sample_dataspeedBridge
[ 79%] Building CXX object src/dataspeedBridge/CMakeFiles/sample_dataspeedBridge.dir/main.cpp.o
[ 81%] Linking CXX executable sample_dataspeedBridge
[ 81%] Built target sample_dataspeedBridge
Scanning dependencies of target sample_cgf_dwchannel
[ 83%] Building CXX object src/dwchannel/CMakeFiles/sample_cgf_dwchannel.dir/CustomRawBuffer.cpp.o
[ 84%] Building CXX object src/dwchannel/CMakeFiles/sample_cgf_dwchannel.dir/main.cpp.o
[ 86%] Linking CXX executable sample_cgf_dwchannel
[ 86%] Built target sample_cgf_dwchannel
Scanning dependencies of target cgf_custom_nodes
[ 88%] Building CXX object src/cgf_nodes/CMakeFiles/cgf_custom_nodes.dir/HelloWorldNode.cpp.o
[ 90%] Building CXX object src/cgf_nodes/CMakeFiles/cgf_custom_nodes.dir/HelloWorldNodeImpl.cpp.o
[ 92%] Building CXX object src/cgf_nodes/CMakeFiles/cgf_custom_nodes.dir/SumNode.cpp.o
[ 94%] Building CXX object src/cgf_nodes/CMakeFiles/cgf_custom_nodes.dir/SumNodeImpl.cpp.o
[ 96%] Building CXX object src/cgf_nodes/CMakeFiles/cgf_custom_nodes.dir/HomeNode.cpp.o
[ 98%] Building CXX object src/cgf_nodes/CMakeFiles/cgf_custom_nodes.dir/HomeNodeImpl.cpp.o
[100%] Linking CXX shared library libcgf_custom_nodes.so
[100%] Built target cgf_custom_nodes
root@6.0.8.1-0006-build-linux-sdk:/home/nvidia/Topic-273203/build# ls
3rdparty  CMakeCache.txt  CMakeFiles  Makefile  cmake_install.cmake  src
root@6.0.8.1-0006-build-linux-sdk:/home/nvidia/Topic-273203/build# /usr/local/driveworks/tools/nodedescriptor/nodedescripto
r /home/nvidia/Topic-273203/build/src/cgf_nodes/libcgf_custom_nodes.so
HomeNode
dw::framework::HelloWorldNode
dw::framework::SumNode

Thank you, i didn’t realize this could be the problem.