ffmpeg-php-make: *** [ffmpeg_movie.lo] Error 1 on centos
Linux - NewbieThis Linux forum is for members that are new to Linux.
Just starting out and have a question?
If it is not in the man pages or the how-to's this is the place!
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
After moved that file to that old directory.
I got the same output for execution
No that's the "bad" time.h. According to the patch, you should remove the line "..include/libavutil/" from config.m4, so that time.h does not interfere with the system time.h.
From the make output, looks like you miss the /usr/include/time.h that comes with your system OS. For Centos it comes with the glibc-headers package. Perhaps you need to install it if it's not installed already
Quote:
libtool: compile: Failed to create `.libs'
Check the permissions, because looks like you cannot create dirs. Better compile stuff in your homedir and only run "make install" as superuser.
I guess "s make" means "sudo make" that's why you don't that error the 2nd time.
Quote:
why that makes harm to my system.
why i cant run make clean.
Apparently you can run it very well, but while "make distclean" removes all the files produced by the previous compilation, running "make clean" leaves some of them back
I dont know how to properly apply patch file.I have tried manualy to edit those three files(config.m4,ffmpeg_movie.c,ffmpeg_frame.h)
the patch file says to add"*.. include/libavutil ..*" line to config.m4 .But that file is already having that file.
And I just want to know exactly that patch file compare with which file?
Code:
[usr1@aryan ffmpeg-php]$ s patch -p1 < /usr/src/ffmpeg-php/libavutil-time.patch
patching file config.m4
Hunk #1 FAILED at 35.
1 out of 1 hunk FAILED -- saving rejects to file config.m4.rej
patching file ffmpeg_frame.h
Hunk #1 FAILED at 40.
1 out of 1 hunk FAILED -- saving rejects to file ffmpeg_frame.h.rej
patching file ffmpeg_movie.c
Hunk #1 FAILED at 36.
1 out of 1 hunk FAILED -- saving rejects to file ffmpeg_movie.c.rej
why this error occuring and i have also installed glibc already that follows
Code:
[usr1@aryan linux]$ syi glibc-2.17-55.el7.x86_64.rpm
Loaded plugins: fastestmirror, langpacks
Examining glibc-2.17-55.el7.x86_64.rpm: glibc-2.17-55.el7.x86_64
glibc-2.17-55.el7.x86_64.rpm: does not update installed package.
glibc-2.17-55.el7.x86_64.rpm: does not update installed package.
Error: Nothing to do
Code:
[usr1@aryan linux]$ syi glibc-common-2.17-55.el7.x86_64.rpm
Loaded plugins: fastestmirror, langpacks
Examining glibc-common-2.17-55.el7.x86_64.rpm: glibc-common-2.17-55.el7.x86_64
glibc-common-2.17-55.el7.x86_64.rpm: does not update installed package.
Error: Nothing to do
Code:
[usr1@aryan linux]$ syi glibc-headers-2.17-78.el7.x86_64.rpm
Loaded plugins: fastestmirror, langpacks
Examining glibc-headers-2.17-78.el7.x86_64.rpm: glibc-headers-2.17-78.el7.x86_64
glibc-headers-2.17-78.el7.x86_64.rpm: does not update installed package.
Error: Nothing to do
I have also tried to run in my home directory
that's output is follows.
I didn't make aby changes in "/usr/include/sys/types.h" file.
But why this making like follows.
Code:
[usr1@aryan ffmpeg-php]$ make
/bin/sh /home/usr1/ffmpeg-php/libtool --mode=compile cc -I. -I/home/usr1/ffmpeg-php -DPHP_ATOM_INC -I/home/usr1/ffmpeg-php/include -I/home/usr1/ffmpeg-php/main -I/home/usr1/ffmpeg-php -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -I/usr/include/php/ext -I/usr/include/php/ext/date/lib -DHAVE_CONFIG_H -g -O2 -c /home/usr1/ffmpeg-php/ffmpeg-php.c -o ffmpeg-php.lo
libtool: compile: cc -I. -I/home/usr1/ffmpeg-php -DPHP_ATOM_INC -I/home/usr1/ffmpeg-php/include -I/home/usr1/ffmpeg-php/main -I/home/usr1/ffmpeg-php -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -I/usr/include/php/ext -I/usr/include/php/ext/date/lib -DHAVE_CONFIG_H -g -O2 -c /home/usr1/ffmpeg-php/ffmpeg-php.c -fPIC -DPIC -o .libs/ffmpeg-php.o
In file included from /usr/include/stdlib.h:314:0,
from /usr/include/php/main/../main/php_config.h:2454,
from /usr/include/php/Zend/zend_config.h:1,
from /usr/include/php/Zend/zend.h:51,
from /usr/include/php/main/php.h:34,
from /home/usr1/ffmpeg-php/ffmpeg-php.c:40:
/usr/include/sys/types.h:132:18: fatal error: time.h: No such file or directory
#include <time.h>
^
compilation terminated.
make: *** [ffmpeg-php.lo] Error 1
thanks I think i am asking chilly qns .i dont know what to do.please.
I dont know how to properly apply patch file.I have tried manualy to edit those three files(config.m4,ffmpeg_movie.c,ffmpeg_frame.h)
the patch file says to add"*.. include/libavutil ..*" line to config.m4 .But that file is already having that file.
And I just want to know exactly that patch file compare with which file?
<snip>
Looks like the sources you're trying to patch, are already patched.
Quote:
[usr1@aryan linux]$ syi glibc-headers-2.17-78.el7.x86_64.rpm
Loaded plugins: fastestmirror, langpacks
Examining glibc-headers-2.17-78.el7.x86_64.rpm: glibc-headers-2.17-78.el7.x86_64
glibc-headers-2.17-78.el7.x86_64.rpm: does not update installed package.
Error: Nothing to do
I don't know what syi command is doing, but if glibc-headers is installed, I guess you have to reinstall it to get the missing time.h
Quote:
I have also tried to run in my home directory
that's output is follows.
I didn't make aby changes in "/usr/include/sys/types.h" file.
But why this making like follows.
<snip>
I told you to run it from your homedir, because you don't have to be root, or use sudo.
Of course the output will be the same if you don't fix the missing header file (time.h) problem
I'm not that optimistic. Most likely the error you get now, is because ffmpeg-php is outdated.
See here similar installation bugs that remain open.
So if you absolutely need ffmppeg-php, I guess you have to downgrade ffmpeg (perhaps php too), to a known to work version
Hi,
Sorry for my later reply .
I have also tried to install both ffmpeg 2.2.1 and ffmpeg 2.6.* versions.
But still the problem is happening .
have installed ffmpeg 2.6.3 in my centos 7 server .
when i tried to install ffpeg-php 0.6.0 I was stucked. those are follows
when i run ./configure the follwing is the output.
I think configure command also making some error.
Code:
[usr1@aryan ffmpeg-php-0.6.0]$ ./configure
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for a sed that does not truncate output... /usr/bin/sed
checking for cc... cc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether cc accepts -g... yes
checking for cc option to accept ISO C89... none needed
checking how to run the C preprocessor... cc -E
checking for icc... no
checking for suncc... no
checking whether cc understands -c and -o together... yes
checking for system library directory... lib
checking if compiler supports -R... no
checking if compiler supports -Wl,-rpath,... yes
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking target system type... x86_64-unknown-linux-gnu
checking for PHP prefix... /usr
checking for PHP includes... -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -I/usr/include/php/ext -I/usr/include/php/ext/date/lib
checking for PHP extension directory... /usr/lib64/php/modules
checking for PHP installed headers prefix... /usr/include/php
checking if debug is enabled... no
checking if zts is enabled... no
checking for re2c... no
configure: WARNING: You will need re2c 0.13.4 or later if you want to regenerate PHP parsers.
checking for gawk... gawk
checking for ffmpeg support... yes, shared
checking whether to force gd support in ffmpeg-php... no
checking for ffmpeg headers... ...found in /usr/local/include/libavcodec
checking for ffmpeg libavcodec.so... ...found in /usr/lib64
checking for ffmpeg swscale support... yes
checking how to print strings... printf
checking for a sed that does not truncate output... (cached) /usr/bin/sed
checking for fgrep... /usr/bin/grep -F
checking for ld used by cc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking how to convert x86_64-unknown-linux-gnu file names to x86_64-unknown-linux-gnu format... func_convert_file_noop
checking how to convert x86_64-unknown-linux-gnu file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf s\n
checking for ar... ar
checking for archiver @FILE support... @
checking for strip... strip
checking for ranlib... ranlib
checking for gawk... (cached) gawk
checking command to parse /usr/bin/nm -B output from cc object... ok
checking for sysroot... no
checking for mt... mt
checking if mt is a manifest tool... no
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if cc supports -fno-rtti -fno-exceptions... no
checking for cc option to produce PIC... -fPIC -DPIC
checking if cc PIC flag -fPIC -DPIC works... yes
checking if cc static flag -static works... no
checking if cc supports -c -o file.o... yes
checking if cc supports -c -o file.o... (cached) yes
checking whether the cc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
configure: creating ./config.status
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing libtool commands
Code:
[usr1@aryan ffmpeg-php-0.6.0]$ make
/bin/sh /home/usr1/ffmpeg-php-0.6.0/libtool --mode=compile cc -I. -I/home/usr1/ffmpeg-php-0.6.0 -DPHP_ATOM_INC -I/home/usr1/ffmpeg-php-0.6.0/include -I/home/usr1/ffmpeg-php-0.6.0/main -I/home/usr1/ffmpeg-php-0.6.0 -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -I/usr/include/php/ext -I/usr/include/php/ext/date/lib -I/usr/local/include/libavcodec/ -I/usr/local/include/libavformat/ -I/usr/local/include/libavutil/ -I/usr/local/include/libswscale/ -I/usr/local/include/libavfilter/ -I/usr/local/include/libavdevice/ -DHAVE_CONFIG_H -g -O2 -Wall -fno-strict-aliasing -c /home/usr1/ffmpeg-php-0.6.0/ffmpeg-php.c -o ffmpeg-php.lo
libtool: compile: cc -I. -I/home/usr1/ffmpeg-php-0.6.0 -DPHP_ATOM_INC -I/home/usr1/ffmpeg-php-0.6.0/include -I/home/usr1/ffmpeg-php-0.6.0/main -I/home/usr1/ffmpeg-php-0.6.0 -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -I/usr/include/php/ext -I/usr/include/php/ext/date/lib -I/usr/local/include/libavcodec/ -I/usr/local/include/libavformat/ -I/usr/local/include/libavutil/ -I/usr/local/include/libswscale/ -I/usr/local/include/libavfilter/ -I/usr/local/include/libavdevice/ -DHAVE_CONFIG_H -g -O2 -Wall -fno-strict-aliasing -c /home/usr1/ffmpeg-php-0.6.0/ffmpeg-php.c -fPIC -DPIC -o .libs/ffmpeg-php.o
In file included from /usr/include/sys/stat.h:106:0,
from /usr/include/php/main/php_streams.h:28,
from /usr/include/php/main/php.h:396,
from /home/usr1/ffmpeg-php-0.6.0/ffmpeg-php.c:40:
/usr/include/bits/stat.h:91:21: error: field 'st_atim' has incomplete type
struct timespec st_atim; /* Time of last access. */
^
/usr/include/bits/stat.h:92:21: error: field 'st_mtim' has incomplete type
struct timespec st_mtim; /* Time of last modification. */
^
/usr/include/bits/stat.h:93:21: error: field 'st_ctim' has incomplete type
struct timespec st_ctim; /* Time of last status change. */
^
/usr/include/bits/stat.h:152:21: error: field 'st_atim' has incomplete type
struct timespec st_atim; /* Time of last access. */
^
/usr/include/bits/stat.h:153:21: error: field 'st_mtim' has incomplete type
struct timespec st_mtim; /* Time of last modification. */
^
/usr/include/bits/stat.h:154:21: error: field 'st_ctim' has incomplete type
struct timespec st_ctim; /* Time of last status change. */
^
In file included from /usr/include/php/main/php_streams.h:28:0,
from /usr/include/php/main/php.h:396,
from /home/usr1/ffmpeg-php-0.6.0/ffmpeg-php.c:40:
/usr/include/sys/stat.h:366:31: error: array type has incomplete element type
const struct timespec __times[2],
^
/usr/include/sys/stat.h:373:54: error: array type has incomplete element type
extern int futimens (int __fd, const struct timespec __times[2]) __THROW;
^
In file included from /usr/include/php/main/php.h:402:0,
from /home/usr1/ffmpeg-php-0.6.0/ffmpeg-php.c:40:
/usr/include/php/TSRM/tsrm_virtual_cwd.h:218:2: error: unknown type name 'time_t'
time_t expires;
^
/usr/include/php/TSRM/tsrm_virtual_cwd.h:246:86: error: unknown type name 'time_t'
CWD_API realpath_cache_bucket* realpath_cache_lookup(const char *path, int path_len, time_t t TSRMLS_DC);
^
/home/usr1/ffmpeg-php-0.6.0/ffmpeg-php.c: In function 'zm_startup_ffmpeg':
/home/usr1/ffmpeg-php-0.6.0/ffmpeg-php.c:94:5: warning: implicit declaration of function 'avcodec_init' [-Wimplicit-function-declaration]
avcodec_init();
^
make: *** [ffmpeg-php.lo] Error 1
This is the error you got in your OP and nothing seems to solve it.
According to this post here at LQ, you need a really old version of ffmpeg (2-3 yrs old)
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.