When installing ffmpeg-php-0.6.0 getting the the following errors
In file included from /usr/include/sys/stat.h:107, from /usr/include/php/main/php_streams.h:28, from /usr/include/php/main/php.h:395, from /root/ffmpeg-php-0.6.0/ffmpeg-php.c:40: /usr/include/bits/stat.h:91: error: field ‘st_atim’ has incomplete type /usr/include/bits/stat.h:92: error: field ‘st_mtim’ has incomplete type /usr/include/bits/stat.h:93: error: field ‘st_ctim’ has incomplete type /usr/include/bits/stat.h:152: error: field ‘st_atim’ has incomplete type /usr/include/bits/stat.h:153: error: field ‘st_mtim’ has incomplete type /usr/include/bits/stat.h:154: error: field ‘st_ctim’ has incomplete type In file included from /usr/include/php/main/php_streams.h:28, from /usr/include/php/main/php.h:395, from /root/ffmpeg-php-0.6.0/ffmpeg-php.c:40: /usr/include/sys/stat.h:367: error: array type has incomplete element type /usr/include/sys/stat.h:374: error: array type has incomplete element type In file included from /usr/include/php/main/php.h:401, from /root/ffmpeg-php-0.6.0/ffmpeg-php.c:40: /usr/include/php/TSRM/tsrm_virtual_cwd.h:218: error: expected specifier-qualifier-list before ‘time_t’ /usr/include/php/TSRM/tsrm_virtual_cwd.h:246: error: expected declaration specifiers or ‘...’ before ‘time_t’ /root/ffmpeg-php-0.6.0/ffmpeg-php.c: In function ‘zm_startup_ffmpeg’: /root/ffmpeg-php-0.6.0/ffmpeg-php.c:94: warning: implicit declaration of function ‘avcodec_init’
Then, looking up for hours, it seems that time.h for some apparent reason has been used in ffmpeg 1.2.1 (this is what I tested). This caused conflict with the OS’s own file of the same name.
I have found a git repo maintained bytony2001 who has made changes to the original project and using his repo has helped me install it successfully on CentOS-6.2, CentOS-6.3 and CentOS-6.4
Follow the steps below to install it
git clone https://github.com/tony2001/ffmpeg-php.git cd ffmpeg-php phpize ./configure make && make install