2016-10-04 118 views
0

我在Ubuntu 16.04上安装了libfreenect。然后,当我在Qt中添加它的库时,发生了以下错误。qt add library freenect

我尝试添加的libusb-1.0。我在终端输入的那样:

pkg配置的libusb-1.0 --libs --cflags -I的/ usr /包括/ libusb的-1.0 -lusb-1.0

  • 的.pro文件:

    QT + =芯 QT - = GUI

    CONFIG + = C++ 11

    TARGET = 1 CONFIG + =控制台 CONFIG - = app_bundle

    TEMPLATE =应用

    SOURCES + = main.cpp中

    的win32:CONFIG(释放,调试|释放):LIBS + = -L $$ PWD /../。 ./../usr/local/lib/demo/lfreenect_sync else:win32:CONFIG(debug,debug | release):LIBS + = -L $$ PWD /../../../ usr/local/lib/debug/-lfreenect_sync else:unix:LIBS + = -L $$ PWD /../../../ usr/local/lib/-lfreenect_sync

    INCLUDEPATH + = $$ PWD /。 ./../../usr/local/include DEPENDPATH + = $$ PWD /../ .. /../usr/local/include

    win32-g ++:CONFIG(release,debug | release):PRE_TARGETDEPS + = $$ PWD /../../../ usr/local/lib/release/libfreenect_sync.a 否则:Win32的克++:CONFIG(调试,调试|释放):PRE_TARGETDEPS + = $$ PWD /../../../ USR /本地/ LIB /调试/ libfreenect_sync.a 否则:win32的!:Win32的G ++:CONFIG(发布,调试|发布):PRE_TARGETDEPS + = $$ PWD /../../../ USR/local/lib目录/发行/ freenect_sync.lib 其他:Win32的:win32-克++:CONFIG(调试,调试|释放):PRE_TARGETDEPS + = $$ PWD /../../../ USR /本地/ LIB /调试/ freenect_sync.lib 否则:UNIX:PRE_TARGETDEPS + = $$ PWD/../../../usr/local/lib/libfreenect_sync.a

    的win32:CONFIG(释放,调试|释放):LIBS + = -L $$ PWD /../../../ usr/local/lib/release/-lfreenect_sync else:win32:CONFIG(debug,debug | release):LIBS + = -L $$ PWD/.. /../../usr/local/lib/debug/ -lfreenect_sync 否则:UNIX:LIBS + = -L $$ PWD /../../../ USR /本地/ LIB/-lfreenect_sync

    INCLUDEPATH + = $$ PWD /../../../ USR /本地/包括 DEPENDPATH + = $$ PWD /../../../ USR /本地/包括

    的win32 :CONFIG(release,debug | release):LIBS + = -L $$ PWD /../../../ usr/local

    /lib/release/-lfreenect else:win32:CONFIG(debug ,debug | release):LIBS + = -L $$ PWD /../../../ usr/local/lib/debug/-lfreenect else:unix:LIBS + = -L $$ PWD /../../../ usr/local/lib/-lfreenect

    INCLUDEPATH + = $$ PWD /../../ ../usr/local/include DEPENDPATH + = $$ PWD /../../../ usr/local/include

    win32-g ++:CONFIG(release,debug | release):PRE_TARGETDEPS + = $$ PWD /../../../ USR/local/lib目录/发行/ libfreenect。a else:win32-g ++:CONFIG(debug,debug | release):PRE_TARGETDEPS + = $$ PWD /../../../ usr/local/lib/debug/libfreenect.a else:win32 :! win32-g ++:CONFIG(release,debug | release):PRE_TARGETDEPS + = $$ PWD /../../../ usr/local/lib/release/freenect.lib else:win32:!win32-g ++: CONFIG(debug,debug | release):PRE_TARGETDEPS + = $$ PWD /../../../ usr/local/lib/debug/freenect.lib else:unix:PRE_TARGETDEPS + = $$ PWD/.. /../../usr/local/lib/libfreenect.a

    win32:CONFIG(release,debug | release):LIBS + = -L $$ PWD /../../../ usr/local/lib/release/-lfreenect else:win32:CONFIG(debug,debug | release):LIBS + = -L $$ PWD /../../../ usr/local/lib/debug/- lfreenect else:unix:LIBS + = -L $$ PWD /../../../ usr/local/lib/-lfreenect

    INCLUDEPATH + = $$ PWD /../../../ USR /本地/包括 DEPENDPATH + = $$ PWD /../../../ USR /本地/包括

    win32:CONFIG(release,debug | release):LIBS + = -L $$ PWD /../../../ usr/lib/release/-lusb-1.0 else:win32:CONFIG(debug,debug |释放):LIBS + = -L $$ PWD /../../../ usr/lib/debug/-lusb-1.0 else:unix:LIBS + = -L $$ PWD /../。 ./../usr/lib/ -lusb-1.0

    INCLUDEPATH + = $$ PWD /../../../ usr/include DEPENDPATH + = $$ PWD /../../ ../usr/include

但同样的错误发生。我如何解决它?

回答

0

我认为错误信息是不言自明的。您没有安装libusb-1.0.0开发包(即libusb-1.0.0-dev)。

首先检查您是否安装了libfreenect-dev软件包(请注意,这是与libfreenect不同的软件包)。如果已安装,则可能是您的libusb-1.0.0-dev包已损坏,您应该重新安装它。如果没有安装,您应该安装libfreenect-dev包。

安装libusb-1.0.0-dev

sudo apt-get install libusb-1.0.0-dev 

安装libfreenect-dev

sudo apt-get install libfreenect-dev 

注意libusb-1.0.0-devlibusb-1.0.0是两个不同的,也libfreenectlibfreenect-dev

+0

是否不应该使用libfreenect软件包自动安装依赖项? – dtech

+0

@ddriver我刚刚检查过,你是对的。 'libfreenect-dev'(而不是'libfreenect')依赖于'libusb-1.0.0-dev'。 OP可能只安装了'libfreenect'并且没有安装'libfreenect-dev'。谢谢你指出的任何方式。 –

+0

谢谢。但错误重复.... – ma98