2016-10-04 119 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