Ошибка «Файл tesseract/baseapi.h» не найден при сборке opencv из исходного кода на macOS

Ошибка «Файл tesseract/baseapi.h» не найден при сборке opencv из исходного кода на macOS

Я собираю игру opencv 4.1.0из исходников mojave, и она доходит до 54%, а затем вылетает с указанной ошибкой:

/git/opencv-4.1.0/opencv_contrib/modules/text/src/precomp.hpp:54:10:
  fatal error: 'tesseract/baseapi.h' file not found

Для этого есть проблема на GitHub:https://github.com/otiai10/gosseract/issues/40: и я применил два из рекомендуемых патчей:

на osx это решается с помощью homebrew: brew install tesseract

Заметки об этом в любом случае относятся к 2015 году и не оказали никакого влияния. Указания по преодолению этой конкретной ошибки на пути к созданию opencvна macos были бы признательны.

решение1

После небольшого изменения моего запроса в Google последнее предложение действительно работает -https://github.com/justadudewhohacks/opencv4nodejs/issues/179- вручную добавить заголовок include вCPATH:

in my case cpp command was not aware of tesseract headers.
You can see cpp-includes with command cpp -v.

Solution for me was to make tesseract-includes availble by defining export CPATH="/usr/local/Cellar/tesseract/4.0.0_1/include" and then run the build command.

Это можно применить к makeкоманде:

  CPATH=/usr/local/Cellar/tesseract/4.0.0_1/include make -j4    

решение2

@javadba, спасибо за ваше решение.


Для пользователей OSX macOS (Mojave), возможно, это поможет вам. OpenCV с поддержкой Java Руководство по OpenCV OSX

Дополнительно я сделал поддержку JAVA здесь: И запустите make с пользовательским путем TESSERACT

 cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules \
-D PYTHON3_LIBRARY=`python -c 'import subprocess ; import sys ; s = subprocess.check_output("python-config --configdir", shell=True).decode("utf-8").strip() ; (M, m) = sys.version_info[:2] ; print("{}/libpython{}.{}.dylib".format(s, M, m))'` \
-D PYTHON3_INCLUDE_DIR=`python -c 'import distutils.sysconfig as s; print(s.get_python_inc())'` \
-D PYTHON3_EXECUTABLE=$VIRTUAL_ENV/bin/python \
-D BUILD_LIBPROTOBUF_FROM_SOURCES=ON \
-D BUILD_opencv_python2=OFF \
-D BUILD_opencv_python3=ON \
-D BUILD_opencv_java=ON \
-D INSTALL_PYTHON_EXAMPLES=ON \
-D INSTALL_C_EXAMPLES=OFF \
-D OPENCV_ENABLE_NONFREE=ON \
-D BUILD_EXAMPLES=ON ..

 CPATH=/usr/local/Cellar/tesseract/4.1.0/include make 

Связанный контент