Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
0.16.0
-
None
-
None
Description
I want to cross compile thrift 0.16.0 for arm.
After running bootstrap and configure with proper parameters, I run make. An error occured:
Making all in cpp
make[3]: Entering directory `/root/build/thrift-0.16.0/lib/cpp'
Making all in .
make[4]: Entering directory `/root/build/thrift-0.16.0/lib/cpp'
depbase=`echo src/thrift/TApplicationException.lo | sed 's|[^/]*$|.deps/&|;s|\.lo$||'`;\
/bin/sh ../../libtool --tag=CXX --mode=compile aarch64-kedacom-linux-gnu-g++ -std=c++11 -DHAVE_CONFIG_H -I./src -D_STDC_FORMAT_MACROS -D_STDC_LIMIT_MACROS -march=armv8-a -Wall -Wextra -pedantic -march=armv8-a -MT src/thrift/TApplicationException.lo -MD -MP -MF $depbase.Tpo -c -o src/thrift/TApplicationException.lo src/thrift/TApplicationException.cpp &&\
mv -f $depbase.Tpo $depbase.Plo
libtool: compile: aarch64-kedacom-linux-gnu-g++ -std=c++11 -DHAVE_CONFIG_H -I./src -D_STDC_FORMAT_MACROS -D_STDC_LIMIT_MACROS -march=armv8-a -Wall -Wextra -pedantic -march=armv8-a -MT src/thrift/TApplicationException.lo -MD -MP -MF src/thrift/.deps/TApplicationException.Tpo -c src/thrift/TApplicationException.cpp -fPIC -DPIC -o src/thrift/.libs/TApplicationException.o
libtool: compile: aarch64-kedacom-linux-gnu-g++ -std=c++11 -DHAVE_CONFIG_H -I./src -D_STDC_FORMAT_MACROS -D_STDC_LIMIT_MACROS -march=armv8-a -Wall -Wextra -pedantic -march=armv8-a -MT src/thrift/TApplicationException.lo -MD -MP -MF src/thrift/.deps/TApplicationException.Tpo -c src/thrift/TApplicationException.cpp -o src/thrift/TApplicationException.o >/dev/null 2>&1
depbase=`echo src/thrift/TOutput.lo | sed 's|[^/]*$|.deps/&|;s|\.lo$||'`;\
/bin/sh ../../libtool --tag=CXX --mode=compile aarch64-kedacom-linux-gnu-g++ -std=c++11 -DHAVE_CONFIG_H -I./src -D_STDC_FORMAT_MACROS -D_STDC_LIMIT_MACROS -march=armv8-a -Wall -Wextra -pedantic -march=armv8-a -MT src/thrift/TOutput.lo -MD -MP -MF $depbase.Tpo -c -o src/thrift/TOutput.lo src/thrift/TOutput.cpp &&\
mv -f $depbase.Tpo $depbase.Plo
libtool: compile: aarch64-kedacom-linux-gnu-g++ -std=c++11 -DHAVE_CONFIG_H -I./src -D_STDC_FORMAT_MACROS -D_STDC_LIMIT_MACROS -march=armv8-a -Wall -Wextra -pedantic -march=armv8-a -MT src/thrift/TOutput.lo -MD -MP -MF src/thrift/.deps/TOutput.Tpo -c src/thrift/TOutput.cpp -fPIC -DPIC -o src/thrift/.libs/TOutput.o
src/thrift/TOutput.cpp: In static member function ‘static std::__cxx11::string apache::thrift::TOutput::strerror_s(int)’:
src/thrift/TOutput.cpp:115:22: error: invalid conversion from ‘char*’ to ‘int’ [-fpermissive]
int rv = strerror_r(errno_copy, b_errbuf, sizeof(b_errbuf));
~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[4]: *** [src/thrift/TOutput.lo] Error 1
make[4]: Leaving directory `/root/build/thrift-0.16.0/lib/cpp'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/root/build/thrift-0.16.0/lib/cpp'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/root/build/thrift-0.16.0/lib'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/root/build/thrift-0.16.0'
make: *** [all] Error 2
How to solve it?