2017-02-24 4 views
0

Je suis assez nouveau sur linux et j'utilise Ubuntu 16.04 LTS 64bits.Erreur avec CMAKE et compilé manuellement QT4

J'ai acquis un code open source, et j'ai besoin de le compiler avec cmake. Ce code nécessitait QT4.

J'ai téléchargé un fichier source ouvert QT4.8.6 et je les ai compilés manuellement. (ceci est nécessaire car QT ne supporte plus le QT4 pré-compilé pour Linux).

J'ai ajouté mon répertoire "qmake" à ma variable PATH. echo $ {PATH} le montre.

Lorsque je compile le code avec CMAKE, l'erreur suivante apparaît:

CMake Erreur à /usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:148 (message): N'a pas pu trouver Qt4 (manquant: QT_MOC_EXECUTABLE QT_RCC_EXECUTABLE QT_UIC_EXECUTABLE) (version trouvée "4.8.6") ​​Appelez Stack (appel le plus récent):
/usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:388 (_FPHSA_FAILURE_MESSAGE
/usr/share/cmake- 3,5/modules/FindQt4.cmake: 1333 (FIND_PACKAGE_HANDLE_STANDARD_ARGS) CMakeLists.txt: 20 (FIND_PACKAGE)

aide est très appréciée.

Répondre

0
  1. Vous n'avez pas besoin de télécharger Qt 4 de qt.io, Ubuntu 16.04 a à la fois Qt 4.8.7 et Qt 5.5.1 compilé et disponible dans les dépôts

  2. CMake trouvailles Qt en recherchant le qmake binaire et d'autres binaires Malheureusement Qt5 et Qt4 ont ces binaires, et Ubuntu résout ce problème en installant Qt4 à /usr/lib/x86_64-linux-gnu/qt4. Vous pouvez faire Qt4 la valeur par défaut (celui de votre chemin) en installant le paquet qt4-default. sudo apt install qt4-default qui va créer des liens symboliques à partir du dossier spécifique à Qt4 (par exemple pour qmake /usr/lib/.../qt4/bin/qmake-/usr/bin/qmake Maintenant, qmake --version devrait imprimer Using Qt version 4.8.7 in /usr/lib/x86_64-linux-gnu

  3. Cela vaut uniquement lorsque vous utilisez cMake sur la ligne de commande. Si vous utilisez QtCreator, la configuration de votre kit appliquera.

Je pense que la meilleure façon de résoudre votre problème est juste en utilisant Qt 4 fourni par Ubuntu (en installant qt4-default), et en supprimant votre build personnalisé Q t 4 et les modifications PATH.

+0

Merci beaucoup. Cela a vraiment fonctionné de cette façon. Je ne savais pas Ubuntu proposé Qt4 comme un paquet. Merci encore. –

+0

Pas de problème! Pouvez-vous accepter la réponse en cliquant sur la coche à gauche de celle-ci? –