您的位置:首页 > 其它

编译安装libfreenect2时错误问题

2017-06-23 16:20 477 查看
原链接:(]https://community.bwbot.org/topic/189)[https://community.bwbot.org/topic/189]

在编译安装
libfreenect2
时出现如下的错误

-- using tinythread as threading library
-- Checking for module 'libusb-1.0>=1.0.20'
--
CMake Error at /usr/share/cmake-3.5/Modules/FindPkgConfig.cmake:367 (message):
A required package was not found
Call Stack (most recent call first):
/usr/share/cmake-3.5/Modules/FindPkgConfig.cmake:532 (_pkg_check_modules_internal)
cmake_modules/FindLibUSB.cmake:21 (PKG_CHECK_MODULES)
CMakeLists.txt:93 (FIND_PACKAGE)


这个错误来自于
libusb
,但是我已经按照说明安装了
libusb
,即执行下面的指令

sudo apt-get install libusb-1.0-0-dev


然后我又重新源码安装了最新的libusb,发现还是不行.

最后就把
libfreenect2/cmake_modules/FindLibUSB.cmake
中的几行注释掉,感觉是在用
pkg-config
来找库的时候
module
的名字错了

# - Find libusb for portable USB support
#
# If the LibUSB_ROOT environment variable
# is defined, it will be used as base path.
# The following standard variables get defined:
#  LibUSB_FOUND:    true if LibUSB was found
#  LibUSB_INCLUDE_DIR: the directory that contains the include file
#  LibUSB_LIBRARIES:  the libraries

IF(PKG_CONFIG_FOUND)
IF(DEPENDS_DIR) #Otherwise use System pkg-config path
SET(ENV{PKG_CONFIG_PATH} "$ENV{PKG_CONFIG_PATH}:${DEPENDS_DIR}/libusb/lib/pkgconfig")
ENDIF()
SET(MODULE "libusb-1.0")
#把下面的几行注释掉
#IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
#  SET(MODULE "libusb-1.0>=1.0.20")
#ENDIF()
IF(LibUSB_FIND_REQUIRED)
SET(LibUSB_REQUIRED "REQUIRED")
ENDIF()


这样在安装说明文件的方法make就可以了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐