本人安装的是qt-sdk-win-opensource-2010.02.1.exe
但默认的编译方式是动态编译,我将开发环境配置成静态编译,我查看了手册和网上朋友的说明,按照如下方式操作
进入qt目录,运行configure -static -platform win32-g++,mingw32-make sub-src,但在最后一步却报错说,信息如下
。。。。。。
release/main.o:main.cpp:(.text$_ZN5QListIN12Preprocessor11IncludePathEE4freeEPN9
QListData4DataE[QList<Preprocessor::IncludePath>::free(QListData::Data*)]+0x42):
undefined reference to `qFree(void*)'
release/main.o:main.cpp:(.text$_ZN5QListIN12Preprocessor11IncludePathEE4freeEPN9
QListData4DataE[QList<Preprocessor::IncludePath>::free(QListData::Data*)]+0x6f):
undefined reference to `qFree(void*)'
release/main.o:main.cpp:(.text$_ZN4QMapI10QByteArrayS0_ED1Ev[QMap<QByteArray, QB
yteArray>::~QMap()]+0x34): undefined reference to `QMapData::continueFreeData(in
t)'
release/main.o:main.cpp:(.text$_ZN4QMapI10QByteArrayS0_ED1Ev[QMap<QByteArray, QB
yteArray>::~QMap()]+0x5a): undefined reference to `qFree(void*)'
release/main.o:main.cpp:(.text$_ZN4QMapI10QByteArrayS0_ED1Ev[QMap<QByteArray, QB
yteArray>::~QMap()]+0x70): undefined reference to `qFree(void*)'
release/main.o:main.cpp:(.text$_ZN5QListI8ClassDefED1Ev[QList<ClassDef>::~QList(
)]+0x6d): undefined reference to `qFree(void*)'
collect2: ld returned 1 exit status
mingw32-make: fatal error U1077: “D:\Qt\2010.02.1\mingw\bin\g++.EXE”: 返回代码“0x1
”
Stop.
mingw32-make : fatal error U1077: “"C:\Program Files\Microsoft Visual Studio 8\VC\bin\
nmake.exe"”: 返回代码“0x2”
Stop.
mingw32-make : fatal error U1077: “cd”: 返回代码“0x2”
Stop.
貌似undefined reference to `qFree(void*)',的原因,请问有预见过的吗?如何解决。我没有用 vc2005或vc2008