我正在尝试构建一个基本的 Qt“Hello, world!” Visual Studio 中的应用程序。
我拿到moc
步骤工作(我认为),但现在我不知道如何修复这个链接器错误:
1>moc_mainwindow.obj : error LNK2001: unresolved external symbol "public:
static struct QMetaObject const QMainWindow::staticMetaObject"
(?staticMetaObject@QMainWindow@@2UQMetaObject@@B)
我做了很多搜索,但我很茫然。
这是我的包含目录:
i:\Qt\4.6.3\include\QtCore;
i:\Qt\4.6.3\include\QtGui;
i:\Qt\4.6.3\include;
i:\Qt\4.6.3\include\ActiveQt;
reease;
.;
i:\Qt\4.6.3\mkspecs\win32-msvc2008
以下是我要链接的库:
i:\Qt\4.6.3\lib\QtGui4.lib;
i:\Qt\4.6.3\lib\QtCore4.lib;
gdi32.lib;
comdlg32.lib;
oleaut32.lib;
imm32.lib;
winmm.lib;
winspool.lib;
ws2_32.lib;
ole32.lib;
user32.lib;
advapi32.lib;
libpng.lib;
msimg32.lib;
shell32.lib;
kernel32.lib;
uuid.lib;
有人有什么想法吗?
qmake 将从 .pro 文件中的头文件生成 moc voodoo。由于您没有使用 qmake,从它的声音来看,而是一个本机 Visual Studio 项目,这可能是问题的原因。
如果你使用 qmake 生成你的 Visual Studio 项目,你的所有问题都会消失,生活将变得甜蜜。大概!
我用的是open 2010.05;显然你想用正确的路径替换你的版本。
设置环境
从开始菜单启动2010命令环境
-set include=%include%;C:\Qt\2010.05\qt\include
-set lib=%lib%;C:\Qt\2010.05\qt\lib
-设置路径=%path%;C:\Qt\2010.05\qt\bin
-设置 QMAKESPEC=win32-msvc2010
编写代码、创建文件等
生成初始 pro 和 makefile 并启动 VS
-qmake -tp vc
-qmake
您现在应该有一个 makefile - 通过运行以下命令检查它是否有效:
-nmake
现在启动视觉工作室
-VCExpress.exe /useenv
-XXX.vcxproj 现在可以打开
如果这不起作用,您可能需要针对 Visual Studio 构建 qt。这非常简单 - 转到 qt 目录(从 Visual Studio Express 命令窗口中)并输入:
configure.exe -platform win32-msvc2010 -no-webkit -no-phonon -no-phonon-backend -no-script -no-scripttools -no-multimedia -no-qt3support -fast
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)