darknet_ros icon indicating copy to clipboard operation
darknet_ros copied to clipboard

colcon build failed under foxy : cannot find -ldarknet_ros_core_lib

Open an99990 opened this issue 4 years ago • 6 comments

Describe the bug Hi, So I am new to this and trying to build darknet_ros. I have build it under the foxy branch. I have encoutered many syntax error such as show_image not getting enough parameters in attention.c, and show_image_cv having declaration conflicts. I fixed them by either commenting show_image in attention.c and change

extern "C" void show_image_cv(image p, const char *name, IplImage *disp) to 
extern "C" void show_image_cv_cp(image p, const char *name, IplImage *disp) in YoloObjectDetector.hpp;

I dont know if the changes are related to my error but wanted to let you guys know in case. here is the error message

/usr/bin/ld: cannot find -ldarknet_ros_core_lib
collect2: error: ld returned 1 exit status
make[2]: *** [CMakeFiles/darknet_ros.dir/build.make:303: darknet_ros] Error 1
make[1]: *** [CMakeFiles/Makefile2:87: CMakeFiles/darknet_ros.dir/all] Error 2
make: *** [Makefile:146: all] Error 2
Summary: 0 package finished
1 package failed: darknet_ros
1 package had stderr output: darknet_ros

To Reproduce Steps to reproduce the behavior: colcon build --symlink-install --cmake-args=-DCMAKE_BUILD_TYPE=Release

System (please complete the following information):

  • OS: Ubuntu 20.04
  • ROS version: Foxy
  • GPU ; NVidia GTX 1080

Can anyone help me please ? I have looked and cant find the library ldarknet_ros_core_lib

an99990 avatar Jul 16 '21 12:07 an99990

What version of Opencv and CUDA are you using... :eyes: ?

If you are using OpenCV4, Please use OpenCV3 or use my darknet_ros_fp16.

As my commentary page shows, replacing it with darknet (YOLO v3), which supports OpenCV4, will also solve the problem. (I know it's hard to read in Japanese. Sorry)

Ar-Ray-code avatar Jul 18 '21 06:07 Ar-Ray-code

@Ar-Ray-code will your code work with the ZED camera ? Update: I just tried your darknet_ros_fp16. here is the error message

le@le-vm:~/ros2_ws_2$ ros2 launch darknet_ros demo-v4-tiny.launch.py
[INFO] [launch]: All log files can be found below /home/le/.ros/log/2021-07-20-13-06-57-031596-le-vm-15728
[INFO] [launch]: Default logging verbosity is set to INFO
/home/le/ros2_ws_2/install/darknet_ros/share/darknet_ros/launch/demo-v4-tiny.launch.py:41: UserWarning: The parameter 'node_executable' is deprecated, use 'executable' instead
  darknet_ros_cmd = Node(
/home/le/ros2_ws_2/install/darknet_ros/share/darknet_ros/launch/demo-v4-tiny.launch.py:41: UserWarning: The parameter 'node_name' is deprecated, use 'name' instead
  darknet_ros_cmd = Node(
Task exception was never retrieved
future: <Task finished name='Task-2' coro=<LaunchService._process_one_event() done, defined at /opt/ros/foxy/lib/python3.8/site-packages/launch/launch_service.py:274> exception=PackageNotFoundError("package 'v4l2_camera' not found, searching: ['/home/le/ros2_ws_2/install/darknet_ros', '/home/le/ros2_ws_2/install/darknet_ros_msgs', '/home/le/test/install/openrobotics_darknet_ros', '/opt/ros/foxy']")>
Traceback (most recent call last):
  File "/opt/ros/foxy/lib/python3.8/site-packages/ament_index_python/packages.py", line 49, in get_package_prefix
    content, package_prefix = get_resource('packages', package_name)
  File "/opt/ros/foxy/lib/python3.8/site-packages/ament_index_python/resources.py", line 48, in get_resource
    raise LookupError(
LookupError: Could not find the resource 'v4l2_camera' of type 'packages'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/opt/ros/foxy/lib/python3.8/site-packages/launch/launch_service.py", line 276, in _process_one_event
    await self.__process_event(next_event)
  File "/opt/ros/foxy/lib/python3.8/site-packages/launch/launch_service.py", line 296, in __process_event
    visit_all_entities_and_collect_futures(entity, self.__context))
  File "/opt/ros/foxy/lib/python3.8/site-packages/launch/utilities/visit_all_entities_and_collect_futures_impl.py", line 45, in visit_all_entities_and_collect_futures
    futures_to_return += visit_all_entities_and_collect_futures(sub_entity, context)
  File "/opt/ros/foxy/lib/python3.8/site-packages/launch/utilities/visit_all_entities_and_collect_futures_impl.py", line 45, in visit_all_entities_and_collect_futures
    futures_to_return += visit_all_entities_and_collect_futures(sub_entity, context)
  File "/opt/ros/foxy/lib/python3.8/site-packages/launch/utilities/visit_all_entities_and_collect_futures_impl.py", line 45, in visit_all_entities_and_collect_futures
    futures_to_return += visit_all_entities_and_collect_futures(sub_entity, context)
  [Previous line repeated 1 more time]
  File "/opt/ros/foxy/lib/python3.8/site-packages/launch/utilities/visit_all_entities_and_collect_futures_impl.py", line 38, in visit_all_entities_and_collect_futures
    sub_entities = entity.visit(context)
  File "/opt/ros/foxy/lib/python3.8/site-packages/launch/action.py", line 108, in visit
    return self.execute(context)
  File "/opt/ros/foxy/lib/python3.8/site-packages/launch_ros/actions/node.py", line 426, in execute
    ret = super().execute(context)
  File "/opt/ros/foxy/lib/python3.8/site-packages/launch/actions/execute_process.py", line 823, in execute
    self.__expand_substitutions(context)
  File "/opt/ros/foxy/lib/python3.8/site-packages/launch/actions/execute_process.py", line 668, in __expand_substitutions
    cmd = [perform_substitutions(context, x) for x in self.__cmd]
  File "/opt/ros/foxy/lib/python3.8/site-packages/launch/actions/execute_process.py", line 668, in <listcomp>
    cmd = [perform_substitutions(context, x) for x in self.__cmd]
  File "/opt/ros/foxy/lib/python3.8/site-packages/launch/utilities/perform_substitutions_impl.py", line 26, in perform_substitutions
    return ''.join([context.perform_substitution(sub) for sub in subs])
  File "/opt/ros/foxy/lib/python3.8/site-packages/launch/utilities/perform_substitutions_impl.py", line 26, in <listcomp>
    return ''.join([context.perform_substitution(sub) for sub in subs])
  File "/opt/ros/foxy/lib/python3.8/site-packages/launch/launch_context.py", line 197, in perform_substitution
    return substitution.perform(self)
  File "/opt/ros/foxy/lib/python3.8/site-packages/launch_ros/substitutions/executable_in_package.py", line 76, in perform
    package_prefix = super().perform(context)
  File "/opt/ros/foxy/lib/python3.8/site-packages/launch_ros/substitutions/find_package.py", line 79, in perform
    result = self.find(package)
  File "/opt/ros/foxy/lib/python3.8/site-packages/launch_ros/substitutions/find_package.py", line 96, in find
    return get_package_prefix(package_name)
  File "/opt/ros/foxy/lib/python3.8/site-packages/ament_index_python/packages.py", line 51, in get_package_prefix
    raise PackageNotFoundError(
ament_index_python.packages.PackageNotFoundError: "package 'v4l2_camera' not found, searching: ['/home/le/ros2_ws_2/install/darknet_ros', '/home/le/ros2_ws_2/install/darknet_ros_msgs', '/home/le/test/install/openrobotics_darknet_ros', '/opt/ros/foxy']"
Task exception was never retrieved
future: <Task finished name='Task-8' coro=<LaunchService._process_one_event() done, defined at /opt/ros/foxy/lib/python3.8/site-packages/launch/launch_service.py:274> exception=RuntimeError('Signal event received before subprocess transport available.')>
Traceback (most recent call last):
  File "/opt/ros/foxy/lib/python3.8/site-packages/launch/launch_service.py", line 276, in _process_one_event
    await self.__process_event(next_event)
  File "/opt/ros/foxy/lib/python3.8/site-packages/launch/launch_service.py", line 296, in __process_event
    visit_all_entities_and_collect_futures(entity, self.__context))
  File "/opt/ros/foxy/lib/python3.8/site-packages/launch/utilities/visit_all_entities_and_collect_futures_impl.py", line 38, in visit_all_entities_and_collect_futures
    sub_entities = entity.visit(context)
  File "/opt/ros/foxy/lib/python3.8/site-packages/launch/action.py", line 108, in visit
    return self.execute(context)
  File "/opt/ros/foxy/lib/python3.8/site-packages/launch/actions/opaque_function.py", line 75, in execute
    return self.__function(context, *self.__args, **self.__kwargs)
  File "/opt/ros/foxy/lib/python3.8/site-packages/launch/actions/execute_process.py", line 443, in __on_signal_process_event
    raise RuntimeError('Signal event received before subprocess transport available.')
RuntimeError: Signal event received before subprocess transport available.
[INFO] [darknet_ros-1]: process started with pid [15730]
[darknet_ros-1] [INFO] [1626800817.258048154] [darknet_ros]: [YoloObjectDetector] Node started.
[darknet_ros-1] [INFO] [1626800817.258942372] [darknet_ros]: [YoloObjectDetector] Xserver is running.
[darknet_ros-1] [INFO] [1626800817.258970104] [darknet_ros]: [YoloObjectDetector] init().
[darknet_ros-1]  0 : compute_capability = 610, cudnn_half = 0, GPU: NVIDIA GeForce GTX 1060 6GB 
[darknet_ros-1]    layer   filters  size/strd(dil)      input                output
[darknet_ros-1]    0 conv     32       3 x 3/ 2    416 x 416 x   3 ->  208 x 208 x  32 0.075 BF
[darknet_ros-1]    1 conv     64       3 x 3/ 2    208 x 208 x  32 ->  104 x 104 x  64 0.399 BF
[darknet_ros-1]    2 conv     64       3 x 3/ 1    104 x 104 x  64 ->  104 x 104 x  64 0.797 BF
[darknet_ros-1]    3 route  2 		                       1/2 ->  104 x 104 x  32 
[darknet_ros-1]    4 conv     32       3 x 3/ 1    104 x 104 x  32 ->  104 x 104 x  32 0.199 BF
[darknet_ros-1]    5 conv     32       3 x 3/ 1    104 x 104 x  32 ->  104 x 104 x  32 0.199 BF
[darknet_ros-1]    6 route  5 4 	                           ->  104 x 104 x  64 
[darknet_ros-1]    7 conv     64       1 x 1/ 1    104 x 104 x  64 ->  104 x 104 x  64 0.089 BF
[darknet_ros-1]    8 route  2 7 	                           ->  104 x 104 x 128 
[darknet_ros-1]    9 max                2x 2/ 2    104 x 104 x 128 ->   52 x  52 x 128 0.001 BF
[darknet_ros-1]   10 conv    128       3 x 3/ 1     52 x  52 x 128 ->   52 x  52 x 128 0.797 BF
[darknet_ros-1]   11 route  10 		                       1/2 ->   52 x  52 x  64 
[darknet_ros-1]   12 conv     64       3 x 3/ 1     52 x  52 x  64 ->   52 x  52 x  64 0.199 BF
[darknet_ros-1]   13 conv     64       3 x 3/ 1     52 x  52 x  64 ->   52 x  52 x  64 0.199 BF
[darknet_ros-1]   14 route  13 12 	                           ->   52 x  52 x 128 
[darknet_ros-1]   15 conv    128       1 x 1/ 1     52 x  52 x 128 ->   52 x  52 x 128 0.089 BF
[darknet_ros-1]   16 route  10 15 	                           ->   52 x  52 x 256 
[darknet_ros-1]   17 max                2x 2/ 2     52 x  52 x 256 ->   26 x  26 x 256 0.001 BF
[darknet_ros-1]   18 conv    256       3 x 3/ 1     26 x  26 x 256 ->   26 x  26 x 256 0.797 BF
[darknet_ros-1]   19 route  18 		                       1/2 ->   26 x  26 x 128 
[darknet_ros-1]   20 conv    128       3 x 3/ 1     26 x  26 x 128 ->   26 x  26 x 128 0.199 BF
[darknet_ros-1]   21 conv    128       3 x 3/ 1     26 x  26 x 128 ->   26 x  26 x 128 0.199 BF
[darknet_ros-1]   22 route  21 20 	                           ->   26 x  26 x 256 
[darknet_ros-1]   23 conv    256       1 x 1/ 1     26 x  26 x 256 ->   26 x  26 x 256 0.089 BF
[darknet_ros-1]   24 route  18 23 	                           ->   26 x  26 x 512 
[darknet_ros-1]   25 max                2x 2/ 2     26 x  26 x 512 ->   13 x  13 x 512 0.000 BF
[darknet_ros-1]   26 conv    512       3 x 3/ 1     13 x  13 x 512 ->   13 x  13 x 512 0.797 BF
[darknet_ros-1]   27 conv    256       1 x 1/ 1     13 x  13 x 512 ->   13 x  13 x 256 0.044 BF
[darknet_ros-1]   28 conv    512       3 x 3/ 1     13 x  13 x 256 ->   13 x  13 x 512 0.399 BF
[darknet_ros-1]   29 conv    255       1 x 1/ 1     13 x  13 x 512 ->   13 x  13 x 255 0.044 BF
[darknet_ros-1]   30 yolo
[darknet_ros-1] [yolo] params: iou loss: ciou (4), iou_norm: 0.07, obj_norm: 1.00, cls_norm: 1.00, delta_norm: 1.00, scale_x_y: 1.05
[darknet_ros-1]   31 route  27 		                           ->   13 x  13 x 256 
[darknet_ros-1]   32 conv    128       1 x 1/ 1     13 x  13 x 256 ->   13 x  13 x 128 0.011 BF
[darknet_ros-1]   33 upsample                 2x    13 x  13 x 128 ->   26 x  26 x 128
[darknet_ros-1]   34 route  33 23 	                           ->   26 x  26 x 384 
[darknet_ros-1]   35 conv    256       3 x 3/ 1     26 x  26 x 384 ->   26 x  26 x 256 1.196 BF
[darknet_ros-1]   36 conv    255       1 x 1/ 1     26 x  26 x 256 ->   26 x  26 x 255 0.088 BF
[darknet_ros-1]   37 yolo
[darknet_ros-1] [yolo] params: iou loss: ciou (4), iou_norm: 0.07, obj_norm: 1.00, cls_norm: 1.00, delta_norm: 1.00, scale_x_y: 1.05
[darknet_ros-1] Total BFLOPS 6.910 
[darknet_ros-1] avg_outputs = 310203 
[darknet_ros-1]  Allocate additional workspace_size = 26.22 MB 
[darknet_ros-1] YOLO V3
[darknet_ros-1]  Try to load cfg: /home/le/ros2_ws_2/install/darknet_ros/share/darknet_ros/yolo_network_config/cfg/yolov4-tiny.cfg, clear = 0 
[darknet_ros-1] net.optimized_memory = 0 
[darknet_ros-1] mini_batch = 1, batch = 1, time_steps = 1, train = 1 
[darknet_ros-1] Create CUDA-stream - 0 
[darknet_ros-1]  Create cudnn-handle 0 
[darknet_ros-1] nms_kind: greedynms (1), beta = 0.600000 
[darknet_ros-1] nms_kind: greedynms (1), beta = 0.600000 
[darknet_ros-1]  Try to load weights: /home/le/ros2_ws_2/install/darknet_ros/share/darknet_ros/yolo_network_config/weights/yolov4-tiny.weights 
[darknet_ros-1] Loading weights from /home/le/ros2_ws_2/install/darknet_ros/share/darknet_ros/yolo_network_config/weights/yolov4-tiny.weights...Done! Loaded 38 layers from weights-file 
[ERROR] [darknet_ros-1]: process[darknet_ros-1] failed to terminate '5' seconds after receiving 'SIGINT', escalating to 'SIGTERM'
[INFO] [darknet_ros-1]: sending signal 'SIGTERM' to process[darknet_ros-1]
[ERROR] [darknet_ros-1]: process has died [pid 15730, exit code -15, cmd '/home/le/ros2_ws_2/install/darknet_ros/lib/darknet_ros/darknet_ros --ros-args -r __node:=darknet_ros -r __node:=darknet_ros --params-file /home/le/ros2_ws_2/install/darknet_ros/share/darknet_ros/config/ros.yaml --params-file /home/le/ros2_ws_2/install/darknet_ros/share/darknet_ros/config/yolov4-tiny.yaml --params-file /tmp/launch_params_he_lw40c'].

an99990 avatar Jul 20 '21 17:07 an99990

I'm curious about the message in LookupError: Could not find the resource 'v4l2_camera' of type 'packages'.

Did you try $ sudo apt install ros-foxy-v4l2-camera ?

ZED2 Stereo camera is not supported. I want to support it in the future...

However, it is possible to transfer images by connecting topics using zed_ros_wrapper.

Thank you for your feedback. 🙇

Ar-Ray-code avatar Jul 20 '21 17:07 Ar-Ray-code

If it is resolved, please close this issue. @tomlankhorst

Ar-Ray-code avatar Jul 23 '21 04:07 Ar-Ray-code

I am having the same error as below /usr/bin/ld: cannot find -ldarknet_ros_core_lib

Have opencv3.4.11 installed with CUDA-11.6 Running Ubuntu 20.04 and apt installed ROS 2 foxy Also set -O3 -gencode arch=compute_62,code=sm_62 for nvcc flags Any suggestions?

kyuhyong avatar Jul 18 '22 08:07 kyuhyong