[x265] [PATCH RFC] manually align the stack for GCC x86_32 builds

Steve Borho steve at borho.org
Fri Apr 18 20:22:57 CEST 2014


On Fri, Apr 18, 2014 at 6:16 AM, Murugan Vairavel
<murugan at multicorewareinc.com> wrote:
> Hi,
>
> We try to build the code on 32-bit machine on WinXp platform with GCC,
> We got build error after applying this patch:
>
> [ 78%] Building CXX object encoder/CMakeFiles/encoder.dir/compress.cpp.obj
> [ 79%] Building CXX object encoder/CMakeFiles/encoder.dir/reference.cpp.obj
> [ 80%] Building CXX object encoder/CMakeFiles/encoder.dir/encoder.cpp.obj
> [ 81%] Building CXX object encoder/CMakeFiles/encoder.dir/api.cpp.obj
> c:/Documents and Settings/rajesh/Desktop/x265/source/encoder/api.cpp: In
> functio
> n 'int encode_stack_frame(x265::Encoder*, bool, const x265_picture*,
> x265_pictur
> e*, x265::NALUnitEBSP**)':
> c:/Documents and Settings/rajesh/Desktop/x265/source/encoder/api.cpp:112:1:
> warn
> ing: no return statement in function returning non-void [-Wreturn-type]

fixed

>  }
>  ^
> [ 82%] Building CXX object
> encoder/CMakeFiles/encoder.dir/weightPrediction.cpp.o
> bj
> [ 82%] Built target encoder
> Linking CXX static library libx265.a
> [ 82%] Built target x265-static
> Scanning dependencies of target cli
> [ 84%] Building CXX object CMakeFiles/cli.dir/input/input.cpp.obj
> [ 85%] Building CXX object CMakeFiles/cli.dir/input/y4m.cpp.obj
> [ 86%] Building CXX object CMakeFiles/cli.dir/input/yuv.cpp.obj
> [ 87%] Building CXX object CMakeFiles/cli.dir/output/output.cpp.obj
> [ 88%] Building CXX object CMakeFiles/cli.dir/output/y4m.cpp.obj
> [ 89%] Building CXX object CMakeFiles/cli.dir/output/yuv.cpp.obj
> [ 90%] Building CXX object CMakeFiles/cli.dir/filters/filters.cpp.obj
> [ 91%] Building CXX object CMakeFiles/cli.dir/x265.cpp.obj
> Linking CXX executable x265.exe
> libx265.a(threading.cpp.obj):threading.cpp:(.text+0x23): undefined reference
> to
> `x265_stack_align(void (*)(), ...)'
> libx265.a(api.cpp.obj):api.cpp:(.text+0x2ec): undefined reference to
> `x265_stack
> _align(void (*)(), ...)'
> collect2.exe: error: ld returned 1 exit status
> make[2]: *** [x265.exe] Error 1
> make[1]: *** [CMakeFiles/cli.dir/all] Error 2
> make: *** [all] Error 2

were you building without assembly? i.e: did cmake find yasm?

-- 
Steve Borho


More information about the x265-devel mailing list