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
This has been observed on Linux machines.
Version 1.14.0 introduces a dependency on library libatomic which doesn't seem to be present in earlier releases.
This forces code using this version to link against a library that, potentially, is not needed as modern processors use intrisics. As a consequence the library must also be available where the final application runs.
I tried to remove it from the CMake scripts and it all seems to work fine. The change is on file PocoFoundationTargets.cmake:
This line:
INTERFACE_LINK_LIBRARIES "pthread;atomic;dl;rt"
becomes this:
INTERFACE_LINK_LIBRARIES "pthread;dl;rt"
Would it be possible to consider alternatives to the current situation? Perhaps linking against libatomic could be made a build configuration (CMake build also, please) or it could be removed altogether as it seems to have always been the case in past releases.
Thanks!
The text was updated successfully, but these errors were encountered:
I tested this on CentOS 7 that did not have libatomic installed. Consider that this is a common scenario, even a more recent AlmaLinux 8.9 distro won't have this library installed by default:
> g++ main.cpp -latomic
/usr/bin/ld: cannot find /usr/lib64/libatomic.so.1.2.0
collect2: error: ld returned 1 exit status
Moreover the link to this library is most likely dynamic, adding the requirement of having libatomic installed in the end system, which might be different than the build one.
This has been observed on Linux machines.
Version 1.14.0 introduces a dependency on library
libatomic
which doesn't seem to be present in earlier releases.This forces code using this version to link against a library that, potentially, is not needed as modern processors use intrisics. As a consequence the library must also be available where the final application runs.
I tried to remove it from the CMake scripts and it all seems to work fine. The change is on file
PocoFoundationTargets.cmake
:This line:
INTERFACE_LINK_LIBRARIES "pthread;atomic;dl;rt"
becomes this:
INTERFACE_LINK_LIBRARIES "pthread;dl;rt"
Would it be possible to consider alternatives to the current situation? Perhaps linking against
libatomic
could be made a build configuration (CMake build also, please) or it could be removed altogether as it seems to have always been the case in past releases.Thanks!
The text was updated successfully, but these errors were encountered: