1 votes

cmake trouve Python3.4 et non Python3.5

J'essaie de faire fonctionner opencv avec Python3.5 sur Ubuntu 16.04.

J'ai suivi les étapes de la réponse à cette question : Comment installer OpenCV 3.1 pour Python 3.5 sur Ubuntu 16.04 LTS ?

et aussi le lien qui s'y trouve. J'ai dû installer d'autres dépendances également.

Mon premier problème est que cmake continue de trouver Python3.4 et non Python3.5.

--   Python 2:
--     Interpreter:                 /usr/bin/python2.7 (ver 2.7.11)
--     Libraries:                   /usr/lib/x86_64-linux-gnu/libpython2.7.so (ver 2.7.11+)
--     numpy:                       /usr/local/lib/python2.7/dist-packages/numpy/core/include (ver 1.11.1)
--     packages path:               lib/python2.7/dist-packages
-- 
--   Python 3:
--     Interpreter:                 /usr/bin/python3.4 (ver 3.4)
-- 

Il y a quelques autres dépendances manquantes aussi mentionnées. Je ne sais pas si elles sont essentielles, par exemple Matlab :

--   Matlab:                        Matlab not found or implicitly disabled

également gtk+-3.0 alors que je pensais l'avoir installé :

-- Checking for module 'gtk+-3.0'
--   No package 'gtk+-3.0' found

et quelques autres :

-- VTK is not found. Please set -DVTK_DIR in CMake to VTK build directory, or to VTK install subdirectory with VTKConfig.cmake file

-- Looking for linux/videodev.h
-- Looking for linux/videodev.h - not found
-- Looking for linux/videodev2.h
-- Looking for linux/videodev2.h - found
-- Looking for sys/videoio.h
-- Looking for sys/videoio.h - not found
-- Checking for module 'libavresample'
--   No package 'libavresample' found

J'ai fait une commande grep / sed pour modifier python3.4 en 3.5 et j'ai essayé make et make install mais ce n'est toujours pas là.

0voto

Noidea Points 101

Une réponse détaillée à toutes ces questions prendrait trop de place et d'efforts, sans compter les informations supplémentaires sur chacun de ces paquets.

Mais en général, la stratégie est la suivante :

  1. Si le paquet n'est pas trouvé, vérifiez d'abord que vous l'avez. Par exemple, vérifiez avec dpkg -l "*libXXX*" . En cas de python vérifier quel Python est capté par le système avec which python3 commande. Cela ne signifie pas que le même sera trouvé par cmake ( cmake peut utiliser un ordre différent des répertoires de recherche), mais c'est probable.

  2. Si vous l'avez, mais qu'il n'est pas dans un chemin standard, qu'il n'est pas trouvé ou qu'une version différente est trouvée, vous devez généralement

    a) définir certaines variables d'environnement

    ou b) modifier le findXXX.cmake scripts que vous trouvez dans le dossier "cmake" de OpenCV source

    ou c) de modifier le programme OpenCV CMakeLists.txt pour définir les paramètres nécessaires Cmake -variables (qui findXXX normalement) manuellement.

  3. Les choses ci-dessus sont plus faciles à faire avec cmake-qt-gui (installez-le si vous ne l'avez pas). Ensuite, quand il trouve une erreur python vous pouvez simplement entrer le chemin vers le bon en utilisant l'interface graphique.

  4. Matlab/VTK not found n'est pas un désastre. Il existe de nombreux packs optionnels avec lesquels vous pouvez construire. À moins que cmake dit en fait, qu'il ne peut pas construire les modules OpenCV dont vous avez besoin sans elle ou à moins que vous ne soyez vraiment vous voulez utiliser ce paquet (par exemple pour des raisons de performance), vous n'avez rien à faire. Quels modules OpenCV nécessitent quels paquets et quels sont les avantages d'utiliser certains paquets optionnels, vous devez le découvrir individuellement pour chaque paquet. Mais si vous voulez construire avec Matlab ou VTK, vous devez vous assurer que cmake les trouvera. Lisez donc les points 1., 2., 3.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X