x265 dosen't support 'aarch64'

Issue #452 new
Raph K created an issue

I'd test for including aarch64 in source/CMakeList.txt and modified some compiler options to using '-mtune=native -mcpu=native' for compile source on aarch64 board ( built-in gcc for debian aarch64 ). But it failed to process of linking x265 binary as like this:

[100%] Linking CXX executable x265
libx265.so.165: undefined reference to `x265_cpu_fast_neon_mrc_test'
libx265.so.165: undefined reference to `x265::detect512()'
collect2: error: ld returned 1 exit status
CMakeFiles/cli.dir/build.make:303: recipe for target 'x265' failed

source/common/cpu.cpp exclueded detect512() for arm. -- and -- x265_cpu_fast_neon_mrc_test not included for creating library.

Hope it should be fixed.

Regards, Raph.

Comments (2)

  1. minmin

    hi, Have you solved that problem, which is x265 dosen't support 'aarch64' ? oh, my platform is centos-7.6, aarch64 .

    I change the file source/CMakeLists.txt ,add ‘aarch64’ param as follow:

    set(ARM_ALIASES armv6l armv7l aarch64)

    then make ,there are errors:

    [ 1%] Building CXX object encoder/CMakeFiles/encoder.dir/analysis.cpp.o
    c++: error: unrecognized command line option ‘-mfloat-abi=hard’
    c++: error: unrecognized command line option ‘-mfpu=neon’
    c++: error: unrecognized command line option ‘-marm’

    when I change ource/CMakeLists.txt file ,

    if(CPU_HAS_NEON)
    238 set(ARM_ARGS -march=aarch64 -mtune=native -mcpu=native -fPIC)
    239 add_definitions(-DHAVE_NEON)

    it is also error,

    [ 1%] Building CXX object common/CMakeFiles/common.dir/primitives.cpp.o
    /opt/small7/x265_3.1.1/source/common/primitives.cpp:1:0: error: unknown value ‘native’ for -mcpu
    /*****************************************************************************
    ^
    /opt/small7/x265_3.1.1/source/common/primitives.cpp:1:0: error: unknown value ‘native’ for -mtune
    make[2]: *** [common/CMakeFiles/common.dir/primitives.cpp.o] Error 1
    make[1]: *** [common/CMakeFiles/common.dir/all] Error 2
    make: *** [all] Error 2

    I look forward to hearing from you. Thank you.

  2. Log in to comment