从Qt3到Qt4:内部类的问题(Q3GList& Q3PtrCollection)

时间:2012-09-21 15:09:57

标签: c++ qt4 porting qt3

我正在将代码从Qt3更新为Qt4。我使用qt3to4移植工具,它修复了我的一些问题。但仍有一些错误:

g++ -m64 -Wl,-O1 -o CONVECTION_DYN_CODE_version_initiale Convection_points.o Convection_points_prof.o glbox.o globjwin.o main.o algebra.o evector.o matrix.o matrix4.o quaternion.o write_binary.o write_binary_normals.o moc_glbox.o moc_globjwin.o   -L/usr/lib/x86_64-linux-gnu -L/usr/X11R6/lib64 -lQtOpenGL -lQtGui -lQtCore -lGLU -lglut -lGL -lpthread -lCGAL -fp-model -lboost_thread -lgmp
glbox.o:(.rodata._ZTI7Q3GList[typeinfo for Q3GList]+0x10): undefined reference to `typeinfo for Q3PtrCollection'

&安培;

glbox.o:(.rodata._ZTV7Q3GList[vtable for Q3GList]+0x18): undefined reference to `Q3GList::clear()'
glbox.o:(.rodata._ZTV7Q3GList[vtable for Q3GList]+0x20): undefined reference to `Q3GList::~Q3GList()'
glbox.o:(.rodata._ZTV7Q3GList[vtable for Q3GList]+0x28): undefined reference to `Q3GList::~Q3GList()'
glbox.o:(.rodata._ZTV7Q3GList[vtable for Q3GList]+0x30): undefined reference to `Q3PtrCollection::newItem(void*)'
...

Q3GListQ3PtrCollection都是内部类。我添加了相应的标题,但我仍然遇到这些错误。我不知道如何解决它,因为它似乎是内部问题。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您还应该链接到qt3support模块。

添加

QT += qt3support

到您的项目设置。