首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 开源软件 >

解决用QtCreator编译examples时出现的异常

2012-07-15 
解决用QtCreator编译examples时出现的错误下载最新(2010.04)版本的Qt之后,运行QtCreator,打开其examples工

解决用QtCreator编译examples时出现的错误

下载最新(2010.04)版本的Qt之后,运行QtCreator,打开其examples工程,编译,出现"main.moc: No such file or directory"错误。

在网上找了一下,发现下面这个讨论

http://bugreports.qt.nokia.com/browse/QTCREATORBUG-1889?focusedCommentId=121848&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel

?

原来是因为Qt发行打包的时候不小心将一些临时生成的文件也打进来了。

这些临时生成的文件(各种moc等)和实际编译环境可能不符合,但是qmake发现其存在所以也就不自动重新生成了,结果在链接时发现不正确。

?

解决办法就是删除examples目录下的所有"tmp"子目录,然后Clean Projects然后run qmake然后Build Projects就可以了。

?

编译examples/tools/plugandpaint时又发现一个错误,在下面的讨论

http://forum.mandriva.com/viewtopic.php?t=91735

的提示下发现examples/tools/plugandpaint.pro写的有点小问题,需要做如下修改:

1)将

LIBS?= -L$${QT_BUILD_TREE}/examples/tools/plugandpaint/plugins -lpnp_basictools

修改成

LIBS?= -L$${QT_BUILD_TREE}/examples/tools/plugandpaint/plugins -Lplugins -lpnp_basictools

?

2)将

mac:LIBS?= $$member(LIBS, 0) $$member(LIBS, 1)_debug

win32:LIBS = $$member(LIBS, 0) $$member(LIBS, 1)d

修改成

mac:LIBS = $$member(LIBS, 0) $$member(LIBS, 1) $$member(LIBS, 2)_debug

win32:LIBS?= $$member(LIBS, 0) $$member(LIBS, 1) $$member(LIBS, 2)d

后就可以了。

?

热点排行