[x265] [PATCH RFC] cpu-a: remove unused safe_intel_cpu_indicator_init routine

Steve Borho steve at borho.org
Sat Oct 5 21:14:06 CEST 2013


On Sat, Oct 5, 2013 at 1:00 PM, Derek Buitenhuis <derek.buitenhuis at gmail.com
> wrote:

> On 10/4/2013 12:22 AM, Derek Buitenhuis wrote:
> > Queued to test tomorrow morn.
>

Thanks for testing

Findings:
> t
> Lib links via:
>
> /usr/bin/c++  -fPIC  -fPIC -O3 -DNDEBUG  -shared -Wl,-soname,libx265.so -o
> libx265.so CMakeFiles/x265.dir/dllmain.cpp.o common/libcommon.a
> encoder/libencoder.a common/vec/libPrimitivesVec.a
> common/x86/libPrimitivesASM.a -lpthread -lm -lrt
>

this looks somewhat sane, ignoring the redundant -fPIC.  Though I wonder if
the link order is wrong for GCC.  It might be discarding much of
libcommon.a because it is listed before libencoder.a


> x265 links via:
>
> /usr/bin/c++    -fPIC -O3 -DNDEBUG  -fPIC
> CMakeFiles/cli.dir/input/input.cpp.o CMakeFiles/cli.dir/input/y4m.cpp.o
> CMakeFiles/cli.dir/input/yuv.cpp.o CMakeFiles/cli.dir/output/output.cpp.o
> CMakeFiles/cli.dir/output/y4m.cpp.o CMakeFiles/cli.dir/output/yuv.cpp.o
> CMakeFiles/cli.dir/x265.cpp.o CMakeFiles/cli.dir/compat/msvc/getopt.c.o  -o
> x265 -rdynamic libx265.so -lpthread -lm -lrt common/libcommon.a
> encoder/libencoder.a common/vec/libPrimitivesVec.a
> common/x86/libPrimitivesASM.a -Wl,-rpath,/mnt/tc/dev/b
>
> Obviously wrong, since it includes the .a files.
>

Yeah; I need to figure out why it's adding static libs as well.


> Also libx265.so doesn't link to third party libs properly.
>
> I tested with my patch to Libav and got:
>
> check_func x265_encoder_encode -lx265 -lstdc++
> check_ld -lx265 -lstdc++
> check_cc
> BEGIN /tmp/ffconf.TrwduATY.c
>     1   extern int x265_encoder_encode();
>     2   int main(void){ x265_encoder_encode(); }
> END /tmp/ffconf.TrwduATY.c
> clang -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
> -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -std=c99 -fomit-frame-pointer
> -pthread -c -o /tmp/ffconf.eeq38c5j.o /tmp/ffconf.TrwduATY.c
> clang -Wl,--as-needed -o /tmp/ffconf.nF7C6wIq /tmp/ffconf.eeq38c5j.o
> -lx265 -lstdc++ -lm -pthread -lbz2 -lz
> /usr/local/lib/libx265.so: undefined reference to
> `x265::TComSampleAdaptiveOffset::m_numClass'
>
<snip>

libcommon.a symbols are missing somehow

--
Steve
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/x265-devel/attachments/20131005/e1bb81ff/attachment-0001.html>


More information about the x265-devel mailing list