Skip to Content.
Sympa Menu

cgal-discuss - Re: [cgal-discuss] Compilation Error in Polyhedron Demo (CGAL 4.7 beta2 with VS2013 on x64 platform)

Subject: CGAL users discussion list

List archive

Re: [cgal-discuss] Compilation Error in Polyhedron Demo (CGAL 4.7 beta2 with VS2013 on x64 platform)


Chronological Thread 
  • From: Longhua Wu <>
  • To:
  • Subject: Re: [cgal-discuss] Compilation Error in Polyhedron Demo (CGAL 4.7 beta2 with VS2013 on x64 platform)
  • Date: Thu, 24 Sep 2015 21:16:36 -0700 (PDT)
  • Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None ; spf=SoftFail ; spf=None
  • Ironport-phdr: 9a23:T8zwgBBh5tnCwns5aCwhUyQJP3N1i/DPJgcQr6AfoPdwSP74rsbcNUDSrc9gkEXOFd2CrakU16yK7OuxASQp2tWojjMrSNR0TRgLiMEbzUQLIfWuLgnFFsPsdDEwB89YVVVorDmROElRH9viNRWJ+iXhpQAbFhi3DwdpPOO9QteU1JTrkbztsMyLKyxzxxODIppKZC2sqgvQssREyaBDEY0WjiXzn31TZu5NznlpL1/A1zz158O34YIxu38I46FppIZ8VvDxcK08CLBZFz87KHsd5cvxtBCFQxHcyGEbVzAylRxHAxXMpC7nFsPury/9sOV9xSCyOtDqSbczWnKp6KI9G0ygszsOKzNsqDKfscd3lq8O+B8=

Hi Sebastien,

Thanks a lot, after I updating the QT to version 5.5, most of the errors
have been corrected.

However, there are still some minor errors about the Eigen call in
"Scene_edit_polyhedron_item.cpp", which I think is also relavant with the
library version. (My Eigen version is 3.2.5)

1> Scene_edit_polyhedron_item.cpp
1>d:\opensource\eigen3.2.5\eigen\src/Eigenvalues/SelfAdjointEigenSolver.h(554):
error C2666:
'Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>::operator
=' : 3 overloads have similar conversions
1> d:\opensource\eigen3.2.5\eigen\src/Core/Ref.h(224): could be
'Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>
&Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>::operator
=(const
Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>> &)'
1> d:\opensource\eigen3.2.5\eigen\src/Core/MatrixBase.h(148): or

'Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>
&Eigen::MatrixBase<Derived>::operator =(const Eigen::MatrixBase<Derived> &)'
1> with
1> [
1>
Derived=Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>
1> ]
1> d:\opensource\eigen3.2.5\eigen\src/Core/MapBase.h(232): or
'Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>
&Eigen::MapBase<Derived,1>::operator =(const Eigen::MapBase<Derived,1> &)'
1> with
1> [
1>
Derived=Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>
1> ]
1> d:\opensource\eigen3.2.5\eigen\src/Core/Ref.h(155): or
'Eigen::RefBase<Eigen::Ref&lt;Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>>
&Eigen::RefBase<Eigen::Ref&lt;Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>>::operator
=(const
Eigen::RefBase<Eigen::Ref&lt;Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>>
&)'
1> d:\opensource\eigen3.2.5\eigen\src/Core/Assign.h(569): or
'Derived &Eigen::MatrixBase<Derived>::operator
=<Eigen::Block&lt;Eigen::Matrix&lt;double,3,3,0,3,3>,3,1,true>>(const
Eigen::DenseBase<Eigen::Block&lt;Eigen::Matrix&lt;double,3,3,0,3,3>,3,1,true>>
&)'
1> with
1> [
1>
Derived=Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>
1> ]
1> d:\opensource\eigen3.2.5\eigen\src/Core/Assign.h(576): or
'Derived &Eigen::MatrixBase<Derived>::operator
=<Eigen::Block&lt;Eigen::Matrix&lt;double,3,3,0,3,3>,3,1,true>>(const
Eigen::EigenBase<Eigen::Block&lt;Eigen::Matrix&lt;double,3,3,0,3,3>,3,1,true>>
&)'
1> with
1> [
1>
Derived=Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>
1> ]
1> while trying to match the argument list
'(Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>,
Eigen::Block<Derived,3,1,true>)'
1> with
1> [
1> Derived=Eigen::Matrix<double,3,3,0,3,3>
1> ]
1>
d:\opensource\eigen3.2.5\eigen\src/Eigenvalues/SelfAdjointEigenSolver.h(547)
: while compiling class template member function 'bool
Eigen::internal::direct_selfadjoint_eigenvalues<Eigen::SelfAdjointEigenSolver&lt;CGAL::Deformation_Eigen_closest_rotation_traits_3::Matrix>,3,false>::extract_kernel(Eigen::Matrix<double,3,3,0,3,3>
&,Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>,Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>)'
1>
d:\opensource\eigen3.2.5\eigen\src/Eigenvalues/SelfAdjointEigenSolver.h(614)
: see reference to function template instantiation 'bool
Eigen::internal::direct_selfadjoint_eigenvalues<Eigen::SelfAdjointEigenSolver&lt;CGAL::Deformation_Eigen_closest_rotation_traits_3::Matrix>,3,false>::extract_kernel(Eigen::Matrix<double,3,3,0,3,3>
&,Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>,Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>)'
being compiled
1>
d:\opensource\eigen3.2.5\eigen\src/Eigenvalues/SelfAdjointEigenSolver.h(730)
: see reference to class template instantiation
'Eigen::internal::direct_selfadjoint_eigenvalues<Eigen::SelfAdjointEigenSolver&lt;CGAL::Deformation_Eigen_closest_rotation_traits_3::Matrix>,3,false>'
being compiled
1>
d:\opensource\eigen3.2.5\eigen\src/Eigenvalues/SelfAdjointEigenSolver.h(729)
: while compiling class template member function
'Eigen::SelfAdjointEigenSolver<CGAL::Deformation_Eigen_closest_rotation_traits_3::Matrix>
&Eigen::SelfAdjointEigenSolver<CGAL::Deformation_Eigen_closest_rotation_traits_3::Matrix>::computeDirect(const
Eigen::Matrix<double,3,3,0,3,3> &,int)'
1> D:\Program
Files\CGAL-4.7-beta2\demo\Polyhedron\..\..\include\CGAL/Deformation_Eigen_polar_closest_rotation_traits_3.h(66)
: see reference to function template instantiation
'Eigen::SelfAdjointEigenSolver<CGAL::Deformation_Eigen_closest_rotation_traits_3::Matrix>
&Eigen::SelfAdjointEigenSolver<CGAL::Deformation_Eigen_closest_rotation_traits_3::Matrix>::computeDirect(const
Eigen::Matrix<double,3,3,0,3,3> &,int)' being compiled
1> D:\Program
Files\CGAL-4.7-beta2\demo\Polyhedron\..\..\include\CGAL/Deformation_Eigen_polar_closest_rotation_traits_3.h(64)
: see reference to class template instantiation
'Eigen::SelfAdjointEigenSolver<CGAL::Deformation_Eigen_closest_rotation_traits_3::Matrix>'
being compiled
1> scene_edit_polyhedron_item_automoc.cpp
1>d:\opensource\eigen3.2.5\eigen\src/Eigenvalues/SelfAdjointEigenSolver.h(554):
error C2666:
'Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>::operator
=' : 3 overloads have similar conversions
1> d:\opensource\eigen3.2.5\eigen\src/Core/Ref.h(224): could be
'Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>
&Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>::operator
=(const
Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>> &)'
1> d:\opensource\eigen3.2.5\eigen\src/Core/MatrixBase.h(148): or

'Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>
&Eigen::MatrixBase<Derived>::operator =(const Eigen::MatrixBase<Derived> &)'
1> with
1> [
1>
Derived=Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>
1> ]
1> d:\opensource\eigen3.2.5\eigen\src/Core/MapBase.h(232): or
'Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>
&Eigen::MapBase<Derived,1>::operator =(const Eigen::MapBase<Derived,1> &)'
1> with
1> [
1>
Derived=Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>
1> ]
1> d:\opensource\eigen3.2.5\eigen\src/Core/Ref.h(155): or
'Eigen::RefBase<Eigen::Ref&lt;Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>>
&Eigen::RefBase<Eigen::Ref&lt;Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>>::operator
=(const
Eigen::RefBase<Eigen::Ref&lt;Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>>
&)'
1> d:\opensource\eigen3.2.5\eigen\src/Core/Assign.h(569): or
'Derived &Eigen::MatrixBase<Derived>::operator
=<Eigen::Block&lt;Eigen::Matrix&lt;double,3,3,0,3,3>,3,1,true>>(const
Eigen::DenseBase<Eigen::Block&lt;Eigen::Matrix&lt;double,3,3,0,3,3>,3,1,true>>
&)'
1> with
1> [
1>
Derived=Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>
1> ]
1> d:\opensource\eigen3.2.5\eigen\src/Core/Assign.h(576): or
'Derived &Eigen::MatrixBase<Derived>::operator
=<Eigen::Block&lt;Eigen::Matrix&lt;double,3,3,0,3,3>,3,1,true>>(const
Eigen::EigenBase<Eigen::Block&lt;Eigen::Matrix&lt;double,3,3,0,3,3>,3,1,true>>
&)'
1> with
1> [
1>
Derived=Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>
1> ]
1> while trying to match the argument list
'(Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>,
Eigen::Block<Derived,3,1,true>)'
1> with
1> [
1> Derived=Eigen::Matrix<double,3,3,0,3,3>
1> ]
1>
d:\opensource\eigen3.2.5\eigen\src/Eigenvalues/SelfAdjointEigenSolver.h(547)
: while compiling class template member function 'bool
Eigen::internal::direct_selfadjoint_eigenvalues<Eigen::SelfAdjointEigenSolver&lt;CGAL::Deformation_Eigen_closest_rotation_traits_3::Matrix>,3,false>::extract_kernel(Eigen::Matrix<double,3,3,0,3,3>
&,Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>,Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>)'
1>
d:\opensource\eigen3.2.5\eigen\src/Eigenvalues/SelfAdjointEigenSolver.h(614)
: see reference to function template instantiation 'bool
Eigen::internal::direct_selfadjoint_eigenvalues<Eigen::SelfAdjointEigenSolver&lt;CGAL::Deformation_Eigen_closest_rotation_traits_3::Matrix>,3,false>::extract_kernel(Eigen::Matrix<double,3,3,0,3,3>
&,Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>,Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>)'
being compiled
1>
d:\opensource\eigen3.2.5\eigen\src/Eigenvalues/SelfAdjointEigenSolver.h(730)
: see reference to class template instantiation
'Eigen::internal::direct_selfadjoint_eigenvalues<Eigen::SelfAdjointEigenSolver&lt;CGAL::Deformation_Eigen_closest_rotation_traits_3::Matrix>,3,false>'
being compiled
1>
d:\opensource\eigen3.2.5\eigen\src/Eigenvalues/SelfAdjointEigenSolver.h(729)
: while compiling class template member function
'Eigen::SelfAdjointEigenSolver<CGAL::Deformation_Eigen_closest_rotation_traits_3::Matrix>
&Eigen::SelfAdjointEigenSolver<CGAL::Deformation_Eigen_closest_rotation_traits_3::Matrix>::computeDirect(const
Eigen::Matrix<double,3,3,0,3,3> &,int)'
1> D:\Program
Files\CGAL-4.7-beta2\demo\Polyhedron\..\..\include\CGAL/Deformation_Eigen_polar_closest_rotation_traits_3.h(66)
: see reference to function template instantiation
'Eigen::SelfAdjointEigenSolver<CGAL::Deformation_Eigen_closest_rotation_traits_3::Matrix>
&Eigen::SelfAdjointEigenSolver<CGAL::Deformation_Eigen_closest_rotation_traits_3::Matrix>::computeDirect(const
Eigen::Matrix<double,3,3,0,3,3> &,int)' being compiled
1> D:\Program
Files\CGAL-4.7-beta2\demo\Polyhedron\..\..\include\CGAL/Deformation_Eigen_polar_closest_rotation_traits_3.h(64)
: see reference to class template instantiation
'Eigen::SelfAdjointEigenSolver<CGAL::Deformation_Eigen_closest_rotation_traits_3::Matrix>'
being compiled
1> Generating Code...
2>------ Build started: Project: edit_polyhedron_plugin, Configuration:
Release x64 ------
2> Polyhedron_demo_edit_polyhedron_plugin.cpp
2>d:\opensource\eigen3.2.5\eigen\src/Eigenvalues/SelfAdjointEigenSolver.h(554):
error C2666:
'Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>::operator
=' : 3 overloads have similar conversions
2> d:\opensource\eigen3.2.5\eigen\src/Core/Ref.h(224): could be
'Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>
&Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>::operator
=(const
Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>> &)'
2> d:\opensource\eigen3.2.5\eigen\src/Core/MatrixBase.h(148): or

'Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>
&Eigen::MatrixBase<Derived>::operator =(const Eigen::MatrixBase<Derived> &)'
2> with
2> [
2>
Derived=Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>
2> ]
2> d:\opensource\eigen3.2.5\eigen\src/Core/MapBase.h(232): or
'Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>
&Eigen::MapBase<Derived,1>::operator =(const Eigen::MapBase<Derived,1> &)'
2> with
2> [
2>
Derived=Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>
2> ]
2> d:\opensource\eigen3.2.5\eigen\src/Core/Ref.h(155): or
'Eigen::RefBase<Eigen::Ref&lt;Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>>
&Eigen::RefBase<Eigen::Ref&lt;Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>>::operator
=(const
Eigen::RefBase<Eigen::Ref&lt;Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>>
&)'
2> d:\opensource\eigen3.2.5\eigen\src/Core/Assign.h(569): or
'Derived &Eigen::MatrixBase<Derived>::operator
=<Eigen::Block&lt;Eigen::Matrix&lt;double,3,3,0,3,3>,3,1,true>>(const
Eigen::DenseBase<Eigen::Block&lt;Eigen::Matrix&lt;double,3,3,0,3,3>,3,1,true>>
&)'
2> with
2> [
2>
Derived=Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>
2> ]
2> d:\opensource\eigen3.2.5\eigen\src/Core/Assign.h(576): or
'Derived &Eigen::MatrixBase<Derived>::operator
=<Eigen::Block&lt;Eigen::Matrix&lt;double,3,3,0,3,3>,3,1,true>>(const
Eigen::EigenBase<Eigen::Block&lt;Eigen::Matrix&lt;double,3,3,0,3,3>,3,1,true>>
&)'
2> with
2> [
2>
Derived=Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>
2> ]
2> while trying to match the argument list
'(Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>,
Eigen::Block<Derived,3,1,true>)'
2> with
2> [
2> Derived=Eigen::Matrix<double,3,3,0,3,3>
2> ]
2>
d:\opensource\eigen3.2.5\eigen\src/Eigenvalues/SelfAdjointEigenSolver.h(547)
: while compiling class template member function 'bool
Eigen::internal::direct_selfadjoint_eigenvalues<Eigen::SelfAdjointEigenSolver&lt;CGAL::Deformation_Eigen_closest_rotation_traits_3::Matrix>,3,false>::extract_kernel(Eigen::Matrix<double,3,3,0,3,3>
&,Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>,Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>)'
2>
d:\opensource\eigen3.2.5\eigen\src/Eigenvalues/SelfAdjointEigenSolver.h(614)
: see reference to function template instantiation 'bool
Eigen::internal::direct_selfadjoint_eigenvalues<Eigen::SelfAdjointEigenSolver&lt;CGAL::Deformation_Eigen_closest_rotation_traits_3::Matrix>,3,false>::extract_kernel(Eigen::Matrix<double,3,3,0,3,3>
&,Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>,Eigen::Ref<Eigen::Matrix&lt;double,3,1,0,3,1>,0,Eigen::InnerStride<1>>)'
being compiled
2>
d:\opensource\eigen3.2.5\eigen\src/Eigenvalues/SelfAdjointEigenSolver.h(730)
: see reference to class template instantiation
'Eigen::internal::direct_selfadjoint_eigenvalues<Eigen::SelfAdjointEigenSolver&lt;CGAL::Deformation_Eigen_closest_rotation_traits_3::Matrix>,3,false>'
being compiled
2>
d:\opensource\eigen3.2.5\eigen\src/Eigenvalues/SelfAdjointEigenSolver.h(729)
: while compiling class template member function
'Eigen::SelfAdjointEigenSolver<CGAL::Deformation_Eigen_closest_rotation_traits_3::Matrix>
&Eigen::SelfAdjointEigenSolver<CGAL::Deformation_Eigen_closest_rotation_traits_3::Matrix>::computeDirect(const
Eigen::Matrix<double,3,3,0,3,3> &,int)'
2> D:\Program
Files\CGAL-4.7-beta2\demo\Polyhedron\..\..\include\CGAL/Deformation_Eigen_polar_closest_rotation_traits_3.h(66)
: see reference to function template instantiation
'Eigen::SelfAdjointEigenSolver<CGAL::Deformation_Eigen_closest_rotation_traits_3::Matrix>
&Eigen::SelfAdjointEigenSolver<CGAL::Deformation_Eigen_closest_rotation_traits_3::Matrix>::computeDirect(const
Eigen::Matrix<double,3,3,0,3,3> &,int)' being compiled
2> D:\Program
Files\CGAL-4.7-beta2\demo\Polyhedron\..\..\include\CGAL/Deformation_Eigen_polar_closest_rotation_traits_3.h(64)
: see reference to class template instantiation
'Eigen::SelfAdjointEigenSolver<CGAL::Deformation_Eigen_closest_rotation_traits_3::Matrix>'
being compiled

So do you have any solution? Or the simplest way is to change my eigen
edition to a proper one as yours.

Thanks,
Longhua



--
View this message in context:
http://cgal-discuss.949826.n4.nabble.com/Compilation-Error-in-Polyhedron-Demo-CGAL-4-7-beta2-with-VS2013-on-x64-platform-tp4661156p4661159.html
Sent from the cgal-discuss mailing list archive at Nabble.com.



Archive powered by MHonArc 2.6.18.

Top of Page