open.o: In function `OpenMesh::BaseProperty::~BaseProperty()':
open.cpp:(.text._ZN8OpenMesh12BasePropertyD2Ev[OpenMesh::BaseProperty::~BaseProperty()]+0x7): undefined reference to `vtable for OpenMesh::BaseProperty'
open.o: In function `OpenMesh::BaseProperty::BaseProperty(OpenMesh::BaseProperty const&)':
open.cpp:(.text._ZN8OpenMesh12BasePropertyC2ERKS0_[OpenMesh::BaseProperty::BaseProperty(OpenMesh::BaseProperty const&)]+0x7): undefined reference to `vtable for OpenMesh::BaseProperty'
open.o: In function `OpenMesh::BaseProperty::BaseProperty(std::basic_string<char, std::char_traits, std::allocator > const&)':
open.cpp:(.text._ZN8OpenMesh12BasePropertyC2ERKSs[OpenMesh::BaseProperty::BaseProperty(std::basic_string<char, std::char_traits, std::allocator > const&)]+0x7): undefined reference to `vtable for OpenMesh::BaseProperty'
open.o:(.rodata._ZTVN8OpenMesh9PropertyTINS_7VectorTIfLi3EEEEE[vtable for OpenMesh::PropertyT<OpenMesh::VectorT<float, 3> >]+0x28): undefined reference to `OpenMesh::BaseProperty::stats(std::basic_ostream<char, std::char_traits >&) const'
open.o:(.rodata._ZTIN8OpenMesh9PropertyTINS_7VectorTIfLi3EEEEE[typeinfo for OpenMesh::PropertyT<OpenMesh::VectorT<float, 3> >]+0x8): undefined reference to `typeinfo for OpenMesh::BaseProperty'
Vous n'avez pas défini toutes les fonctions déclarées dans BaseProperty. Vérifiez qu'il y a bien le code pour les constructeurs, le destructeur, et la fonction OpenMesh::BaseProperty::stats(std::basic_ostream<char, std::char_traits >&) const
Par hasard, vous n'essayeriez pas d'utiliser une classe abstraite ?
open.o: In function `void OpenMesh::BaseProperty::check_and_set_persistent<OpenMesh::VectorT<float, 3> >(bool)':
open.cpp:(.text._ZN8OpenMesh12BaseProperty24check_and_set_persistentINS_7VectorTIfLi3EEEEEvb[void OpenMesh::BaseProperty::check_and_set_persistent<OpenMesh::VectorT<float, 3> >(bool)]+0x39): undefined reference to `omerr()'
# Re: OpenMesh
Posté par Vincent ORDY . En réponse au message OpenMesh. Évalué à 1.
Vous n'avez pas défini toutes les fonctions déclarées dans BaseProperty. Vérifiez qu'il y a bien le code pour les constructeurs, le destructeur, et la fonction OpenMesh::BaseProperty::stats(std::basic_ostream<char, std::char_traits >&) const
Par hasard, vous n'essayeriez pas d'utiliser une classe abstraite ?
Ça paraît plutôt clair, il ne trouve pas omerr().