• 5311阅读
  • 6回复

qt4.3.3 问题 [复制链接]

上一主题 下一主题
离线touchq
 
只看楼主 倒序阅读 楼主  发表于: 2008-01-23
— 本帖被 XChinux 执行加亮操作(2008-01-24) —
请大家帮帮忙。
1. 我使用windows XP professional version 2002 service pack 2;
Microsoft Visual studio .Net 2003 (version 7.1.3088);系统还装了MS .Net framework 1.1 (version 1.1.4322 SP1) 以及 .Net framwwork 2.0

2. 我从trolltech网站下载了qt-win-opensource-src-4.3.3.zip (网址是:http://trolltech.com/developer/downloads/qt/windows)

3. 解压到C:\qt4

4. 在command promt下敲:
  1. vcvars32.bat

用于设置环境变量(根据qt的帮助文件)

5. 然后敲:
  1. cd c:\qt4
  2. configure

开始configure, 等了很长一段时间后提示我可以build了

6.敲:
  1. nmake

开始了更长时间的编译,结束后也没有出错信息。生成了一些dll放在\qt4\bin\里面。还为所有的code (包括example, tutorial) 生成了project file for Visual studio (.vcproj); 并且都build了,生成了release and dubug的可执行文件 (.dll 或者.exe)

7.以上这些都没问题,问题出在当我想运行一些生成的exe文件时,debug 下的exe可以执行,但是release下的exe无法执行。出错信息是:
This application has failed to start because MSVCP80.dll was not found. Re-installing the application may fix this problem.
在\examples\tutorial\目录下那些release 版本的exe都出现同样的出错信息。

我用visual studio2003打开生成的project(比如torllteck 提供的第一个tutorial, "hello World"),重新编译,release和debug编译都没问题,就是relase无法执行,debug可以。

另外,在C:\qt4\bin\目录下的文件都可以运行,一点问题都没有。比如qtdemo.exe;designer.exe等。

希望大家帮帮忙。谢谢!
[ 此贴被touchq在2008-01-23 19:17重新编辑 ]
离线sxy6z

只看该作者 1楼 发表于: 2008-01-23
这玩意需要和VC或者 DEV C++ 配合使用的,单纯装个这玩意很多事情干不了
离线foxyz

只看该作者 2楼 发表于: 2008-01-24
把这个Dll的搜索路径加入到环境变量里去。
既然你的debug版本能用,而release不能用(这两个的差别是,debug的一般静态连接了libs,生成的exe很大,
release的在运行的时候需要动态去找Dll)
windows我不是很清楚。在solaris下边,我需要设置LD_LIBRARY_PATH
离线landuochong

只看该作者 3楼 发表于: 2008-01-24
windows下也应该设置lib路径
离线berryz2007

只看该作者 4楼 发表于: 2008-01-24
离线touchq
只看该作者 5楼 发表于: 2008-01-24
谢谢大家回复!昨天折腾了一天!终于有点进展。发现如果我在QT command prompt下,就可以执行release exe, 不再提示错误找不到那个MSVCP80.dll 和MSVCR80.dll. 但是如果只是普通的command prompt window,就不行。(在windows explorer双击运行也还是不行 )

后来我把C:\qt433\bin; c:\minWG\bin; 加到windows 的 system PATH ; 一开始还是不行。
我的system path 里有一个visual studio 2003的path:
C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\bin; 我一开始是把qt的path放在这个path后面, 不行。但是我把qt的path (C:\qt433\bin; c:\minWG\bin) 挪到那个visual studio 2003的path前面。这下就行了。不一定非要在QT command prompt 运行了。wondows explorer 直接双击也可以运行。 我不知道为什么非要把c:\qt433\bin放在visual studio 2003 bin的前面。还是有其他原因(因为我同时还把QMAKESPEC设成win32-msvc.net,之前没有设)

谢谢大家!我比较土,新手。
离线berryz2007

只看该作者 6楼 发表于: 2008-01-24
我也新手,呵呵
快速回复
限100 字节
 
上一个 下一个