Linking error

Discussion about the development of the Assembly workbench.
Netzschlange
Posts: 1
Joined: Sun Dec 25, 2016 1:24 pm

Linking error

Postby Netzschlange » Sun Dec 25, 2016 1:41 pm

Error occurred while linking Assembly module:

Code: Select all

[ 85%] Linking CXX shared library ../../../../Mod/Assembly/Assembly.so
CMakeFiles/Assembly.dir/Solver/solver_3d_ext2.cpp.o: In function `double dcm::Distance::type<dcm::Kernel<double, dcm::Dogleg>, dcm::tag::line3D, dcm::tag::line3D>::calculate<Eigen::Map<Eigen::Matrix<double, -1, 1, 0, -1, 1>, 0, Eigen::Stride<-1, -1> >, Eigen::Map<Eigen::Matrix<double, -1, 1, 0, -1, 1>, 0, Eigen::Stride<-1, -1> > >(Eigen::MatrixBase<Eigen::Map<Eigen::Matrix<double, -1, 1, 0, -1, 1>, 0, Eigen::Stride<-1, -1> > > const&, Eigen::MatrixBase<Eigen::Map<Eigen::Matrix<double, -1, 1, 0, -1, 1>, 0, Eigen::Stride<-1, -1> > > const&)':
/home/alexandr/rpmbuild/BUILD/FreeCAD-0.17/src/Mod/Assembly/App/opendcm/module3d/distance.hpp:446: undefined reference to `dcm::Kernel<double, dcm::Dogleg>::isSame(double, double, double)'
CMakeFiles/Assembly.dir/Solver/solver_3d_ext2.cpp.o: In function `double dcm::Distance::type<dcm::Kernel<double, dcm::Dogleg>, dcm::tag::line3D, dcm::tag::line3D>::calculateGradientFirst<Eigen::Map<Eigen::Matrix<double, -1, 1, 0, -1, 1>, 0, Eigen::Stride<-1, -1> >, Eigen::Map<Eigen::Matrix<double, -1, 1, 0, -1, 1>, 0, Eigen::Stride<-1, -1> >, Eigen::Block<Eigen::Matrix<double, -1, -1, 0, -1, -1>, -1, 1, true> >(Eigen::MatrixBase<Eigen::Map<Eigen::Matrix<double, -1, 1, 0, -1, 1>, 0, Eigen::Stride<-1, -1> > > const&, Eigen::MatrixBase<Eigen::Map<Eigen::Matrix<double, -1, 1, 0, -1, 1>, 0, Eigen::Stride<-1, -1> > > const&, Eigen::MatrixBase<Eigen::Block<Eigen::Matrix<double, -1, -1, 0, -1, -1>, -1, 1, true> > const&)':
/home/alexandr/rpmbuild/BUILD/FreeCAD-0.17/src/Mod/Assembly/App/opendcm/module3d/distance.hpp:463: undefined reference to `dcm::Kernel<double, dcm::Dogleg>::isSame(double, double, double)'
CMakeFiles/Assembly.dir/Solver/solver_3d_ext2.cpp.o: In function `void dcm::Distance::type<dcm::Kernel<double, dcm::Dogleg>, dcm::tag::line3D, dcm::tag::line3D>::calculateGradientFirstComplete<Eigen::Map<Eigen::Matrix<double, -1, 1, 0, -1, 1>, 0, Eigen::Stride<-1, -1> >, Eigen::Map<Eigen::Matrix<double, -1, 1, 0, -1, 1>, 0, Eigen::Stride<-1, -1> >, Eigen::Map<Eigen::Matrix<double, -1, 1, 0, -1, 1>, 0, Eigen::Stride<-1, -1> > >(Eigen::MatrixBase<Eigen::Map<Eigen::Matrix<double, -1, 1, 0, -1, 1>, 0, Eigen::Stride<-1, -1> > > const&, Eigen::MatrixBase<Eigen::Map<Eigen::Matrix<double, -1, 1, 0, -1, 1>, 0, Eigen::Stride<-1, -1> > > const&, Eigen::MatrixBase<Eigen::Map<Eigen::Matrix<double, -1, 1, 0, -1, 1>, 0, Eigen::Stride<-1, -1> > >&)':
/home/alexandr/rpmbuild/BUILD/FreeCAD-0.17/src/Mod/Assembly/App/opendcm/module3d/distance.hpp:515: undefined reference to `dcm::Kernel<double, dcm::Dogleg>::isSame(double, double, double)'
CMakeFiles/Assembly.dir/Solver/solver_3d_ext2.cpp.o: In function `double dcm::Distance::type<dcm::Kernel<double, dcm::Dogleg>, dcm::tag::line3D, dcm::tag::line3D>::calculateGradientSecond<Eigen::Map<Eigen::Matrix<double, -1, 1, 0, -1, 1>, 0, Eigen::Stride<-1, -1> >, Eigen::Map<Eigen::Matrix<double, -1, 1, 0, -1, 1>, 0, Eigen::Stride<-1, -1> >, Eigen::Block<Eigen::Matrix<double, -1, -1, 0, -1, -1>, -1, 1, true> >(Eigen::MatrixBase<Eigen::Map<Eigen::Matrix<double, -1, 1, 0, -1, 1>, 0, Eigen::Stride<-1, -1> > > const&, Eigen::MatrixBase<Eigen::Map<Eigen::Matrix<double, -1, 1, 0, -1, 1>, 0, Eigen::Stride<-1, -1> > > const&, Eigen::MatrixBase<Eigen::Block<Eigen::Matrix<double, -1, -1, 0, -1, -1>, -1, 1, true> > const&)':
/home/alexandr/rpmbuild/BUILD/FreeCAD-0.17/src/Mod/Assembly/App/opendcm/module3d/distance.hpp:489: undefined reference to `dcm::Kernel<double, dcm::Dogleg>::isSame(double, double, double)'
CMakeFiles/Assembly.dir/Solver/solver_3d_ext2.cpp.o: In function `void dcm::Distance::type<dcm::Kernel<double, dcm::Dogleg>, dcm::tag::line3D, dcm::tag::line3D>::calculateGradientSecondComplete<Eigen::Map<Eigen::Matrix<double, -1, 1, 0, -1, 1>, 0, Eigen::Stride<-1, -1> >, Eigen::Map<Eigen::Matrix<double, -1, 1, 0, -1, 1>, 0, Eigen::Stride<-1, -1> >, Eigen::Map<Eigen::Matrix<double, -1, 1, 0, -1, 1>, 0, Eigen::Stride<-1, -1> > >(Eigen::MatrixBase<Eigen::Map<Eigen::Matrix<double, -1, 1, 0, -1, 1>, 0, Eigen::Stride<-1, -1> > > const&, Eigen::MatrixBase<Eigen::Map<Eigen::Matrix<double, -1, 1, 0, -1, 1>, 0, Eigen::Stride<-1, -1> > > const&, Eigen::MatrixBase<Eigen::Map<Eigen::Matrix<double, -1, 1, 0, -1, 1>, 0, Eigen::Stride<-1, -1> > >&)':
/home/alexandr/rpmbuild/BUILD/FreeCAD-0.17/src/Mod/Assembly/App/opendcm/module3d/distance.hpp:534: undefined reference to `dcm::Kernel<double, dcm::Dogleg>::isSame(double, double, double)'
CMakeFiles/Assembly.dir/Solver/solver_3d_ext2.cpp.o:/home/alexandr/rpmbuild/BUILD/FreeCAD-0.17/src/Mod/Assembly/App/opendcm/module3d/distance.hpp:446: more undefined references to `dcm::Kernel<double, dcm::Dogleg>::isSame(double, double, double)' follow
collect2: error: ld returned 1 exit status

How resolve these errors?
ickby
Posts: 2428
Joined: Wed Oct 05, 2011 7:36 am

Re: Linking error

Postby ickby » Sun Dec 25, 2016 5:16 pm

you don't. that module is not functional.