conda-build официальной AnacondaRecipes/opencv-feedstock не ищет libpng.h
Я загрузил официальный рецепт конды opencv в AnacondaRecipes.
Я попытался выполнить этот пакет:
conda-build recipe -c conda-forge
Я получаю следующую ошибку, когда рецепт компилирует opencv, когда вы делаете [ 72%] Built target opencv_dnn
. Ошибка следующая:
[ 67%] Building CXX object modules/imgcodecs/CMakeFiles/opencv_imgcodecs.dir/src/grfmt_png.cpp.o
/opt/conda/conda-bld/opencv_1521187259162/work/modules/imgcodecs/src/grfmt_png.cpp:62:10: fatal error: libpng/png.h: No such file or directory
#include <libpng/png.h>
^~~~~~~~~~~~~~
compilation terminated.
modules/imgcodecs/CMakeFiles/opencv_imgcodecs.dir/build.make:326: recipe for target 'modules/imgcodecs/CMakeFiles/opencv_imgcodecs.dir/src/grfmt_png.cpp.o' failed
make[2]: *** [modules/imgcodecs/CMakeFiles/opencv_imgcodecs.dir/src/grfmt_png.cpp.o] Error 1
CMakeFiles/Makefile2:4645: recipe for target 'modules/imgcodecs/CMakeFiles/opencv_imgcodecs.dir/all' failed
make[1]: *** [modules/imgcodecs/CMakeFiles/opencv_imgcodecs.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
Lookin в директории $PREFIX
, нет папки libpng, только папка libpng16:
/opt/conda/conda-bld/opencv_1521187259162/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/include/
Я подозреваю, что это должно быть связано с тем, как conda-build управляет средой пути, но я не знаю, как ее решить.
Окружающая среда: conda 4.4.11, ОС: Ubuntu 16.04.
ОБНОВЛЕНИЕ 23/03/2018
Я также пробовал:
- добавьте
libpng/png.h
в местоположение, указанное в каталоге $ PREFIX. - Добавить
/usr/include
в $PATH
Нет успеха в любом случае.
ОБНОВЛЕНИЕ 04/03/2018
-
libpng-dev
установлен в среде.
ОБНОВЛЕНИЕ 09/04/2018
ОБНОВЛЕНИЕ 12/04/2018
Ответы
Ответ 1
Таким образом, проблема, которую вы имеете здесь, в том, что вам нужна библиотека libpng-dev
установленная на вашей ОС. Поскольку вы упомянули, что работаете в Ubuntu env, вы можете просто ввести
sudo apt-get install libpng-dev
Надеюсь, это решит проблему!
ОБНОВИТЬ
Почему вы не пытались установить opencv с помощью команд, указанных в ссылке:
conda config --add channels conda-forge
conda install opencv