poco
poco copied to clipboard
build for arm failed [no stack trace because unwind library not available]
code is the master,
My gcc is
Using built-in specs.
COLLECT_GCC=arm-linux-gnueabihf-g++
COLLECT_LTO_WRAPPER=/opt/zlg/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/../libexec/gcc/arm-linux-gnueabihf/4.9.2/lto-wrapper
Target: arm-linux-gnueabihf
Configured with: /cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/.build/src/gcc-linaro-4.9-2014.09/configure --build=i686-build_pc-linux-gnu --host=i686-build_pc-linux-gnu --target=arm-linux-gnueabihf --prefix=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/install --with-sysroot=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/install/arm-linux-gnueabihf/libc --enable-languages=c,c++,fortran --disable-multilib --enable-multiarch --with-arch=armv7-a --with-tune=cortex-a9 --with-fpu=vfpv3-d16 --with-float=hard --with-pkgversion='crosstool-NG linaro-1.13.1-4.9-2014.09 - Linaro GCC 4.9-2014.09' --with-bugurl=https://bugs.launchpad.net/gcc-linaro --enable-__cxa_atexit --enable-libmudflap --enable-libgomp --enable-libssp --with-gmp=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/.build/arm-linux-gnueabihf/build/static --with-mpfr=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/.build/arm-linux-gnueabihf/build/static --with-mpc=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/.build/arm-linux-gnueabihf/build/static --with-isl=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/.build/arm-linux-gnueabihf/build/static --with-cloog=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/.build/arm-linux-gnueabihf/build/static --with-libelf=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/.build/arm-linux-gnueabihf/build/static --enable-threads=posix --disable-libstdcxx-pch --enable-linker-build-id --enable-plugin --enable-gold --with-local-prefix=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/install/arm-linux-gnueabihf/libc --enable-c99 --enable-long-long --with-mode=thumb --disable-multilib --with-float=hard
Thread model: posix
gcc version 4.9.2 20140904 (prerelease) (crosstool-NG linaro-1.13.1-4.9-2014.09 - Linaro GCC 4.9-2014.09
I use cmake to build, it tells me follow
[main] Building folder: poco-master
[build] Starting build
[proc] Executing command: /usr/bin/cmake --build /home/layty/work/Test/poco/poco-master/build --config Debug --target all --
[build] [6/613 0% :: 0.869] Building CXX object Foundation/CMakeFiles/Foundation.dir/src/DigestEngine.cpp.o
[build] FAILED: Foundation/CMakeFiles/Foundation.dir/src/DigestEngine.cpp.o
[build] /opt/zlg/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-g++ -DFoundation_EXPORTS -DPOCO_ENABLE_CPP11 -DPOCO_ENABLE_CPP14 -DPOCO_HAVE_FD_EPOLL -DPOCO_OS_FAMILY_UNIX -D_DEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -D_REENTRANT -D_THREAD_SAFE -D_XOPEN_SOURCE=500 -I../Foundation/include -I../Foundation/src -g -fPIC -std=gnu++14 -MD -MT Foundation/CMakeFiles/Foundation.dir/src/DigestEngine.cpp.o -MF Foundation/CMakeFiles/Foundation.dir/src/DigestEngine.cpp.o.d -o Foundation/CMakeFiles/Foundation.dir/src/DigestEngine.cpp.o -c ../Foundation/src/DigestEngine.cpp
[build] ../Foundation/src/DigestEngine.cpp: In member function ‘void Poco::Placeholder<PlaceholderT, SizeV>::destruct(bool) [with PlaceholderT = Poco::Any::ValueHolder; unsigned int SizeV = 64u]’:
[build] ../Foundation/src/DigestEngine.cpp:105:1: internal compiler error: in get_polymorphic_call_info, at ipa-devirt.c:1267
[build] } // namespace Poco
[build] ^
[build] no stack trace because unwind library not available
[build] Please submit a full bug report,
[build] with preprocessed source if appropriate.
[build] See <https://bugs.launchpad.net/gcc-linaro> for instructions.
[build] [6/613 0% :: 0.919] Building CXX object Foundation/CMakeFiles/Foundation.dir/src/JSONString.cpp.o
[build] [6/613 0% :: 1.248] Building CXX object Foundation/CMakeFiles/Foundation.dir/src/Format.cpp.o
[build] FAILED: Foundation/CMakeFiles/Foundation.dir/src/Format.cpp.o
[build] /opt/zlg/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-g++ -DFoundation_EXPORTS -DPOCO_ENABLE_CPP11 -DPOCO_ENABLE_CPP14 -DPOCO_HAVE_FD_EPOLL -DPOCO_OS_FAMILY_UNIX -D_DEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -D_REENTRANT -D_THREAD_SAFE -D_XOPEN_SOURCE=500 -I../Foundation/include -I../Foundation/src -g -fPIC -std=gnu++14 -MD -MT Foundation/CMakeFiles/Foundation.dir/src/Format.cpp.o -MF Foundation/CMakeFiles/Foundation.dir/src/Format.cpp.o.d -o Foundation/CMakeFiles/Foundation.dir/src/Format.cpp.o -c ../Foundation/src/Format.cpp
[build] ../Foundation/src/Format.cpp: In member function ‘void Poco::Placeholder<PlaceholderT, SizeV>::destruct(bool) [with PlaceholderT = Poco::Any::ValueHolder; unsigned int SizeV = 64u]’:
[build] ../Foundation/src/Format.cpp:301:1: internal compiler error: in get_polymorphic_call_info, at ipa-devirt.c:1267
[build] } // namespace Poco
[build] ^
[build] no stack trace because unwind library not available
[build] Please submit a full bug report,
[build] with preprocessed source if appropriate.
[build] See <https://bugs.launchpad.net/gcc-linaro> for instructions.
[build] [6/613 0% :: 1.299] Building CXX object Foundation/CMakeFiles/Foundation.dir/src/Latin1Encoding.cpp.o
[build] [6/613 0% :: 1.313] Building CXX object Foundation/CMakeFiles/Foundation.dir/src/AsyncChannel.cpp.o
[build] FAILED: Foundation/CMakeFiles/Foundation.dir/src/AsyncChannel.cpp.o
[build] /opt/zlg/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-g++ -DFoundation_EXPORTS -DPOCO_ENABLE_CPP11 -DPOCO_ENABLE_CPP14 -DPOCO_HAVE_FD_EPOLL -DPOCO_OS_FAMILY_UNIX -D_DEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -D_REENTRANT -D_THREAD_SAFE -D_XOPEN_SOURCE=500 -I../Foundation/include -I../Foundation/src -g -fPIC -std=gnu++14 -MD -MT Foundation/CMakeFiles/Foundation.dir/src/AsyncChannel.cpp.o -MF Foundation/CMakeFiles/Foundation.dir/src/AsyncChannel.cpp.o.d -o Foundation/CMakeFiles/Foundation.dir/src/AsyncChannel.cpp.o -c ../Foundation/src/AsyncChannel.cpp
[build] ../Foundation/src/AsyncChannel.cpp: In member function ‘void Poco::Placeholder<PlaceholderT, SizeV>::destruct(bool) [with PlaceholderT = Poco::Any::ValueHolder; unsigned int SizeV = 64u]’:
[build] ../Foundation/src/AsyncChannel.cpp:196:1: internal compiler error: in get_polymorphic_call_info, at ipa-devirt.c:1267
[build] } // namespace Poco
[build] ^
[build] no stack trace because unwind library not available
[build] Please submit a full bug report,
[build] with preprocessed source if appropriate.
[build] See <https://bugs.launchpad.net/gcc-linaro> for instructions.
[build] [6/613 0% :: 1.324] Building CXX object Foundation/CMakeFiles/Foundation.dir/src/Latin2Encoding.cpp.o
[build] ninja: build stopped: subcommand failed.
[build] Build finished with exit code 1
Is it means that does not surpport ?
I have test Release 1.11.3 is build ok
but Release 1.12.0 is error
you have an old compiler, #define POCO_NO_SOO
as a workaround
https://github.com/pocoproject/poco/blob/92fac970d4b6161fd58335bfe1492689ba5a80a3/Foundation/include/Poco/Config.h#L74
I have change that,
add cxx and c flag
# C++11/14 compiler flags
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c11 ")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14 ")
include(CXX1x)
check_for_cxx14_compiler(CXX14_COMPILER)
but show follow
[build] /opt/zlg/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-g++ -DNet_EXPORTS -DPOCO_ENABLE_CPP11 -DPOCO_ENABLE_CPP14 -DPOCO_HAVE_FD_EPOLL -DPOCO_OS_FAMILY_UNIX -D_DEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -D_REENTRANT -D_THREAD_SAFE -D_XOPEN_SOURCE=500 -I../Net/include -I../Net/src -I../Foundation/include -std=c++14 -g -fPIC -std=gnu++14 -MD -MT Net/CMakeFiles/Net.dir/src/SocketProactor.cpp.o -MF Net/CMakeFiles/Net.dir/src/SocketProactor.cpp.o.d -o Net/CMakeFiles/Net.dir/src/SocketProactor.cpp.o -c ../Net/src/SocketProactor.cpp
[build] In file included from ../Net/src/SocketProactor.cpp:15:0:
[build] ../Net/include/Poco/Net/SocketProactor.h:62:50: error: ‘error_code’ in namespace ‘std’ does not name a type
[build] using Callback = std::function<void (const std::error_code& failure, int bytesReceived)>;
[build] ^
[build] ../Net/include/Poco/Net/SocketProactor.h:62:90: error: expected ‘::’ before ‘;’ token
[build] using Callback = std::function<void (const std::error_code& failure, int bytesReceived)>;
Hi @aleks-f , bumping this issue as I'm encountering a similar problem. I'm compiling using the toolchain found in this repository
I started off with the same error as @Layty, and made your suggested change (// #define POCO_NO_SO
), and again run into the second error that @Layty mentioned.
Here are some of those errors:
poco-1.12.4/Net/include/Poco/Net/SocketProactor.h:62:50: error: 'error_code' in namespace 'std' does not name a type
using Callback = std::function<void (const std::error_code& failure, int bytesReceived)>;
poco-1.12.4/Net/include/Poco/Net/SocketProactor.h:62:90: error: expected '::' before ';' token
using Callback = std::function<void (const std::error_code& failure, int bytesReceived)>;
poco-1.12.4/Net/include/Poco/Net/SocketProactor.h:171:80: error: 'Callback' has not been declared
void addSendTo(Socket sock, const Buffer& message, const SocketAddress& addr, Callback&& onCompletion);
@marlon-wiprud I saw the same issue. I opened #3883 to fix that particular error.
This issue is stale because it has been open for 365 days with no activity.
This issue was closed because it has been inactive for 60 days since being marked as stale.