找回密码
 立即注册
收起左侧

Qt在win7 64位上编译发布,在32位系统上不能运行

10
回复
15278
查看
[复制链接]
累计签到:29 天
连续签到:1 天
来源: 2017-8-13 09:57:18 显示全部楼层 |阅读模式
1Qter豆
各位大佬:
      初学Qt,我用的是win7 64bit+Qt5.8.0+VS2015,请问,在Qt creator中的项目发布后如何能在win7 32位的系统上运行呢?需要如何进行配置嚒?我发布的项目是本站精品教程第二篇的编写多窗口程序,并没有用到qint64定义

回复

使用道具 举报

累计签到:1 天
连续签到:1 天
2017-8-13 18:06:20 显示全部楼层
与qint64无关。估计是缺少dll。你可以把报的错说一下啊
回复

使用道具 举报

尚未签到

2017-8-13 23:00:22 显示全部楼层
64和32程序并不兼容,需要重新编译
回复

使用道具 举报

累计签到:36 天
连续签到:1 天
2017-8-14 16:49:57 显示全部楼层
改用32位的版本编译就可以了。64的程序不能在32位上跑。
回复

使用道具 举报

累计签到:29 天
连续签到:1 天
2017-8-14 17:35:23 显示全部楼层
Joey_Chan 发表于 2017-8-13 23:00
64和32程序并不兼容,需要重新编译

所以我还要重新安装一个32位的开发环境喽?
回复

使用道具 举报

累计签到:29 天
连续签到:1 天
2017-8-14 18:43:20 显示全部楼层
stlcours 发表于 2017-8-13 18:06
与qint64无关。估计是缺少dll。你可以把报的错说一下啊

就是这样呀 在win7 64位上发布的exe,在32位上运行,打不开。说和windows不兼容

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

累计签到:29 天
连续签到:1 天
2017-8-14 18:44:27 显示全部楼层
隔壁家小明 发表于 2017-8-14 16:49
改用32位的版本编译就可以了。64的程序不能在32位上跑。

好哒 多谢呀 我试试
回复

使用道具 举报

累计签到:1 天
连续签到:1 天
2017-8-15 06:28:54 显示全部楼层
本帖最后由 stlcours 于 2017-8-15 06:30 编辑
Michelle_hxy 发表于 2017-8-14 18:43
就是这样呀 在win7 64位上发布的exe,在32位上运行,打不开。说和windows不兼容

...

你能不能把你的代码工程上传一份?这样明确的提示,我还是第一次看到。

虽然是这样提示,但我估计其实不是32 64不兼容的问题。因为32程序直接就可以在64平台上正确执行(如果32编译正确的话)。如果是反过来,那么32平台根本不认识64程序,也不会出现你这种错误。所以真是好奇怪~
另外你还是没说,你自己的平台上64还是32,以及用什么编译器,编译器的设置是32还是64?所以最好把整个工程打包,传到本站或者百度云上。
回复

使用道具 举报

累计签到:29 天
连续签到:1 天
2017-8-15 14:27:26 显示全部楼层
本帖最后由 Michelle_hxy 于 2017-8-15 14:29 编辑
stlcours 发表于 2017-8-15 06:28
你能不能把你的代码工程上传一份?这样明确的提示,我还是第一次看到。

虽然是这样提示,但我估计其实不 ...

感谢回复!
经你的回复提示,我去另一个win 7 64位的电脑上运行,发现不能打开且报同样的错误。
所以我验证了发布环节,发现是我发布的有问题。按照图1上这个教程,我发布的时候在安装路径bin里没有找到libgcc_s_dw2-1.dll、libstdc++-6.dll、libwinpthread-1.dll这几个dll,但是在自己win7 64位电脑上能够运行,以为是现在版本更新不需要这几个dll了,所以直接发送到别的win 7 32位电脑上运行时,打不开以为是Windows版本问题。原来是我发布有问题。但这三个dll,还是不知道是什么...
后来搜索教程,利用Qt 5.8 64bit(MSVC 2015)执行windeployqt工具进行发布,后在另一台win7 64电脑上运行成功。按照你说的,应该在win32位上是不能运行的,我晚上回家再看看32位电脑会报什么提示。
图2是我的环境

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

累计签到:1 天
连续签到:1 天
2017-8-15 19:48:40 显示全部楼层
libgcc_s_dw2-1.dll、libstdc++-6.dll、libwinpthread-1.dll 这三个文件是mingw的库文件.如果你安装的是VC版,是不需要这三个文件的。你看的教程,和你自己安装的东西不一致。
回复

使用道具 举报

累计签到:29 天
连续签到:1 天
2017-8-15 22:33:06 显示全部楼层
stlcours 发表于 2017-8-15 19:48
libgcc_s_dw2-1.dll、libstdc++-6.dll、libwinpthread-1.dll 这三个文件是mingw的库文件.如果你安装的是VC ...

额 原来如此 多谢解惑
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了