2017-01-19 38 views
1

Ich bin neu in der Computerwelt. Ich versuche iai kinect2 drivers zu installieren, aber während der Ausführung den catkin_make -DCMAKE_BUILD_TYPE="Release" Schrittes ich die folgende Fehlermeldung erhalten:Linker finden qt5

/usr/bin/ld: cannot find -lQt5::Core 
/usr/bin/ld: cannot find -lQt5::Gui 
/usr/bin/ld: cannot find -lQt5::Widgets 
/usr/bin/ld: cannot find -lQt5::Test 
/usr/bin/ld: cannot find -lQt5::Concurrent 
/usr/bin/ld: cannot find -lQt5::OpenGL 
collect2: error: ld returned 1 exit status 
make[2]: *** [/home/pb/catkin_ws/devel/lib/libkinect2_registration.so] Error 1 
make[1]: *** [iai_kinect2/kinect2_registration/CMakeFiles/kinect2_registration.dir/all] Error 2 
make: *** [all] Error 2 
Invoking "make -j4 -l4" failed 

Nach vielen stackoverflowing tut mir, dass herausgefunden entweder dem qt5 is not downloaded oder in einem anderen Verzeichnis oder Konflikt mit anderer Version heruntergeladen von qt4. Einige Seiten auf github schlugen auch einen Patch vor, aber das war für ein anderes Paket.

Ich habe bereits qt5 aber in meinem Home-Verzeichnis installiert, seit ich die Schritte auf der Qt5 webpage folgte. Nun, wie kann ich den Pfad der installierten Qt5-Bibliotheken hinzufügen, so dass der Linker (ld) die benötigten Dateien finden kann.

Nützliche Links - Qt5 linker issue, Linker error cannot find lqt5::Widgets, similar error launchpad bug report

Hinweis - ich bin mit Ubuntu 14.04, falls Sie mir einige $ VAR zu aktualisieren, dann freundlicherweise seinen Namen wie $ LIBRARY_DIR vorschlagen. Und wenn Sie wollen, dass ich den -DVAR = 'Pfad' zu catkin_make hinzufüge, dann schlagen Sie auch einen passenden Variablennamen vor, den ich hinzufügen muss.

Vielen Dank !! : D

Antwort

0

Was ist nur qtbase5-dev Paket installieren (sollte Qt 5.2.1 für Ubuntu 14.04 sein):

sudo apt-get install qtbase5-dev 

statt Ihrer Installation von Qt5?

Falls Sie den Bibliothekspfad einfach reparieren möchten, können Sie eine Datei whatever.conf in /etc/ld.so.conf.d hinzufügen, indem Sie eine oder mehrere Zeilen mit Pfadnamen für die Bibliotheken hinzufügen. Danach starten Sie ldconfig dort.

+0

Wird die Installation über apt-get einen Konflikt mit dem alten erzeugen? Und im Allgemeinen ist das qt5-Paket recht groß (in Bezug auf die Größe), weshalb ich es nicht wiederholen möchte. Ich werde jedoch versuchen, den Bibliothekspfad zu reparieren. In der /etc/ld.so.conf.d gibt es viele andere .conf-Dateien wie x86_64-linux-gnu.conf, libc.conf usw. Welche anderen .conf sollte ich zu diesem Ordner hinzufügen oder soll ich einen vorhandenen bearbeiten .conf-Datei? – PallavBakshi

+0

Verwenden Sie einfach einen Namen Ihrer Wahl: Alle darin enthaltenen '.conf'-Dateien werden gelesen. Zum Beispiel 'qt5pallav.conf'. – mbjoe

+0

Ich habe gerade versucht, die whatever.conf-Datei hinzuzufügen und den Pfad der qt5-Bibliothek anzuhängen. Immer noch das gleiche Problem :( – PallavBakshi