2016-09-20 18 views
6

Podążałem za tym http://www.pyimagesearch.com/2015/06/15/install-opencv-3-0-and-python-2-7-on-osx/, aby zainstalować OpenCV na moim mac. Kiedy zrobić ten krok: $ make -j4 problemem stało:Błąd krytyczny: plik "QTKit/QTKit.h" nie został znaleziony podczas budowania OpenCV na komputerze Mac

fatal error: 
     'QTKit/QTKit.h' file not found 
#import <QTKit/QTKit.h> 
     ^1 error generated. make[2]: *** [modules/videoio/CMakeFiles/opencv_videoio.dir/src/cap_qtkit.mm.o] 
Error 1 make[1]: *** 
[modules/videoio/CMakeFiles/opencv_videoio.dir/all] Error 2 make: *** 
[all] Error 2 
+0

Proponuję użyć Anaconda, rzucić okiem na [ten poradnik] (https: //rivercitylabs.org/up-and-running-with-opencv3-and-python-3-anaconda-edition/) – AlvaroP

+0

Nie jesteś sam z problemem QTKit i Xcode8: https://github.com/Homebrew/homebrew- science/issues/4303 – k06a

Odpowiedz

3

Spróbuj go budować tak zamiast:

cmake -DWITH_QUICKTIME=OFF -DWITH_GSTREAMER=OFF -DWITH_FFMPEG=OFF -DCMAKE_C_COMPILER=/usr/bin/clang -DCMAKE_CXX_COMPILER=/usr/bin/clang++ -DCMAKE_BUILD_TYPE=Release .. ; make -j4 
+0

Pracowałem dla mnie, aby rozwiązać błąd QTKit - poprowadź mnie do tego błędu - http://stackoverflow.com/questions/29724408/build-opencv-2-4-10-on-mac-10-10 -3-nie powiodło się – mrwaim

2

możesz spróbować zainstalować OpenCV na Mac przy użyciu napar?

brew reinstall opencv3 --HEAD --with-python3 --with-ffmpeg --with-tbb --with-contrib 

Pracowałem dla mnie na MAC OS SIERRA.

0

Ten błąd wynika z tego, że pakiet QuickTime został wycofany z systemu OS X w wersji 10,9, a firma Apple sugeruje użycie architektury AVFoundation zamiast wersji Apple API Reference.

OpenCV (wersja 3.1.0) jest przekazywana do zestawu QuickTime Kit. Tak więc, kiedy próbujesz zainstalować OpenCV (przed wersją 3.1.0) na OSX Sierra, spowoduje to błąd podczas tworzenia.

Spróbuj zainstalować wersję główną opencv będzie w porządku!

OpenCV miał AVFoundation ramowa obsługiwane https://github.com/opencv/opencv/pull/7159

0

użytku --with-quicktime lub -DWITH_QUICKTIME=TRUE. użyje QUITCKTIME zamiast QTKit dla video I/O

1

Oto rozwiązanie obejście, aby rozwiązać problem:

  1. Pobierz MacOSX SDKhere.
  2. Pliki głowic wyciągów od MacOSX10.11.sdk/MacOSX10.11.sdk/System/Library/Frameworks/QTKit.framework/Headers/
  3. Utwórz folder w folderze źródłowym pliku opencv: opencv-3.2.0/modules/highgui/src/QTKit i skopiuj wszystkie pliki nagłówkowe do folderu.
  4. Postępuj zgodnie z regularnymi krokami kompilacji opencv. Po uruchomieniu zrobić -j8, nie muszą ustawić "-DWITH_QUICKTIME=OFF -DWITH_GSTREAMER=OFF -DWITH_FFMPEG=OFF"

Działa to dla opencv2.x i 3.x