Dear All,
I am trying to compile the newest alps release. I managed to get up to 62% of the compilation (on two machines - one running Fedora, the other ubuntu 10.04) up to exactly the same stage:
Scanning dependencies of target jacobidavidson2
[ 62%] Building CXX object example/ietl/CMakeFiles/jacobidavidson2.dir/jacobidavidson2.cpp.o
In file included from /home/stefan/alps/alps-2.0.2-r5790-src-with-boost/alps/src/boost/numeric/bindings/lapack/computational.hpp:39:0,
from /home/stefan/alps/alps-2.0.2-r5790-src-with-boost/alps/src/ietl/jd.h:51,
from /home/stefan/alps/alps-2.0.2-r5790-src-with-boost/alps/example/ietl/jacobidavidson2.cpp:52:
/home/stefan/alps/alps-2.0.2-r5790-src-with-boost/alps/src/boost/numeric/bindings/lapack/computational/getrs.hpp: In static member function ‘static std::ptrdiff_t boost::numeric::bindings::lapack::getrs_impl<Value>::invoke(const MatrixA&, const VectorIPIV&, MatrixB&) [with MatrixA = boost::numeric::ublas::matrix<double, boost::numeric::ublas::basic_column_major<>, boost::numeric::ublas::unbounded_array<double, std::allocator<double> > >, VectorIPIV = std::vector<int>, MatrixB = boost::numeric::ublas::vector<double>, Value = double, std::ptrdiff_t = long int]’:
/home/stefan/alps/alps-2.0.2-r5790-src-with-boost/alps/src/boost/numeric/bindings/lapack/computational/getrs.hpp:247:51: instantiated from ‘std::ptrdiff_t boost::numeric::bindings::lapack::getrs(const MatrixA&, const VectorIPIV&, MatrixB&) [with MatrixA = boost::numeric::ublas::matrix<double, boost::numeric::ublas::basic_column_major<>, boost::numeric::ublas::unbounded_array<double, std::allocator<double> > >, VectorIPIV = std::vector<int>, MatrixB = boost::numeric::ublas::vector<double>, std::ptrdiff_t = long int]’
/home/stefan/alps/alps-2.0.2-r5790-src-with-boost/alps/src/ietl/jd.h:313:9: instantiated from ‘void ietl::solver::left_prec_solver<SOLV, MATRIX, VS, PREC>::operator()(ietl::solver::left_prec_solver<SOLV, MATRIX, VS, PREC>::real_type, ietl::solver::left_prec_solver<SOLV, MATRIX, VS, PREC>::vector_type&, ietl::solver::left_prec_solver<SOLV, MATRIX, VS, PREC>::vector_type&, IT&) [with IT = ietl::jd_iteration<double>, SOLV = ietl::gmres_wrapper, MATRIX = boost::numeric::ublas::symmetric_matrix<double, boost::numeric::ublas::basic_lower<> >, VS = ietl::vectorspace<boost::numeric::ublas::vector<double> >, PREC = jacobi_prec<boost::numeric::ublas::symmetric_matrix<double, boost::numeric::ublas::basic_lower<> >, double>, ietl::solver::left_prec_solver<SOLV, MATRIX, VS, PREC>::real_type = double, ietl::solver::left_prec_solver<SOLV, MATRIX, VS, PREC>::vector_type = boost::numeric::ublas::vector<double>]’
/home/stefan/alps/alps-2.0.2-r5790-src-with-boost/alps/src/ietl/jd.h:633:13: instantiated from ‘void ietl::jd<MATRIX, VS>::jdqr(SOLVER&, IT&, GEN&, ietl::jd<MATRIX, VS>::size_type, bool) [with SOLVER = ietl::solver::left_prec_solver<ietl::gmres_wrapper, boost::numeric::ublas::symmetric_matrix<double, boost::numeric::ublas::basic_lower<> >, ietl::vectorspace<boost::numeric::ublas::vector<double> >, jacobi_prec<boost::numeric::ublas::symmetric_matrix<double, boost::numeric::ublas::basic_lower<> >, double> >, IT = ietl::jd_iteration<double>, GEN = boost::random::lagged_fibonacci_01_engine<double, 48, 44497u, 21034u>, MATRIX = boost::numeric::ublas::symmetric_matrix<double, boost::numeric::ublas::basic_lower<> >, VS = ietl::vectorspace<boost::numeric::ublas::vector<double> >, ietl::jd<MATRIX, VS>::size_type = long unsigned int]’
/home/stefan/alps/alps-2.0.2-r5790-src-with-boost/alps/src/ietl/jd.h:403:17: instantiated from ‘void ietl::jd<MATRIX, VS>::eigensystem(IT&, GEN&, ietl::jd<MATRIX, VS>::size_type, PREC&, SOLV, bool) [with SOLV = ietl::gmres_wrapper, IT = ietl::jd_iteration<double>, GEN = boost::random::lagged_fibonacci_01_engine<double, 48, 44497u, 21034u>, PREC = jacobi_prec<boost::numeric::ublas::symmetric_matrix<double, boost::numeric::ublas::basic_lower<> >, double>, MATRIX = boost::numeric::ublas::symmetric_matrix<double, boost::numeric::ublas::basic_lower<> >, VS = ietl::vectorspace<boost::numeric::ublas::vector<double> >, ietl::jd<MATRIX, VS>::size_type = long unsigned int]’
/home/stefan/alps/alps-2.0.2-r5790-src-with-boost/alps/example/ietl/jacobidavidson2.cpp:136:54: instantiated from here
/home/stefan/alps/alps-2.0.2-r5790-src-with-boost/alps/src/boost/numeric/bindings/lapack/computational/getrs.hpp:225:69: error: no matching function for call to ‘getrs(order, trans, boost::numeric::bindings::result_of::size_row_op<const boost::numeric::ublas::matrix<double, boost::numeric::ublas::basic_column_major<>, boost::numeric::ublas::unbounded_array<double, std::allocator<double> > >, boost::numeric::bindings::tag::no_transpose>::type, boost::numeric::bindings::result_of::size_column<boost::numeric::ublas::vector<double> >::type, boost::numeric::bindings::result_of::begin_value<const boost::numeric::ublas::matrix<double, boost::numeric::ublas::basic_column_major<>, boost::numeric::ublas::unbounded_array<double, std::allocator<double> > > >::type, boost::numeric::bindings::result_of::stride_major<const boost::numeric::ublas::matrix<double, boost::numeric::ublas::basic_column_major<>, boost::numeric::ublas::unbounded_array<double, std::allocator<double> > > >::type, boost::numeric::bindings::result_of::begin_value<const std::vector<int> >::type, boost::numeric::bindings::result_of::begin_value<boost::numeric::ublas::vector<double> >::type, boost::numeric::bindings::result_of::stride_major<boost::numeric::ublas::vector<double> >::type)’
/home/stefan/alps/alps-2.0.2-r5790-src-with-boost/alps/src/boost/numeric/bindings/lapack/computational/getrs.hpp:225:69: note: candidates are:
/home/stefan/alps/alps-2.0.2-r5790-src-with-boost/alps/src/boost/numeric/bindings/lapack/computational/getrs.hpp:120:23: note: template<class Order, class Trans> std::ptrdiff_t boost::numeric::bindings::lapack::detail::getrs(Order, Trans, fortran_int_t, fortran_int_t, const float*, fortran_int_t, const fortran_int_t*, float*, fortran_int_t)
/home/stefan/alps/alps-2.0.2-r5790-src-with-boost/alps/src/boost/numeric/bindings/lapack/computational/getrs.hpp:136:23: note: template<class Order, class Trans> std::ptrdiff_t boost::numeric::bindings::lapack::detail::getrs(Order, Trans, fortran_int_t, fortran_int_t, const double*, fortran_int_t, const fortran_int_t*, double*, fortran_int_t)
/home/stefan/alps/alps-2.0.2-r5790-src-with-boost/alps/src/boost/numeric/bindings/lapack/computational/getrs.hpp:152:23: note: template<class Order, class Trans> std::ptrdiff_t boost::numeric::bindings::lapack::detail::getrs(Order, Trans, fortran_int_t, fortran_int_t, const std::complex<float>*, fortran_int_t, const fortran_int_t*, std::complex<float>*, fortran_int_t)
/home/stefan/alps/alps-2.0.2-r5790-src-with-boost/alps/src/boost/numeric/bindings/lapack/computational/getrs.hpp:169:23: note: template<class Order, class Trans> std::ptrdiff_t boost::numeric::bindings::lapack::detail::getrs(Order, Trans, fortran_int_t, fortran_int_t, const std::complex<double>*, fortran_int_t, const fortran_int_t*, std::complex<double>*, fortran_int_t)
make[2]: *** [example/ietl/CMakeFiles/jacobidavidson2.dir/jacobidavidson2.cpp.o] Error 1
make[1]: *** [example/ietl/CMakeFiles/jacobidavidson2.dir/all] Error 2
it looks like a typical compile error. Am I doing something wrong? Is it missing dependency? I did not do anything nonstandard - I followed instructions from the webpage.
Regards,
Mateusz Lacki