php-opencv icon indicating copy to clipboard operation
php-opencv copied to clipboard

Opencv 4.1.1 / php-opencv 3.3.0 / CentOS 7.7.1908 - Make fail

Open benjy8001 opened this issue 6 years ago • 1 comments

Hello,

I try to build php-opencv on centos 7, with php 7.2 and opencv 4.1.1, but it fail.

yum -y install centos-release-scl && yum makecache devtoolset-7-gcc devtoolset-7-gcc-c++
scl enable devtoolset-7 bash
cd /tmp
wget https://github.com/hihozhou/php-opencv/archive/3.3.0.zip && \
unzip 3.3.0.zip && \
rm 3.3.0.zip && \
cd php-opencv-3.3.0 && \
phpize && \
./configure --with-php-config=/usr/bin/php-config && \
make

I also try with ./configure CXX='g++ -std=gnu++11' --with-php-config=/usr/bin/php-config, but same issue ..

Below, the log of the make command

# make
/bin/sh /tmp/php-opencv-3.3.0/libtool --mode=compile g++ -std=gnu++11 -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1 -I. -I/tmp/php-opencv-3.3.0 -DPHP_ATOM_INC -I/tmp/php-opencv-3.3.0/include -I/tmp/php-opencv-3.3.0/main -I/tmp/php-opencv-3.3.0 -I/opt/rh/rh-php72/root/usr/include/php -I/opt/rh/rh-php72/root/usr/include/php/main -I/opt/rh/rh-php72/root/usr/include/php/TSRM -I/opt/rh/rh-php72/root/usr/include/php/Zend -I/opt/rh/rh-php72/root/usr/include/php/ext -I/opt/rh/rh-php72/root/usr/include/php/ext/date/lib -I/usr/local/include/opencv4/opencv -I/usr/local/include/opencv4  -DHAVE_CONFIG_H  -g -O2   -c /tmp/php-opencv-3.3.0/source/opencv2/core/opencv_mat.cc -o source/opencv2/core/opencv_mat.lo 
libtool: compile:  g++ -std=gnu++11 -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1 -I. -I/tmp/php-opencv-3.3.0 -DPHP_ATOM_INC -I/tmp/php-opencv-3.3.0/include -I/tmp/php-opencv-3.3.0/main -I/tmp/php-opencv-3.3.0 -I/opt/rh/rh-php72/root/usr/include/php -I/opt/rh/rh-php72/root/usr/include/php/main -I/opt/rh/rh-php72/root/usr/include/php/TSRM -I/opt/rh/rh-php72/root/usr/include/php/Zend -I/opt/rh/rh-php72/root/usr/include/php/ext -I/opt/rh/rh-php72/root/usr/include/php/ext/date/lib -I/usr/local/include/opencv4/opencv -I/usr/local/include/opencv4 -DHAVE_CONFIG_H -g -O2 -c /tmp/php-opencv-3.3.0/source/opencv2/core/opencv_mat.cc  -fPIC -DPIC -o source/opencv2/core/.libs/opencv_mat.o
/tmp/php-opencv-3.3.0/source/opencv2/core/opencv_mat.cc: In function 'void zim_opencv_mat_print(zend_execute_data*, zval*)':
/tmp/php-opencv-3.3.0/source/opencv2/core/opencv_mat.cc:99:37: error: invalid conversion from 'int' to 'cv::Formatter::FormatType' [-fpermissive]
     std::cout << format(*(obj->mat),int(type)) << std::endl;
                                     ^~~~~~~~~
In file included from /usr/local/include/opencv4/opencv2/core.hpp:3289:0,
                 from /usr/local/include/opencv4/opencv2/core/core.hpp:48,
                 from /tmp/php-opencv-3.3.0/source/opencv2/core/../../../php_opencv.h:44,
                 from /tmp/php-opencv-3.3.0/source/opencv2/core/opencv_mat.cc:18:
/usr/local/include/opencv4/opencv2/core/operations.hpp:435:16: note:   initializing argument 2 of 'cv::Ptr<cv::Formatted> cv::format(cv::InputArray, cv::Formatter::FormatType)'
 Ptr<Formatted> format(InputArray mtx, Formatter::FormatType fmt)
                ^~~~~~
make: *** [source/opencv2/core/opencv_mat.lo] Error 1

Any one can help me ?

benjy8001 avatar Sep 24 '19 15:09 benjy8001

For me it was a bug from php 7.4 so I downgraded it to 7.3

sihwa-park avatar Nov 08 '20 14:11 sihwa-park