[Debian-med-packaging] Bug#797280: Please help porting cufflinks to latest libboost
Jakub Wilk
jwilk at debian.org
Tue Jul 12 11:10:44 UTC 2016
* Andreas Tille <andreas at an3as.eu>, 2016-07-12, 11:12:
>In file included from /usr/include/eigen3/Eigen/Core:297:0,
> from /usr/include/eigen3/Eigen/Dense:1,
> from abundances.h:21,
> from abundances.cpp:16:
>/usr/include/eigen3/Eigen/src/Core/DenseCoeffsBase.h: In instantiation of 'Eigen::DenseCoeffsBase<Derived, 0>::CoeffReturnType Eigen::DenseCoeffsBase<Derived, 0>::coeff(Eigen::Index) const [with Derived = Eigen
>/usr/include/eigen3/Eigen/src/Core/DenseCoeffsBase.h:181:19: required from 'Eigen::DenseCoeffsBase<Derived, 0>::CoeffReturnType Eigen::DenseCoeffsBase<Derived, 0>::operator()(Eigen::Index) const [with Derived
>abundances.cpp:3815:28: required from here
>/usr/include/eigen3/Eigen/src/Core/DenseCoeffsBase.h:141:7: error: 'THIS_COEFFICIENT_ACCESSOR_TAKING_ONE_ACCESS_IS_ONLY_FOR_EXPRESSIONS_ALLOWING_LINEAR_ACCESS' is not a member of 'Eigen::internal::static_assert
> EIGEN_STATIC_ASSERT(internal::evaluator<Derived>::Flags & LinearAccessBit,
> ^
>Makefile:1627: recipe for target 'abundances.o' failed
The relevant code in src/abundances.cpp looks like this:
Eigen::VectorXd v;
double m = 0;
v = U.rowwise().sum();
m = v.colwise().sum()(0);
For some reason Eigen thinks that v.colwise().sum() cannot be treated as
a one-dimensional vector, which smells like a bug in Eigen. Changing the
last line to
m = v.colwise().sum()(0, 0);
seems to do the trick.
Upstream bug report:
https://github.com/cole-trapnell-lab/cufflinks/issues/61
--
Jakub Wilk
More information about the Debian-med-packaging
mailing list