Dean Ashby wrote:
Hi,
I'm getting the following compilation error when building Cinelerra
CV from an up-to-date git repository. I'm using Raffa's instructions for
building but getting the following errors:
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -I../libmpeg3
-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
-DHAVE_MMX -DUSE_MMX -DX86_CPU -DHAVE_FIREWIRE -I/usr/include/mjpegtools
-I/usr/include/mjpegtools/mpeg2enc -I/usr/include/mjpegtools/mplex
-DENCORE_INCLUDE=\"encore50/encore.h\" -I../quicktime/ffmpeg -g -O2 -MT
qth264.lo -MD -MP -MF .deps/qth264.Tpo -c qth264.c -o
.libs/qth264.o
qth264.c: In function ‘encode’:
qth264.c:245: warning: passing argument 1 of ‘x264_nal_encode’ from
incompatible pointer type
/usr/include/x264.h:456: note: expected ‘struct x264_t *’ but argument
is of type ‘unsigned char *’
qth264.c:245: warning: passing argument 2 of ‘x264_nal_encode’ from
incompatible pointer type
/usr/include/x264.h:456: note: expected ‘uint8_t *’ but argument is of
type ‘int *’
qth264.c:245: warning: passing argument 3 of ‘x264_nal_encode’ makes
pointer from integer without a cast
/usr/include/x264.h:456: note: expected ‘struct x264_nal_t *’ but
argument is of type ‘int’
qth264.c:245: error: too many arguments to function ‘x264_nal_encode’
qth264.c:245: error: void value not ignored as it ought to be
I'm building on a Debian testing distribution with
http://www.debian-multimedia.org/ included
in my apt sources. I've got the following libx264 related packages
installed:
# dpkg -l | fgrep 264
ii libx264-104 1:0.svn20100726-0.0 x264 video coding library
ii libx264-98 1:0.svn20100620-0.1 x264 video coding library
ii libx264-dev 1:0.svn20100726-0.0 development files for libx264
/usr/include/x264.h definitely seems to be be build 104 as it has the
following symbol defined on line 38:
#define X264_BUILD 104
And the library is 104 as well:
# ls -l /usr/lib/libx264.so
lrwxrwxrwx 1 root root 14 Aug 7 08:57 /usr/lib/libx264.so -> libx264.so.104
My guess is I've got the wrong version of libx264 installed.
Any suggestions as to which version should I be using and where
can I get it?
That would be a good guess. x264 had a major API change at version 76
that is not compatible with the current official Cinelerra-CV git tree.
You can get version 75 at:
ftp://ftp.videolan.org/pub/videolan/x264/snapshots/
x264-snapshot-20090922-2245.tar.bz2
On a related note, using --with-external-ffmpeg requires ffmpeg version
<=0.5.2, and it must be compiled with --enable-swscale.
It would have saved me a lot of time had this been documented somewhere.
Below is a patch for README.BUILD if someone would like to apply it.
---------------- begin patch -----------------------
--- README.BUILD 2010-07-18 23:03:22.000000000 -0400
+++ README.BUILD.new 2010-08-14 12:50:24.000000000 -0400
@@ -52,7 +52,7 @@
- libfreetype (>=2.1.4)
- mjpegtools
- OpenEXR
- - x264
+ - x264 (<=75 x264-snapshot-20090922-2245)
- xlib-dev
- gettext
@@ -60,6 +60,10 @@
- automake 1.7
- autoconf
- libtool
+
+Using --with-external-ffmpeg requires ffmpeg version <=0.5.2,
+and it must be compiled with --enable-swscale (and many other
+options depending on your system).
The others are maybe part of your distrib. If they aren't,
you can find most of them on ftp://ftp.nerim.net/debian-marillat/
----------------- end patch -----------------------
Bo
_______________________________________________
Cinelerra mailing list
[email protected]
https://init.linpro.no/mailman/skolelinux.no/listinfo/cinelerra