Control: tags -1 patch
Hi,
I'm providing patches to fix tiledarray FTBFS (even though the underlying
causes are not completely clear to me at the moment).
Juhani Numminen kirjoitti 12.12.2017 klo 12:16:
> /usr/include/c++/7/utility:168:12: error: partial specialization of 'struct
> std::__is_tuple_like_impl<std::pair<_T1, _T2> >' after instantiation of
> 'struct std::__is_tuple_like_impl<std::pair<long unsigned int, long unsigned
> int> >' [-fpermissive]
For that, please see specialization-after-instantiation.patch. I suspect
that is something similar to #883987.
Adrian Bunk kirjoitti 28.9.2017 klo 12:02:
> /usr/lib/cmake/tiledarray/tiledarray-targets.cmake needs to be rebuilt
> with the multiarch libblas.so location.
This also caused the build to fail because of those non-multiarch paths,
and took me some effort to work around. I couldn't understand why the
variable LAPACK_LIBRARIES unconditionally contained /usr/lib/lapack.so and
/usr/lib/blas.so, so in the end I just removed the problematic use of
that variable; see dependencies.patch.
Regards
Juhani
Description: #include <utility> before anything else to avoid error
This might actually a bug in boost or libstdc++. The message is:
In file included from /usr/include/c++/7/bits/unique_ptr.h:36:0,
from /usr/include/c++/7/memory:80,
from /usr/include/boost/config/no_tr1/memory.hpp:21,
from /usr/include/boost/smart_ptr/shared_ptr.hpp:23,
from /usr/include/boost/shared_ptr.hpp:17,
from /usr/include/boost/test/tools/assertion_result.hpp:21,
from /usr/include/boost/test/tools/old/impl.hpp:20,
from /usr/include/boost/test/test_tools.hpp:46,
from /usr/include/boost/test/unit_test.hpp:18,
from /build/tiledarray-0.6.0/obj-x86_64-linux-gnu/tests/unit_test_config.h:32,
from /build/tiledarray-0.6.0/tests/tiled_range1.cpp:21:
/usr/include/c++/7/utility:168:12: error: partial specialization of
'struct std::__is_tuple_like_impl<std::pair<_T1, _T2> >' after instantiation of
'struct std::__is_tuple_like_impl<std::pair<long unsigned int, long unsigned int> >'
Author: Juhani Numminen <[email protected]>
Bug-Debian: https://bugs.debian.org/853682
Last-Update: 2017-12-19
--- a/tests/tiled_range1.cpp
+++ b/tests/tiled_range1.cpp
@@ -17,6 +17,7 @@
*
*/
+#include <utility>
#include "TiledArray/tiled_range1.h"
#include "unit_test_config.h"
#include "range_fixture.h"
--- a/tests/tiled_range.cpp
+++ b/tests/tiled_range.cpp
@@ -17,6 +17,7 @@
*
*/
+#include <utility>
#include "TiledArray/tiled_range.h"
#include "tiledarray.h"
#include "unit_test_config.h"
Description: Fix build failure and invalid tiledarray-targets.cmake
LAPACK_LIBRARIES seems to uncoditionally contain /usr/lib/lapack.so and
/usr/lib/blas.so but those libraries have been moved to multiarch paths.
Author: Juhani Numminen <[email protected]>
Bug-Debian: https://bugs.debian.org/853682
Last-Update: 2017-12-19
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -166,7 +166,7 @@
string (REPLACE " " ";" CMAKE_CXX_FLAG_LIST "${CMAKE_CXX_FLAGS}")
target_compile_options(tiledarray PUBLIC
$<TARGET_PROPERTY:MADworld,INTERFACE_COMPILE_OPTIONS>;${CMAKE_CXX_FLAG_LIST})
-target_link_libraries(tiledarray PUBLIC "${LAPACK_LIBRARIES}" MADworld)
+target_link_libraries(tiledarray PUBLIC -llapack -lblas MADworld)
# Add library to the list of installed components
install(TARGETS tiledarray EXPORT tiledarray COMPONENT tiledarray