Author Topic: Compiling Avidemux with latest x264  (Read 7867 times)

s3rg3

  • Newbie
  • *
  • Posts: 10
Compiling Avidemux with latest x264
« on: April 02, 2013, 02:32:29 PM »
When i try to compile Avidemux with the latest x264 i get an error.

Compilation is fine with Mencoder,but may be for Avidemux there is specific option to use when compiling x264?

Anyone can help me?

Code: [Select]
-- Checking for x264
-- *****************
-- Found x264.h
--   core version: 130
-- Found x264.h
-- Found x264 library
-- Could not find x264_encoder_open_130 in /usr/local/lib/libx264.a
-- Change Dir: /home/serv/avidemux2-6/buildPluginsCommon/CMakeFiles/CMakeTmp

Run Build Command:/usr/bin/make "cmTryCompileExec362667705/fast"
/usr/bin/make -f CMakeFiles/cmTryCompileExec362667705.dir/build.make CMakeFiles/cmTryCompileExec362667705.dir/build
make[1]: Entering directory `/home/serv/avidemux2-6/buildPluginsCommon/CMakeFiles/CMakeTmp'
/usr/bin/cmake -E cmake_progress_report /home/serv/avidemux2-6/buildPluginsCommon/CMakeFiles/CMakeTmp/CMakeFiles 1
Building C object CMakeFiles/cmTryCompileExec362667705.dir/CheckFunctionExists.c.o
/usr/bin/gcc  -DCHECK_FUNCTION_EXISTS=x264_encoder_open_130 -fmessage-length=0 -fmessage-length=0     -o CMakeFiles/cmTryCompileExec362667705.dir/CheckFunctionExists.c.o   -c /home/serv/avidemux2-6/cmake_compile_check/CheckFunctionExists.c
Linking C executable cmTryCompileExec362667705
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTryCompileExec362667705.dir/link.txt --verbose=1
/usr/bin/gcc    -fmessage-length=0 -fmessage-length=0      CMakeFiles/cmTryCompileExec362667705.dir/CheckFunctionExists.c.o  -o cmTryCompileExec362667705 -rdynamic /usr/local/lib/libx264.a
/usr/local/lib/libx264.a(encoder.o): In function `x264_validate_parameters':
encoder.c:(.text+0x12e2): undefined reference to `__log2f_finite'
encoder.c:(.text+0x130a): undefined reference to `__log2f_finite'
/usr/local/lib/libx264.a(encoder.o): In function `x264_encoder_frame_end.part.4':
encoder.c:(.text+0x3fc7): undefined reference to `__log10_finite'
encoder.c:(.text+0x402d): undefined reference to `__log10_finite'
encoder.c:(.text+0x4089): undefined reference to `__log10_finite'
encoder.c:(.text+0x4120): undefined reference to `__log10_finite'
/usr/local/lib/libx264.a(encoder.o): In function `x264_encoder_open_130':
encoder.c:(.text+0x85f1): undefined reference to `__pow_finite'
encoder.c:(.text+0x8759): undefined reference to `__pow_finite'
/usr/local/lib/libx264.a(encoder.o): In function `x264_encoder_close':
encoder.c:(.text+0xcaa2): undefined reference to `__log10_finite'
encoder.c:(.text+0xcb95): undefined reference to `__log10_finite'
encoder.c:(.text+0xcc88): undefined reference to `__log10_finite'
encoder.c:(.text+0xdafc): undefined reference to `__log10_finite'
encoder.c:(.text+0xe2a7): undefined reference to `__log10_finite'
/usr/local/lib/libx264.a(lookahead.o): In function `x264_lookahead_init':
lookahead.c:(.text+0x757): undefined reference to `pthread_create'
/usr/local/lib/libx264.a(lookahead.o): In function `x264_lookahead_delete':
lookahead.c:(.text+0x888): undefined reference to `pthread_join'
/usr/local/lib/libx264.a(threadpool.o): In function `x264_threadpool_init':
threadpool.c:(.text+0x270): undefined reference to `pthread_create'
/usr/local/lib/libx264.a(threadpool.o): In function `x264_threadpool_delete':
threadpool.c:(.text+0x44a): undefined reference to `pthread_join'
/usr/local/lib/libx264.a(set.o): In function `x264_cqm_init':
set.c:(.text+0x1c13): undefined reference to `__pow_finite'
set.c:(.text+0x1c8e): undefined reference to `__pow_finite'
set.c:(.text+0x3ba0): undefined reference to `__pow_finite'
set.c:(.text+0x54ab): undefined reference to `__pow_finite'
set.c:(.text+0x748b): undefined reference to `__pow_finite'
/usr/local/lib/libx264.a(set.o):set.c:(.text+0x7507): more undefined references to `__pow_finite' follow
/usr/local/lib/libx264.a(analyse.o): In function `x264_analyse_prepare_costs':
analyse.c:(.text+0x25895): undefined reference to `__log2f_finite'
/usr/local/lib/libx264.a(ratecontrol.o): In function `predict_row_size_sum':
ratecontrol.c:(.text+0x6d6): undefined reference to `__powf_finite'
/usr/local/lib/libx264.a(ratecontrol.o): In function `clip_qscale':
ratecontrol.c:(.text+0x93d): undefined reference to `__powf_finite'
ratecontrol.c:(.text+0xc83): undefined reference to `__log_finite'
ratecontrol.c:(.text+0xc9a): undefined reference to `__log_finite'
ratecontrol.c:(.text+0xcb4): undefined reference to `__log_finite'
ratecontrol.c:(.text+0xce5): undefined reference to `__exp_finite'
/usr/local/lib/libx264.a(ratecontrol.o): In function `get_qscale':
ratecontrol.c:(.text+0x11bf): undefined reference to `__pow_finite'
ratecontrol.c:(.text+0x11e8): undefined reference to `__pow_finite'
ratecontrol.c:(.text+0x1286): undefined reference to `__powf_finite'
/usr/local/lib/libx264.a(ratecontrol.o): In function `rate_estimate_qscale':
ratecontrol.c:(.text+0x158d): undefined reference to `__pow_finite'
ratecontrol.c:(.text+0x15ba): undefined reference to `__log2f_finite'
ratecontrol.c:(.text+0x1851): undefined reference to `__powf_finite'
ratecontrol.c:(.text+0x189a): undefined reference to `__pow_finite'
ratecontrol.c:(.text+0x1c6f): undefined reference to `__log2f_finite'
ratecontrol.c:(.text+0x1dbd): undefined reference to `__pow_finite'
ratecontrol.c:(.text+0x1f00): undefined reference to `__pow_finite'
ratecontrol.c:(.text+0x1fe0): undefined reference to `__pow_finite'
ratecontrol.c:(.text+0x207f): undefined reference to `__powf_finite'
ratecontrol.c:(.text+0x21be): undefined reference to `__powf_finite'
ratecontrol.c:(.text+0x22af): undefined reference to `__powf_finite'
/usr/local/lib/libx264.a(ratecontrol.o): In function `x264_adaptive_quant_frame':
ratecontrol.c:(.text+0x2776): undefined reference to `__powf_finite'
/usr/local/lib/libx264.a(ratecontrol.o): In function `x264_ratecontrol_init_reconfigurable':
ratecontrol.c:(.text+0x34e0): undefined reference to `__pow_finite'
ratecontrol.c:(.text+0x3523): undefined reference to `__powf_finite'
/usr/local/lib/libx264.a(ratecontrol.o): In function `x264_ratecontrol_new':
ratecontrol.c:(.text+0x383b): undefined reference to `__pow_finite'
ratecontrol.c:(.text+0x3898): undefined reference to `__log2f_finite'
ratecontrol.c:(.text+0x38d2): undefined reference to `__log2f_finite'
ratecontrol.c:(.text+0x397f): undefined reference to `__pow_finite'
ratecontrol.c:(.text+0x3a20): undefined reference to `__powf_finite'
ratecontrol.c:(.text+0x3a5a): undefined reference to `__powf_finite'
ratecontrol.c:(.text+0x3e8b): undefined reference to `__powf_finite'
ratecontrol.c:(.text+0x4b90): undefined reference to `__powf_finite'
ratecontrol.c:(.text+0x4cda): undefined reference to `__log2f_finite'
ratecontrol.c:(.text+0x53c8): undefined reference to `__log2_finite'
ratecontrol.c:(.text+0x53e2): undefined reference to `__log2_finite'
ratecontrol.c:(.text+0x53f9): undefined reference to `__log2_finite'
ratecontrol.c:(.text+0x5854): undefined reference to `__powf_finite'
ratecontrol.c:(.text+0x5c1e): undefined reference to `__exp_finite'
ratecontrol.c:(.text+0x5c66): undefined reference to `__pow_finite'
ratecontrol.c:(.text+0x659b): undefined reference to `__pow_finite'
ratecontrol.c:(.text+0x6682): undefined reference to `__exp_finite'
ratecontrol.c:(.text+0x6881): undefined reference to `__pow_finite'
ratecontrol.c:(.text+0x6a88): undefined reference to `__pow_finite'
ratecontrol.c:(.text+0x6bff): undefined reference to `__pow_finite'
ratecontrol.c:(.text+0x6e2c): undefined reference to `__log2f_finite'
ratecontrol.c:(.text+0x702d): undefined reference to `__powf_finite'
ratecontrol.c:(.text+0x70a1): undefined reference to `__powf_finite'
ratecontrol.c:(.text+0x71b6): undefined reference to `__pow_finite'
ratecontrol.c:(.text+0x7290): undefined reference to `__exp_finite'
ratecontrol.c:(.text+0x73cb): undefined reference to `__pow_finite'
ratecontrol.c:(.text+0x7502): undefined reference to `__powf_finite'
ratecontrol.c:(.text+0x753f): undefined reference to `__powf_finite'
ratecontrol.c:(.text+0x7775): undefined reference to `__pow_finite'
ratecontrol.c:(.text+0x78b4): undefined reference to `__powf_finite'
ratecontrol.c:(.text+0x7ae7): undefined reference to `__pow_finite'
ratecontrol.c:(.text+0x7daf): undefined reference to `__pow_finite'
ratecontrol.c:(.text+0x8104): undefined reference to `__pow_finite'
/usr/local/lib/libx264.a(ratecontrol.o): In function `x264_ratecontrol_summary':
ratecontrol.c:(.text+0x840f): undefined reference to `__pow_finite'
ratecontrol.c:(.text+0x8434): undefined reference to `__log2f_finite'
/usr/local/lib/libx264.a(ratecontrol.o): In function `x264_ratecontrol_start':
ratecontrol.c:(.text+0x8c71): undefined reference to `__log2f_finite'
ratecontrol.c:(.text+0x8ccc): undefined reference to `__log2f_finite'
/usr/local/lib/libx264.a(ratecontrol.o): In function `x264_ratecontrol_mb':
ratecontrol.c:(.text+0x8ea9): undefined reference to `__powf_finite'
/usr/local/lib/libx264.a(ratecontrol.o): In function `x264_ratecontrol_slice_type':
ratecontrol.c:(.text+0x9a33): undefined reference to `__log2f_finite'
ratecontrol.c:(.text+0x9a8e): undefined reference to `__log2f_finite'
ratecontrol.c:(.text+0x9be8): undefined reference to `__powf_finite'
ratecontrol.c:(.text+0x9c3d): undefined reference to `__powf_finite'
/usr/local/lib/libx264.a(ratecontrol.o): In function `x264_ratecontrol_end':
ratecontrol.c:(.text+0xa176): undefined reference to `__powf_finite'
ratecontrol.c:(.text+0xa20c): undefined reference to `__powf_finite'
ratecontrol.c:(.text+0xa24a): undefined reference to `__pow_finite'
ratecontrol.c:(.text+0xa438): undefined reference to `__powf_finite'
ratecontrol.c:(.text+0xa73d): undefined reference to `__powf_finite'
ratecontrol.c:(.text+0xa991): undefined reference to `__powf_finite'
/usr/local/lib/libx264.a(ratecontrol.o): In function `x264_threads_distribute_ratecontrol':
ratecontrol.c:(.text+0xac94): undefined reference to `__powf_finite'
/usr/local/lib/libx264.a(ratecontrol.o): In function `x264_threads_merge_ratecontrol':
ratecontrol.c:(.text+0xb262): undefined reference to `__powf_finite'
/usr/local/lib/libx264.a(ratecontrol.o): In function `clip_qscale':
ratecontrol.c:(.text+0xd19): undefined reference to `__exp_finite'
/usr/local/lib/libx264.a(set.o): In function `x264_sps_init':
set.c:(.text+0xadb): undefined reference to `__log2f_finite'
collect2: error: ld returned 1 exit status
make[1]: *** [cmTryCompileExec362667705] Error 1
make[1]: Leaving directory `/home/serv/avidemux2-6/buildPluginsCommon/CMakeFiles/CMakeTmp'
make: *** [cmTryCompileExec362667705/fast] Error 2

Could not find x264

-- x264 disabled.

Jan Gruuthuse

  • Hero Member
  • *****
  • Posts: 6053
Re: Compiling Avidemux with latest x264
« Reply #1 on: April 02, 2013, 03:04:27 PM »
on ubuntu 12.04 64-bit
Code: [Select]
x264 --version
Code: [Select]
x264 0.130.2274 c832fe9
(libswscale 2.1.0)
(libavformat 53.21.1)
(ffmpegsource 2.17.0.0)
built on Mar 19 2013, gcc: 4.6.3
configuration: --bit-depth=8 --chroma-format=all
x264 license: GPL version 2 or later
libswscale/libavformat/ffmpegsource license: GPL version 2 or later
I'm using a source folder and a separate build folder. 1st time:
source x264:
Code: [Select]
git clone git://git.videolan.org/x264.git /media/Install/source/x264update git:
Code: [Select]
cd /media/Install/source/x264 && git pullbuilding:
Code: [Select]
cd /media/Install/build/x264
/media/Install/source/x264/configure --prefix=/usr
make -j4
sudo make install
-j4 = actual cores in cpu, not the Hyper-Threading ones)
then switching to avidemux_2.6_branch_mean and build avidemux 2.6.3
Code: [Select]
bash bootStrap.bash --deb --with-qt4 --without-gtk --with-clichange paths to those you're using: /media/Install/source/x264 and /media/Install/build/x264
« Last Edit: April 02, 2013, 03:08:57 PM by Jan Gruuthuse »

mean

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 10974
Re: Compiling Avidemux with latest x264
« Reply #2 on: April 02, 2013, 03:08:39 PM »
It's because you have a static x264
If you can switch to a dynamic lib x264 (i.e. a .so instead of a .a)
I'll change the code to cope with both later today

s3rg3

  • Newbie
  • *
  • Posts: 10
Re: Compiling Avidemux with latest x264
« Reply #3 on: April 02, 2013, 03:17:12 PM »
Yes i set it to static,i will try to set it dynamic.

Thank you mean

Edit: x264 work when set it to shared
« Last Edit: April 02, 2013, 03:49:00 PM by s3rg3 »