You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I am working on upgrading beagle-lib in Debian. It turns out version 4.0.1 cannot build on some architectures like Arm Eabi, Arm hard Float, MIPS, IBM Power, s390x because the emmintrin.h header is unavailable there. Could the mmintrin.h header possibly provide symbols for the source file libhmsbeagle/CPU/SSEDefinitions.h?
Also when I build the software with BUILD_SSE=OFF, all is good on amd64 but on e.g. Arm Eabi I get the error message
/usr/bin/ld: CMakeFiles/synthetictest.dir/synthetictest/synthetictest.cpp.o: in function std::__atomic_futex_unsigned<2147483648u>::_M_store_notify_all(unsigned int, std::memory_order)': /usr/include/c++/14/bits/atomic_futex.h:278:(.text+0x1620): undefined reference to std::__atomic_futex_unsigned_base::_M_futex_notify_all(unsigned int*)'
/usr/bin/ld: /usr/include/c++/14/bits/atomic_futex.h:278:(.text+0x3940): undefined reference to std::__atomic_futex_unsigned_base::_M_futex_notify_all(unsigned int*)' /usr/bin/ld: CMakeFiles/synthetictest.dir/synthetictest/synthetictest.cpp.o: in function std::__atomic_futex_unsigned<2147483648u>::_M_load_and_test_until(unsigned int, unsigned int, bool, std::memory_order, bool, std::chrono::duration<long long, std::ratio<1ll, 1ll> >, std::chrono::duration<long long, std::ratio<1ll, 1000000000ll> >)':
/usr/include/c++/14/bits/atomic_futex.h:109:(.text+0xae64): undefined reference to std::__atomic_futex_unsigned_base::_M_futex_wait_until(unsigned int*, unsigned int, bool, std::chrono::duration<long long, std::ratio<1ll, 1ll> >, std::chrono::duration<long long, std::ratio<1ll, 1000000000ll> >)' /usr/bin/ld: CMakeFiles/synthetictest.dir/synthetictest/synthetictest.cpp.o: in function std::__atomic_futex_unsigned<2147483648u>::_M_store_notify_all(unsigned int, std::memory_order)':
/usr/include/c++/14/bits/atomic_futex.h:278:(.text._ZNSt13__future_base13_State_baseV216_M_break_promiseESt10unique_ptrINS_12_Result_baseENS2_8_DeleterEE[_ZNSt13__future_base13_State_baseV216_M_break_promiseESt10unique_ptrINS_12_Result_baseENS2_8_DeleterEE]+0x25c): undefined reference to `std::__atomic_futex_unsigned_base::_M_futex_notify_all(unsigned int*)'
collect2: error: ld returned 1 exit status
which suggests synthetictest.cpp might require some SSE symbols on some architectures even if BUILD_SSE is specified.
For the moment in Debian, I have disabled BUILD_SSE and skipped synthetictest, but if you could come up with / have suggestions about solutions to the above problems this would be useful!
Thanks for the develoment of beagle-lib,
Pierre
The text was updated successfully, but these errors were encountered:
Hello,
I am working on upgrading beagle-lib in Debian. It turns out version 4.0.1 cannot build on some architectures like Arm Eabi, Arm hard Float, MIPS, IBM Power, s390x because the emmintrin.h header is unavailable there. Could the mmintrin.h header possibly provide symbols for the source file libhmsbeagle/CPU/SSEDefinitions.h?
Also when I build the software with BUILD_SSE=OFF, all is good on amd64 but on e.g. Arm Eabi I get the error message
/usr/bin/ld: CMakeFiles/synthetictest.dir/synthetictest/synthetictest.cpp.o: in function
std::__atomic_futex_unsigned<2147483648u>::_M_store_notify_all(unsigned int, std::memory_order)': /usr/include/c++/14/bits/atomic_futex.h:278:(.text+0x1620): undefined reference to
std::__atomic_futex_unsigned_base::_M_futex_notify_all(unsigned int*)'/usr/bin/ld: /usr/include/c++/14/bits/atomic_futex.h:278:(.text+0x3940): undefined reference to
std::__atomic_futex_unsigned_base::_M_futex_notify_all(unsigned int*)' /usr/bin/ld: CMakeFiles/synthetictest.dir/synthetictest/synthetictest.cpp.o: in function
std::__atomic_futex_unsigned<2147483648u>::_M_load_and_test_until(unsigned int, unsigned int, bool, std::memory_order, bool, std::chrono::duration<long long, std::ratio<1ll, 1ll> >, std::chrono::duration<long long, std::ratio<1ll, 1000000000ll> >)':/usr/include/c++/14/bits/atomic_futex.h:109:(.text+0xae64): undefined reference to
std::__atomic_futex_unsigned_base::_M_futex_wait_until(unsigned int*, unsigned int, bool, std::chrono::duration<long long, std::ratio<1ll, 1ll> >, std::chrono::duration<long long, std::ratio<1ll, 1000000000ll> >)' /usr/bin/ld: CMakeFiles/synthetictest.dir/synthetictest/synthetictest.cpp.o: in function
std::__atomic_futex_unsigned<2147483648u>::_M_store_notify_all(unsigned int, std::memory_order)':/usr/include/c++/14/bits/atomic_futex.h:278:(.text._ZNSt13__future_base13_State_baseV216_M_break_promiseESt10unique_ptrINS_12_Result_baseENS2_8_DeleterEE[_ZNSt13__future_base13_State_baseV216_M_break_promiseESt10unique_ptrINS_12_Result_baseENS2_8_DeleterEE]+0x25c): undefined reference to `std::__atomic_futex_unsigned_base::_M_futex_notify_all(unsigned int*)'
collect2: error: ld returned 1 exit status
which suggests synthetictest.cpp might require some SSE symbols on some architectures even if BUILD_SSE is specified.
For the moment in Debian, I have disabled BUILD_SSE and skipped synthetictest, but if you could come up with / have suggestions about solutions to the above problems this would be useful!
Thanks for the develoment of beagle-lib,
Pierre
The text was updated successfully, but these errors were encountered: