• 7884阅读
  • 11回复

[提问]求qt5.0正式版 vs2012编译源代码教程 感谢! [复制链接]

上一主题 下一主题
离线ugame
 
只看楼主 倒序阅读 楼主  发表于: 2012-12-22
— 本帖被 XChinux 从 Qt基础编程 移动到本区(2012-12-23) —
rt.。。。。。。。。。
离线XChinux

只看该作者 1楼 发表于: 2012-12-22
你可以自己先试一下,呵呵。
VC2012用的人少吧,因为可能不支持WinXP。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线呆呆很呆
只看该作者 2楼 发表于: 2012-12-22
Beta时编译过 可以成功 自己试一下吧
离线sam_ch

只看该作者 3楼 发表于: 2012-12-25
There are a few things we’re still working on for the 5.0 series. We have bugs that we want to fix. We currently do not have binary packages for MinGW (as WebKit doesn’t yet work with it yet) and MSVC 2012 (you’ll need to compile from source), and we’ll work on delivering these as soon as possible. The current plan is to have a first patch level release, 5.0.1, some time before the end of January.
(From: http://blog.qt.digia.com/)
离线lvhuat
只看该作者 4楼 发表于: 2012-12-25
那里有相关的编译器下载呀!
离线icosagon

只看该作者 5楼 发表于: 2012-12-25

vs2012编译

准备
1 下载perl, python, ruby,安装,保证在Path环境变量下能到相应的解释器,
  ruby用来编译webkit的

2 安装vs2012 update1,对于qt5这样的大工程,vs2012的mt.exe还有些bug,会导致自动编译中断,update1更新之后就没这样问题了

3 下载icu, http://site.icu-project.org/, 下载最新版源码,最好下载zip后缀的源码包,解压后,有
  vc工程,在 source\allinone目录下,直接打开编译,如果要编译xp能跑的版本,注意在vc工程中
设置一下 xp target工具链, 只需要编译release版本,编译后,新增一个环境变量 INCLUDE, 设置成相应icu目录  include,
再新增一个环境变量LIB,设置成相应icu目录  lib, 如果这2个环境变量本来就有,新增加icu相应目录就行了

4 下载qt5源码包,记住,windows下要下载zip结尾的,不要看到tar.gz的小就下它,tar.gz的源码包不能直接在windows下编译

编译

1) 要编译x86, 打开vc x86命令提示符,如果要编译x64版本,就是x64的vc命令提示符,x64的我没试过

2) 如果要编译在xp上也能跑的qt5版本
set INCLUDE=%ProgramFiles(x86)%\Microsoft SDKs\Windows\7.1A\Include;%INCLUDE%
set PATH=%ProgramFiles(x86)%\Microsoft SDKs\Windows\7.1A\Bin;%PATH%
set LIB=%ProgramFiles(x86)%\Microsoft SDKs\Windows\7.1A\Lib;%LIB%
set CL=/D_USING_V110_SDK71_;%CL%

如果是x64,相应的LIB设置应为
set LIB=%ProgramFiles(x86)%\Microsoft SDKs\Windows\7.1A\Lib\x64;%LIB%

接着
set LINK=/SUBSYSTEM:CONSOLE,5.01 %LINK%

x64版本
set LINK=/SUBSYSTEM:CONSOLE,5.02 %LINK%

3) cd <path>\qt-everywhere-opensource-src-<version>
   configure -prefix %CD%\qtbase -opensource -nomake tests -nomake examples
   如果想编译例子,可以去掉-nomake examples
4) 执行nmake 开始编译, 编译耗时超长, 我因为编译了webkit和例子,晚上8点到第二天早上10点还没好。
    有兴趣可以试试文档说明里的多核编译,我没试过,也懒的试了

5) 生成文档
   cd <path>\qt-everywhere-opensource-src-<version>
   nmake docs
   生成的文档都在qtbase\doc目录下,以qch结尾的
  
  
我这遇到一个问题是,编译出来的assistant 无法双击打开图形界面,但是 命令行 assistant -help是正常的,
另外一个问题是 qmlscene有时打开某些qml文件会出错,不知道怎么回事




离线icosagon

只看该作者 6楼 发表于: 2012-12-25
另外编译出来的qt5 dll依赖d3dcompiler_46.dll,这个在vs2012下的目录里可以找到
离线roywillow

只看该作者 7楼 发表于: 2012-12-26
回 6楼(icosagon) 的帖子
目测如果想用msvc2012编译xp下运行的程序,除了update1,还需要win7sdk?
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线icosagon

只看该作者 8楼 发表于: 2013-01-02
回 7楼(roywillow) 的帖子
不需要,update1更新会默认会装上sdk7.1
离线roywillow

只看该作者 9楼 发表于: 2013-01-02
回 8楼(icosagon) 的帖子
今天装了sdk7.1之后才发现,vs2012用的是7.1A,于是瞬间明白过来了……
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线roywillow

只看该作者 10楼 发表于: 2013-01-03
回 5楼(icosagon) 的帖子
今天尝试编译了一下,发现console程序能在xp上跑,窗口程序不行,但是在win7上跑得动
那个subsystem官方只给了console的例子,那么windows是不是也需要用这个版本?
我没有完全用设置环境变量的方法来编译,我把CL那一行放在了qmake.conf中的QMAKE_COMPILER_DEFINES里(最后加了个_USING_V110_SDK71_),然后QMAKE_LFLAGS_CONSOLE和QMAKE_LFLAGS_WINDOWS最后都加了,5.01。这样做似乎不行啊……?
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线roywillow

只看该作者 11楼 发表于: 2013-01-03
啊我又犯傻了,忘了拷platform插件了
ok这次跑得动了,好使
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
快速回复
限100 字节
 
上一个 下一个