折腾Qt,被它折腾

rel="File-List" href="file:///C:%5CDOCUME%7E1%5CADMINI%7E1%5CLOCALS%7E1%5CTemp%5Cmsohtml1%5C01%5Cclip_filelist.xml" />

折腾Qt,被它折腾

2010.04.05  

关键词:F1不灵光,上下文帮助出问题

前几天为了用Qt静态编译程序,Google到药方说要先静态编译Qt。依方而行,屡败屡试,中间还卸Qt重新装了几次。花费若干若干小时(编译Qt需要两个多小时),终于成功。(其实还不算完全成功,因为Mingw报了两个错误,但似乎不太严重)。

虽然这时候的exe仍依赖着mingwm10.dlllibgcc_s_dw2-1.dll,但这两个文件都不大,尚可接受,而且网上似乎有解决方法,不必发愁。

我决定暂时不去理会这个小问题,因为我遇到了一个更棘手的问题了:经过这么几次折腾,Qt Assistant不见了。确切地说,“开始”菜单里还有这一项,但是用它启动,却找不到程序。

几度Google,最后仍然没有找到解决方法,无奈的我只好再次走上重装Qt的可耻道路。这次到官网下了最新的qt-sdk-win-opensource-2010.02.1.exe(对应Qt 4.6.2 32bit Qt Creator 1.3.1 )。我之前下的Qt安装文件是qt-sdk-win-opensource-2010.01.exe(对应………………),算是小有升级了。

这次没心情玩静态编译了,一安装完毕,马上查看。Qt Assistant倒是正常了,可上下文帮助(Context Help)却**了。即,在Edit Mode下,不管光标定位到哪儿,按F1,都显示“No Documentation Available”。

真是“福无双至,祸不单行”,没F1可用的日子根本没法过啊!

有事问Google,可我这次却找不准关键词,试了几下,连稍微沾边的結果都没找到。没办法,只好在烦躁和痛苦之中开始琢磨。有一些线索引起了我的注意,这个新版本才安装完,第一次打开,便看到“Open Recent Project”下列出了我最近打开过的项目,但那些都是用之前那个版本的Qt Creator完成的。这说明一点,卸载的时候,Qt并没有卸干净,留有残余信息(虽然我每次卸载完还特意把Qt安装目录都彻底删除)。

我首先怀疑注册表。于是动用360软件管家,它的卸载功能可以发现、提示和清除软件留下的残余信息。出乎我意料的是,一点残余信息都没有。再次安装这个新版本的Qt,表现依然,问题依旧:Open Recent Project非空,按F1则提示“No Documentation Available”。

现在至少可以解除注册表的嫌疑了。

剩下的可能性是:这些残余信息被储存在某些文件之中,但这些文件不在Qt安装目录下,而卸载的时候也不会被删除。文件里的内容,一部分是可以在新旧版本之间共用的,如“Open Recent Project”;一部分不可共用,而这是导致Context Help出问题的原因。

怎样找出这些文件藏匿的地方,怎样解决呢?我只好硬着头皮向Google求助。换了N次关键词,翻到第N页,终于看到了希望。有个帖子写道,先关闭Qt Creator,然后删除文件.../.../Users/YOUR_USERNAME/AppData/Roaming/Nokia/qtcreator/helpcollection.qch,和文件夹.../.../Users/YOUR_USERNAME/AppData/Roaming/Nokia/qtcreator/.helpcollection 然后重启Qt Creator。它还提到,它们是the cache for the documentation index, and are regenerated in case of need

我装的OSXP,根本没有所提到的目录(好像Windows 7可以直接照此办理)。但AppData让我眼前一亮、心头一震。我知道上哪儿去找了。找到“C:/.../.../Application Data/Nokia”文件夹,到其子目录qtcreator,删文件helpcollection.qch和文件夹.helpcollection,就解决问题了。打开Qt CreatorF1功能恢复正常了。而且可以看到,一打开Qt Creator,便自动重新创建helpcollection.qch和文件夹.helpcollection

但是可以看到,Open Recent Project下的条目仍然存在。原因是这样的,Nokia文件下有个文件QtCreator.ini,它里面保存着一些设置,而且用记事本打开它,可以找到诸如RecentProjects/FileNames=D://Qt//CodeExmaples//Sort_ByPureCode//Sort_ByPureCode.pro这样的记录,这就是Open Recent Project下的条目。造成注意:QtCreator.ini里面保存着有关设置的重要信息,最好别乱动它。

Nokia目录下还有其他一些文件,只是我不知道它是干什么用的。

 

 

唉————(仰天长叹)

折来腾去,终于把这个问题解决了!

接下来,我又该动起静态编译的心思了。

 

 

总结一下:

问题:Qt“升级”后,上下文帮助(Context Help)失效,F1不灵,只得到“No Documentation Available”的回应。

解决:找到“C:/.../.../Application Data/Nokia”文件夹,到其子目录qtcreator,删掉文件helpcollection.qch和文件夹.helpcollection。(XP下)

注意:此路径与用户名和Windows版本有关,我XP,用上面的; Windows 7,则应该是文件.../.../Users/YOUR_USERNAME/AppData/Roaming/Nokia/qtcreator/helpcollection.qch,和文件夹.../.../Users/YOUR_USERNAME/AppData/Roaming/Nokia/qtcreator/.helpcollection

当然,最好在卸Qt之后,把这个目录的东西也清一下,消除隐患。

 

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值