on CentOs using Eigen 3.3.90 trying to compile for maya 2019, I get an error in linearRegressionSolver.cpp invalid initialization of non-const reference of type ‘Eigen::MatrixBase<Eigen::Block<Eigen::Matrix<double, -1, -1>, -1, -1, false> >&’ from an rvalue of type ‘Eigen::MatrixBase<Eigen::Block<Eigen::Matrix<double, -1, -1>, -1, -1, false> >’
as well as it was giving me error that asLong on MDataHandle is depricated and use asInt instead.
`/romanr/repos/nodes/linearRegressionSolver.cpp: In member function ‘void LinearRegressionSolver::setFeatures(const MatrixXd&, const std::vector<std::vectorAutodesk::Maya::OpenMaya20190000::MQuaternion >&, const MatrixXd&, const std::vector<Eigen::Matrix<double, -1, -1> >&, short int, double, double, SolverSpace)’:
/romanr/repos/nodes/linearRegressionSolver.cpp:112:26: error: invalid initialization of non-const reference of type ‘Eigen::MatrixBase<Eigen::Block<Eigen::Matrix<double, -1, -1>, -1, -1, false> >&’ from an rvalue of type ‘Eigen::MatrixBase<Eigen::Block<Eigen::Matrix<double, -1, -1>, -1, -1, false> >’
applyRbf(rd.block(0, i * 2, sampleCount, 2), rbf_, sampleRadius_[i] * radius_);
~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /romanr/repos/nodes/linearRegressionSolver.cpp:1:0:
/romanr/repos/nodes/linearRegressionSolver.h:113:6: note: initializing argument 1 of ‘void applyRbf(Eigen::MatrixBase&, short int, double) [with T = Eigen::Block<Eigen::Matrix<double, -1, -1>, -1, -1, false>]’
void applyRbf(Eigen::MatrixBase& m, short rbf, double radius) {
^~~~~~~~
/romanr/repos/nodes/linearRegressionSolver.cpp: In member function ‘Eigen::VectorXd LinearRegressionSolver::solve(const VectorXd&, const std::vectorAutodesk::Maya::OpenMaya20190000::MQuaternion&, Eigen::VectorXd&, Eigen::MatrixXd&)’:
/romanr/repos/nodes/linearRegressionSolver.cpp:178:39: error: invalid initialization of non-const reference of type ‘Eigen::MatrixBase<Eigen::Block<Eigen::Matrix<double, -1, 1>, -1, 1, false> >&’ from an rvalue of type ‘Eigen::MatrixBase<Eigen::Block<Eigen::Matrix<double, -1, 1>, -1, 1, false> >’
applyRbf(inputDistance.segment(startIdx, inputQuatCount * 2), rbf_, sampleRadius_[s1]);
~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /romanr/repos/nodes/linearRegressionSolver.cpp:1:0:
/romanr/repos/nodes/linearRegressionSolver.h:113:6: note: initializing argument 1 of ‘void applyRbf(Eigen::MatrixBase&, short int, double) [with T = Eigen::Block<Eigen::Matrix<double, -1, 1>, -1, 1, false>]’
void applyRbf(Eigen::MatrixBase& m, short rbf, double radius) {
^~~~~~~~
`