Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何解决';对libusb'的未定义引用;ros中的错误?_C++_Linux_Makefile_Cmake_Ros - Fatal编程技术网

C++ 如何解决';对libusb'的未定义引用;ros中的错误?

C++ 如何解决';对libusb'的未定义引用;ros中的错误?,c++,linux,makefile,cmake,ros,C++,Linux,Makefile,Cmake,Ros,我正在尝试将摄像头(非uvc)流程序传输到ros平台 我已经启动了摄像头驱动程序 Makefile是这样的: 生成到/catkin_ws/build/***/中的Makefile行如下所示: [1] 有人知道如何解决这个问题吗 [2] 如何在我的电脑中找到libusb的.a和.so?(我确信我有它们,因为我可以打包配置--cflags/--libs它们) [3] 如何在ros CmakeList中显式链接动态库?或者只需链接库(usb)就足以满足静态和动态库的需要?在cmake中查找库通

我正在尝试将摄像头(非uvc)流程序传输到ros平台

我已经启动了摄像头驱动程序

Makefile是这样的:



生成到/catkin_ws/build/***/中的Makefile行如下所示:



[1] 有人知道如何解决这个问题吗

[2] 如何在我的电脑中找到libusb的.a和.so?(我确信我有它们,因为我可以打包配置--cflags/--libs它们)


[3] 如何在ros CmakeList中显式链接动态库?或者只需链接库(usb)就足以满足静态和动态库的需要?

在cmake中查找库通常使用
find\u package
完成

在您的情况下,它可能看起来像这样(取自):


当然,您可能需要调整版本号(也许可以简单地将其删除)。

在cmake中查找库通常使用
find\u package
完成

在您的情况下,它可能看起来像这样(取自):


当然,您可能需要调整版本号(也许可以简单地将其删除)。

在cmake中查找库通常使用
find\u package
完成

在您的情况下,它可能看起来像这样(取自):


当然,您可能需要调整版本号(也许可以简单地将其删除)。

在cmake中查找库通常使用
find\u package
完成

在您的情况下,它可能看起来像这样(取自):


当然,您可能需要调整版本号(也许可以简单地将其删除)。

find\u包要求CMake具有相应的
find.CMake

让我有一个愉快的假期

您可以使用它来编写自己的FindLibUSB

或者,您可以直接在CMakeLists.txt中使用它:

find_package(PkgConfig REQUIRED)
pkg_search_module(LIBUSB1 REQUIRED libusb-1.0)
include_directories(SYSTEM ${LIBUSB1_INCLUDE_DIRS})

您可以在设置的所有变量中看到:
LIBUSB1\u库
库等…

find\u包
要求CMake具有相应的
find.CMake

让我有一个愉快的假期

您可以使用它来编写自己的FindLibUSB

或者,您可以直接在CMakeLists.txt中使用它:

find_package(PkgConfig REQUIRED)
pkg_search_module(LIBUSB1 REQUIRED libusb-1.0)
include_directories(SYSTEM ${LIBUSB1_INCLUDE_DIRS})

您可以在设置的所有变量中看到:
LIBUSB1\u库
库等…

find\u包
要求CMake具有相应的
find.CMake

让我有一个愉快的假期

您可以使用它来编写自己的FindLibUSB

或者,您可以直接在CMakeLists.txt中使用它:

find_package(PkgConfig REQUIRED)
pkg_search_module(LIBUSB1 REQUIRED libusb-1.0)
include_directories(SYSTEM ${LIBUSB1_INCLUDE_DIRS})

您可以在设置的所有变量中看到:
LIBUSB1\u库
库等…

find\u包
要求CMake具有相应的
find.CMake

让我有一个愉快的假期

您可以使用它来编写自己的FindLibUSB

或者,您可以直接在CMakeLists.txt中使用它:

find_package(PkgConfig REQUIRED)
pkg_search_module(LIBUSB1 REQUIRED libusb-1.0)
include_directories(SYSTEM ${LIBUSB1_INCLUDE_DIRS})

您可以在设置的所有变量中看到:
LIBUSB1\u库
库等…

hi luator,您还在吗?我想我的系统找不到这个包,它报告:(find_package):找不到libusb-1.0包的配置文件。将libusb-1.0_DIR设置为包含libusb-1.0的CMake配置文件的目录。该文件将具有以下名称之一:libusb-1.0Config.cmake libusb-1.0-config.cmake,我认为我的系统没有这两个变量${libusb_1_INCLUDE_DIRS}和${libusb_1_LIBRARIES},我键入apt get install libusb-1.0,它只是说我已经安装了这个。然而,我不知道libusb在哪里。它不在/usr/lib/usb/bin或/usr/local/lib中。我能准确定位这个包并使用绝对路径吗?@ThuVlion如果find_包成功,变量将自动设置。错误消息表明您需要一个
Find.cmake
,如另一个答案中所述。如果您将来在其他库中遇到这个问题:在大多数情况下,您只需向google询问“find.cmake”hi luator,就可以找到合适的查找文件,您还在吗?我想我的系统找不到这个包,它报告:(find_package):找不到libusb-1.0包的配置文件。将libusb-1.0_DIR设置为包含libusb-1.0的CMake配置文件的目录。该文件将具有以下名称之一:libusb-1.0Config.cmake libusb-1.0-config.cmake,我认为我的系统没有这两个变量${libusb_1_INCLUDE_DIRS}和${libusb_1_LIBRARIES},我键入apt get install libusb-1.0,它只是说我已经安装了这个。然而,我不知道libusb在哪里。它不在/usr/lib/usb/bin或/usr/local/lib中。我能准确定位这个包并使用绝对路径吗?@ThuVlion如果find_包成功,变量将自动设置。错误消息表明您需要一个
Find.cmake
,如另一个答案中所述。如果您将来在其他库中遇到这个问题:在大多数情况下,您只需向google询问“find.cmake”hi luator,就可以找到合适的查找文件,您还在吗?我想我的系统找不到这个包,它报告:(find_package):找不到libusb-1.0包的配置文件。将libusb-1.0_DIR设置为包含libusb-1.0的CMake配置文件的目录。该文件将具有以下名称之一:libusb-1.0Config.cmake libusb-1.0-config.cmake,我认为我的系统没有这两个变量${libusb_1_INCLUDE_DIRS}和${libusb_1_LIBRARIES},我键入apt get install libusb-1.0,它只是说我已经安装了这个。然而,我不知道libusb在哪里。它不在/usr/lib/usb/bin或/usr/local/lib中。我能准确定位这个包并使用绝对路径吗?@ThuVlion如果find_包成功,变量将自动设置。错误消息表明您需要一个
Find.cmake
,如另一个答案中所述。如果您在t中的其他库中遇到此问题
find_package(libusb-1.0 REQUIRED)
include_directories (${LIBUSB_1_INCLUDE_DIRS})
...
target_link_libraries(asi_converter_real ${catkin_LIBRARIES} ${LIBUSB_1_LIBRARIES})
find_package(PkgConfig REQUIRED)
pkg_search_module(LIBUSB1 REQUIRED libusb-1.0)
include_directories(SYSTEM ${LIBUSB1_INCLUDE_DIRS})