Some problems with a first build.

Compiling, libraries, modules, coding guidelines and porting

Moderators: jesterKing, stiv

ant.t
Posts: 2
Joined: Mon Nov 19, 2012 7:13 am

Some problems with a first build.

Postby ant.t » Mon Nov 19, 2012 8:15 am

I'm having some issues with building the dependencies from the install_deps.sh script. The first was a problem with creating the ffmpeg-1.0 download folder, it seems that there was a mkdir -p $SRC missing on line 532.

The other is more serious and I haven't been able to fix it:

Code: Select all

libavcodec/libavcodec.a(libx264.o): In function `X264_init':
/root/src/blender-deps/ffmpeg-1.0/libavcodec/libx264.c:533: undefined reference to `x264_encoder_open_129'
collect2: error: ld returned 1 exit status
make: *** [ffmpeg_g] Error 1
make: *** Waiting for unfinished jobs....
libavcodec/libavcodec.a(libx264.o): In function `X264_init':
/root/src/blender-deps/ffmpeg-1.0/libavcodec/libx264.c:533: undefined reference to `x264_encoder_open_129'
collect2: error: ld returned 1 exit status
make: *** [ffplay_g] Error 1
FFmpeg-1.0 failed to compile, exiting


I've had a look at the offending line and there doesn't seem to be anything out of whack there:

Code: Select all

it's  x4->enc = x264_encoder_open(&x4->params);


There is a #include for x264 at the top of the file, libx264_dev is also installed from the default debian repos, I've used both true and false for the X264_USE flag and nothing seems to change the error message I get.

Any ideas what to do to fix it?

mikevan
Posts: 26
Joined: Thu Oct 21, 2010 9:40 pm

Postby mikevan » Mon Nov 19, 2012 7:44 pm

The initial setting of false is changed to true later in the script if it finds the library in question, if you haven't found it yet. If there is a problem with the library you could try re-installing the -dev file. No problems here this morning in that regard with a fresh svn update.

ant.t
Posts: 2
Joined: Mon Nov 19, 2012 7:13 am

Postby ant.t » Tue Nov 20, 2012 1:53 am

mikevan wrote:The initial setting of false is changed to true later in the script if it finds the library in question, if you haven't found it yet. If there is a problem with the library you could try re-installing the -dev file. No problems here this morning in that regard with a fresh svn update.


No luck, got a new pull today and it still failed at the same place with the same error. I already have an up to date (in debian testing) libx264-dev installed I also got xlib264-129 from debian multimedia sid and still got the same message.

stiv
Posts: 3646
Joined: Tue Aug 05, 2003 7:58 am
Location: 45N 86W

Postby stiv » Tue Nov 20, 2012 6:09 pm

Is your x264 lib showing up in the link command AND is the x264_encoder_open_129 symbol in your version of the lib?

ldo
Posts: 544
Joined: Sun Nov 07, 2010 11:30 pm
Location: Hamilton, New Zealand

Postby ldo » Sun Nov 25, 2012 1:52 am

I build both FFmpeg and x264 from source, rather than relying on slow-to-update distro packages. The respective Git repos are:

git://git.videolan.org/x264.git
git://git.videolan.org/ffmpeg.git

There is a bit of a circularity between them, in that the x264 binary depends on FFmpeg, while FFmpeg in turn depends on the x264 libraries. When there is an incompatible API change, you may find that the x264 binary fails to build, while the libraries are fine, but the build failure means you can’t do a make install: you have to manually copy the updated x264 includes and libraries into the right place, then update and install your FFmpeg, then come back and finish building and installing the x264 binary.

I’ve gone through this at least twice now.


Return to “Coding Blender”

Who is online

Users browsing this forum: No registered users and 1 guest