erro Cmake quando tento instalar o Opencv 3.1

1

Eu quero compilar e instalar o OpenCV 3.1 no meu Ubuntu 15.10. Eu segui este tutorial . Depois que eu executei o comando cmake, a instalação começou, mas o processo retornou o erro, e TODOS OS ARQUIVOS EM MEU UBUNTU LIGARAM SOMENTE A LEITURA!

Aqui está o registro de entrada: link

Eu não entendo muito bem o cmake. Alguém pode me ajudar?

    
por Guilherme Mauro 04.03.2016 / 21:31

2 respostas

3

É um problema conhecido com 16.04. Um relatório de bug já foi preenchido e deve ser corrigido em breve. Por enquanto, eu consertei isso:

sudo -i
mkdir /usr/include/ffmpeg
cd /usr/include/ffmpeg
ln -sf /usr/include/x86_64-linux-gnu/libavcodec/*.h ./
ln -sf /usr/include/x86_64-linux-gnu/libavformat/*.h ./
ln -sf /usr/include/x86_64-linux-gnu/libswscale/*.h ./

Basicamente, você cria links em / usr / include / ffmpeg para todos os arquivos .h nos diretórios: / usr / include / x86_64-linux-gnu / libavcodec / / usr / include / x86_64-linux-gnu / libavformat / / usr / include / x86_64-linux-gnu / libswscale /

Consegui evitar o problema sys / videoio.h e o problema linux / videodev.h usando o seguinte comando cmake (note que você deve ter o checkout do opencv_contrib e ajustar o caminho relativo abaixo para o seu caso). Você também deve executar este comando cmake duas vezes ou a parte Python3 por algum motivo não será atendida. Eu não sei porque o comando cmake abaixo corrigiu os problemas para mim, eu acabei de descobrir depois de uma longa investigação (talvez com o comando cmake abaixo a correção acima não seja sequer necessária, eu não sei).

cmake \
  -D CMAKE_BUILD_TYPE=RELEASE \
  -D CMAKE_INSTALL_PREFIX=/usr/local \
  -D WITH_TBB=ON \
  -D WITH_V4L=ON \
  -D WITH_QT=ON \
  -D WITH_OPENGL=ON \
  -D WITH_CUDA=ON \
  -D ENABLE_FAST_MATH=1 \
  -D CUDA_FAST_MATH=1 \
  -D CUDA_NVCC_FLAGS="-D_FORCE_INLINES" \
  -D WITH_CUBLAS=1 \
  -D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib/modules \
  -D BUILD_TESTS=OFF \
  -D BUILD_PERF_TESTS=OFF \
  -D BUILD_OPENCV_PYTHON3=1 \
  -D PYTHON3_EXECUTABLE=$(which python3) \
  -D PYTHON3_INCLUDE_DIR=$(python3 -c "from distutils.sysconfig import get_python_inc; print(get_python_inc())") \
  -D PYTHON3_LIBRARIES=$(python3 -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())") ..
    
por mbello 04.09.2016 / 05:46
0

A linha 86 indica que você está perdendo o cabeçalho libavformat da biblioteca ffmpeg:

home / guilherme / opencv / compilação / CMakeFiles / CMakeTmp / CheckIncludeFile.c: 1: 29: erro fatal: ffmpeg / avformat.h: Nenhum desses arquivos ou diretório

Existem vários pacotes que você precisa instalar antes de compilar, que são listado nas instruções de instalação do Linux

    
por bkloppenborg 07.03.2016 / 03:51