Forums - Linux ARM 64-bit aarch64-linux-gnu compilation fails for 4.8.x and 4.9.x Linaro GCC toolchains

1 post / 0 new
Linux ARM 64-bit aarch64-linux-gnu compilation fails for 4.8.x and 4.9.x Linaro GCC toolchains
gurpreet.singh
Join Date: 5 Sep 16
Posts: 1
Posted: Sun, 2016-09-11 02:56

 

Hello,

With Symphony System Manager SDK v1.1.0 - Linux ,  I am trying to compile it for Linux ARM 64-bit (aarch64-linux-gnu), as described in symphony-1.1.0-refman-EN.pdf from page 23 - 27.

Since, it requires Linaro GCC aarch64 toolchain with GCC 4.8 or later, i have experimented with three different toochains. Can you please let me know why for Linux ARM 64-bit (aarch64-linux-gnu) cpu-only library fails with Linaro GCC 4.9.x and Linaro GCC 4.8.5, but it only compiles with Linaro GCC 4.8.3.

1. Linaro toolchain having aarch64-linux-gnu-g++ (Linaro GCC 2014.11) 4.9.3 20141031 (prerelease) , with below steps

cmake . -DSYMPHONY_LIB_TYPE=release-cpu -DCMAKE_C_COMPILER=/home/einfochips/eragon410/Linux/ERAGON410_Linux_Release/gcc-linaro-4.9-2014.11-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc -DCMAKE_CXX_COMPILER=/home/einfochips/eragon410/Linux/ERAGON410_Linux_Release/gcc-linaro-4.9-2014.11-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-g++ -DCMAKE_AR=/home/einfochips/eragon410/Linux/ERAGON410_Linux_Release/gcc-linaro-4.9-2014.11-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-ar -DCMAKE_RANLIB=/home/einfochips/eragon410/Linux/ERAGON410_Linux_Release/gcc-linaro-4.9-2014.11-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-ranlib -DCMAKE_LINKER=/home/einfochips/eragon410/Linux/ERAGON410_Linux_Release/gcc-linaro-4.9-2014.11-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-ld

make ./symphony_examples_helloworld

compilation fails with below errors and warnings: libstdc++.so.6 and libatomic.so.1 not found

[  0%] Linking CXX executable symphony_examples_helloworld
/home/einfochips/eragon410/Linux/ERAGON410_Linux_Release/gcc-linaro-4.9-2014.11-x86_64_aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/4.9.3/../../../../aarch64-linux-gnu/bin/ld: warning: libatomic.so.1, needed by /opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0, not found (try using -rpath or -rpath-link)
/home/einfochips/eragon410/Linux/ERAGON410_Linux_Release/gcc-linaro-4.9-2014.11-x86_64_aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/4.9.3/../../../../aarch64-linux-gnu/bin/ld: warning: libstdc++.so.6, needed by /opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0, not found (try using -rpath or -rpath-link)
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `vtable for std::basic_streambuf<char, std::char_traits<char> >@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::condition_variable::condition_variable()@GLIBCXX_3.4.11'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `__cxa_allocate_exception@CXXABI_1.3'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::basic_ios<char, std::char_traits<char> >::init(std::basic_streambuf<char, std::char_traits<char> >*)@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::bad_alloc::~bad_alloc()@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&)@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::__throw_system_error(int)@GLIBCXX_3.4.11'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::string::assign(std::string const&)@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::string::_Rep::_M_destroy(std::allocator<char> const&)@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::thread::_M_start_thread(std::shared_ptr<std::thread::_Impl_base>)@GLIBCXX_3.4.11'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::ostream& std::ostream::_M_insert<bool>(bool)@GLIBCXX_3.4.9'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)@GLIBCXX_3.4.9'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `__cxa_throw@CXXABI_1.3'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::string::_Rep::_M_dispose(std::allocator<char> const&)@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `operator delete(void*)@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `operator delete(void*, std::nothrow_t const&)@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::locale::locale()@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `__cxa_guard_release@CXXABI_1.3'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::__exception_ptr::operator==(std::__exception_ptr::exception_ptr const&, std::__exception_ptr::exception_ptr const&)@CXXABI_1.3.3'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::_Rb_tree_decrement(std::_Rb_tree_node_base*)@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::__throw_bad_function_call()@GLIBCXX_3.4.14'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::__exception_ptr::exception_ptr::exception_ptr(std::__exception_ptr::exception_ptr const&)@CXXABI_1.3.3'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::condition_variable::~condition_variable()@GLIBCXX_3.4.11'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `operator new(unsigned long)@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::locale::~locale()@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `__cxa_guard_acquire@CXXABI_1.3'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::__throw_logic_error(char const*)@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::rethrow_exception(std::__exception_ptr::exception_ptr)@CXXABI_1.3.3'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `__atomic_load_16@LIBATOMIC_1.0'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::string::swap(std::string&)@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::condition_variable::notify_all()@GLIBCXX_3.4.11'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::nothrow@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `vtable for __cxxabiv1::__class_type_info@CXXABI_1.3'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `__cxa_end_catch@CXXABI_1.3'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `__cxa_rethrow@CXXABI_1.3'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::_Rb_tree_increment(std::_Rb_tree_node_base*)@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::__once_call@GLIBCXX_3.4.11'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `vtable for __cxxabiv1::__pointer_type_info@CXXABI_1.3'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::ios_base::ios_base()@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `operator new(unsigned long, std::nothrow_t const&)@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::condition_variable::notify_one()@GLIBCXX_3.4.11'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::string::resize(unsigned long, char)@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::ostream& std::ostream::_M_insert<long>(long)@GLIBCXX_3.4.9'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `vtable for std::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::string::_Rep::_S_empty_rep_storage@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::_Hash_bytes(void const*, unsigned long, unsigned long)@CXXABI_1.3.5'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::_Rb_tree_increment(std::_Rb_tree_node_base const*)@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `vtable for std::basic_ios<char, std::char_traits<char> >@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::condition_variable::wait(std::unique_lock<std::mutex>&)@GLIBCXX_3.4.11'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::__once_callable@GLIBCXX_3.4.11'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `VTT for std::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `__once_proxy@GLIBCXX_3.4.11'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::ios_base::Init::Init()@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `vtable for std::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `__gxx_personality_v0@CXXABI_1.3'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::current_exception()@CXXABI_1.3.3'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&)@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `typeinfo for unsigned long@CXXABI_1.3'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::ios_base::Init::~Init()@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `__cxa_free_exception@CXXABI_1.3'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `operator delete[](void*)@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `typeinfo for std::bad_alloc@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::__throw_out_of_range(char const*)@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `typeinfo for void@CXXABI_1.3'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `__cxa_guard_abort@CXXABI_1.3'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::exception::~exception()@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `vtable for __cxxabiv1::__function_type_info@CXXABI_1.3'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::_Rb_tree_rebalance_for_erase(std::_Rb_tree_node_base*, std::_Rb_tree_node_base&)@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `typeinfo for std::exception@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::__exception_ptr::exception_ptr::exception_ptr()@CXXABI_1.3.3'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::__exception_ptr::operator!=(std::__exception_ptr::exception_ptr const&, std::__exception_ptr::exception_ptr const&)@CXXABI_1.3.3'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::ostream& std::ostream::_M_insert<unsigned long>(unsigned long)@GLIBCXX_3.4.9'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `__atomic_compare_exchange_16@LIBATOMIC_1.0'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::string::append(char const*, unsigned long)@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&)@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `vtable for __cxxabiv1::__si_class_type_info@CXXABI_1.3'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::__throw_length_error(char const*)@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::~basic_ostringstream()@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `__cxa_begin_catch@CXXABI_1.3'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::ios_base::~ios_base()@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::__exception_ptr::exception_ptr::swap(std::__exception_ptr::exception_ptr&)@CXXABI_1.3.3'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `typeinfo for void*@CXXABI_1.3'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `vtable for __cxxabiv1::__vmi_class_type_info@CXXABI_1.3'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `operator new[](unsigned long)@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `__cxa_pure_virtual@CXXABI_1.3'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::string::assign(char const*, unsigned long)@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::__throw_bad_alloc()@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::string::_S_construct(unsigned long, char, std::allocator<char> const&)@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::__exception_ptr::exception_ptr::~exception_ptr()@CXXABI_1.3.3'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::string::append(std::string const&)@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::_Rb_tree_insert_and_rebalance(bool, std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node_base&)@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::thread::join()@GLIBCXX_3.4.11'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `vtable for std::bad_alloc@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `__cxa_demangle@CXXABI_1.3'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `vtable for std::exception@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::terminate()@GLIBCXX_3.4'
/opt/Qualcomm/Symphony/1.1.0/aarch64-linux-gnu/lib/libsymphony-cpu.so.1.1.0: undefined reference to `std::basic_ios<char, std::char_traits<char> >::clear(std::_Ios_Iostate)@GLIBCXX_3.4'
collect2: error: ld returned 1 exit status
CMakeFiles/symphony_examples_helloworld.dir/build.make:95: recipe for target 'symphony_examples_helloworld' failed
make[3]: *** [symphony_examples_helloworld] Error 1
CMakeFiles/Makefile2:4914: recipe for target 'CMakeFiles/symphony_examples_helloworld.dir/all' failed
make[2]: *** [CMakeFiles/symphony_examples_helloworld.dir/all] Error 2
CMakeFiles/Makefile2:4926: recipe for target 'CMakeFiles/symphony_examples_helloworld.dir/rule' failed
make[1]: *** [CMakeFiles/symphony_examples_helloworld.dir/rule] Error 2
Makefile:1821: recipe for target 'symphony_examples_helloworld' failed
make: *** [symphony_examples_helloworld] Error 2

 

2. Linaro toolchain having aarch64-linux-gnu-g++ (Linaro GCC 4.8-2015.06) 4.8.5 , with below steps

cmake . -DSYMPHONY_LIB_TYPE=release-cpu -DCMAKE_C_COMPILER=/home/einfochips/Downloads/gcc-linaro-4.8-2015.06-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc -DCMAKE_CXX_COMPILER=/home/einfochips/Downloads/gcc-linaro-4.8-2015.06-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-g++ -DCMAKE_AR=/home/einfochips/Downloads/gcc-linaro-4.8-2015.06-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-ar -DCMAKE_RANLIB=/home/einfochips/Downloads/gcc-linaro-4.8-2015.06-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-ranlib -DCMAKE_LINKER=/home/einfochips/Downloads/gcc-linaro-4.8-2015.06-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-ld

make ./symphony_examples_helloworld

compilation fails with same errors as above (but without warnings which means the toolchain has libstdc++.so.6 and libatomic.so.1)

 

3. Linaro toolchain having aarch64-linux-gnu-g++ (crosstool-NG linaro-1.13.1-4.8-2014.01 - Linaro GCC 2013.11) 4.8.3 20140106 (prerelease), with below steps

cmake . -DSYMPHONY_LIB_TYPE=release-cpu -DCMAKE_C_COMPILER=/home/einfochips/Downloads/gcc-linaro-aarch64-linux-gnu-4.8-2014.01_linux/bin/aarch64-linux-gnu-gcc -DCMAKE_CXX_COMPILER=/home/einfochips/Downloads/gcc-linaro-aarch64-linux-gnu-4.8-2014.01_linux/bin/aarch64-linux-gnu-g++ -DCMAKE_AR=/home/einfochips/Downloads/gcc-linaro-aarch64-linux-gnu-4.8-2014.01_linux/bin/aarch64-linux-gnu-ar -DCMAKE_RANLIB=/home/einfochips/Downloads/gcc-linaro-aarch64-linux-gnu-4.8-2014.01_linux/bin/aarch64-linux-gnu-ranlib -DCMAKE_LINKER=/home/einfochips/Downloads/gcc-linaro-aarch64-linux-gnu-4.8-2014.01_linux/bin/aarch64-linux-gnu-ld

make ./symphony_examples_helloworld

compilation success: [100%] Built target symphony_examples_helloworld

  • Up0
  • Down0

Opinions expressed in the content posted here are the personal opinions of the original authors, and do not necessarily reflect those of Qualcomm Incorporated or its subsidiaries (“Qualcomm”). The content is provided for informational purposes only and is not meant to be an endorsement or representation by Qualcomm or any other party. This site may also provide links or references to non-Qualcomm sites and resources. Qualcomm makes no representations, warranties, or other commitments whatsoever about any non-Qualcomm sites or third-party resources that may be referenced, accessible from, or linked to this site.