cmake encontrando Python3.4 não Python3.5

1

Estou tentando trabalhar com o Python3.5 no Ubuntu 16.04

Eu segui os passos da resposta para isso: Como instalar o OpenCV 3.1 para Python 3.5 no Ubuntu 16.04 LTS?

e também o link nele. Eu tive que instalar algumas outras dependências também.

Meu primeiro problema é que o cmake continua encontrando o Python3.4 e não o 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)
-- 

Existem outras dependências ausentes também mencionadas. Eu não sei o quão essencial eles são. por exemplo. Matlab:

--   Matlab:                        Matlab not found or implicitly disabled

também gtk + -3.0 embora eu achei que tinha instalado isso:

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

e alguns outros:

-- 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

Eu fiz um comando grep / sed para modificar python3.4 para 3.5 e tentei make e make install, mas ele ainda não está lá.

    
por CashCow 03.08.2016 / 20:08

1 resposta

0

Uma resposta detalhada para todos eles exigirá muito espaço e esforço, além de informações adicionais sobre cada um desses pacotes.

Mas, em geral, a estratégia é:

  1. Se o pacote não for encontrado primeiro, certifique-se de tê-lo. Por exemplo. verifique com dpkg -l "*libXXX*" . No caso de python , verifique qual python é escolhido pelo sistema com o comando which python3 . Isso não significa que o mesmo será encontrado por cmake ( cmake pode usar diferentes ordens de diretórios de pesquisa), mas é provável.

  2. Se você tiver, mas não estiver em um caminho padrão, apenas uma versão não encontrada ou diferente é encontrada, você geralmente precisa

    a) defina algumas variáveis de ambiente

    ou b) modifique os scripts findXXX.cmake que você encontra na pasta "cmake" de OpenCV source

    ou c) modifique o arquivo CMakeLists.txt do OpenCV para definir manualmente as Cmake -variables necessárias (que findXXX normalmente define).

  3. As coisas acima são mais fáceis de fazer com cmake-qt-gui (instale-o se você não tiver). Então, quando encontrar errado python , você pode simplesmente digitar o caminho para o caminho certo usando a GUI.

  4. Matlab/VTK not found não é um desastre. Existem muitos pacotes opcionais com os quais você pode construir. A menos que cmake realmente diga que não é possível construir os módulos do OpenCV que você precisa sem ele ou a menos que você queira usar este pacote (por exemplo, por motivos de desempenho), não precisa fazer nada. Quais módulos do OpenCV exigem quais pacotes e quais são as vantagens de usar certos pacotes opcionais que você precisa descobrir individualmente para cada pacote. Mas se você quer construir com o Matlab ou VTK, você precisa ter certeza de que o cmake irá encontrá-lo. Então leia os pontos 1., 2., 3.

por Noidea 29.09.2016 / 13:16