Windows平台上编译Qt-4.8.x Debug版注意事项

Windows平台上编译Qt-4.8.x Debug版注意事项

跳转至: 导航搜索

目录

0 为什么要编译qt-4.8.x的Windows Debug版?

目的:为了方便调试qt的代码!VS比Linux gdb好使多了。

1 MSVC版本的选择

最好使用VS2008+,它的安装包自带了Windows SDK,不要用过时的VS2005(后者需要额外安装Windows SDK)

Note:最新版本已经是qt-4.8.6,而且官方发布了WinCE的预编译版本。看起来似乎Digia已经解决了icu库在WinCE上的交叉编译问题?(待确认)

Note2:VS2008+(VS2010,乃至VS2012、VS2013)似乎默认已经自带了Windows SDK,不像2005还需要另外单独安装。

2 WinRAR的问题

从压缩包qt-everywhere-opensource-src-4.8.2.tar.gz解压:

——如果使用的winrar程序有问题,可能导致解压出来的文件名有些变成了*.cpp0000644,使用一个Ruby脚本批量修正此问题(需要安装Ruby 1.9.3运行环境)

# Recursive scan a dir, & perform each-file rename operation:

def batch_files_from_dir(basepath)
   sub_dirs = Array.new
   Dir.new(basepath).entries.each { |subpath|
       path = File.join(basepath, subpath)
       if File.file?(path) then
           if /0000[0-9]{3}$/.match(path) then
               puts "#{path}"
               new_path = path.gsub(/0000[0-9]{3}$/, )
               File.rename(path, new_path)
               puts "\t--->#{new_path}"
           end
       elsif subpath!="." and subpath!=".." and File.directory?(path) then
           batch_files_from_dir(path)
       end
   }
end

ARGV.each{ |path|
   batch_files_from_dir( path )
}

3 qmake子项目裁剪

  1. 输入cmd,进入命令行环境
  2. 运行Visual Studio自带的那个VC vsvarsall.bat脚本,自动配置环境参数(qt configure时需要调用cl做编译测试)
  3. 先运行一次configure:
    命令行:configure -debug -opensource -no-qt3support -platform win32-msvc2008 -webkit-debug -no-s60
    让qmake为所有的Qt项目生成全部的*.vcproj(VS项目文件)
  4. 从projects.pro中删除demos、tools、examples、docs、translations模块(#注释掉对应行)再次运行一次configure。
    这会影响最终生成的projects.sln,使得其只包含必要的子项目模块
    如果你不在这个时候删除,则默认生成的projects.sln会包含全部.pro对应的.vcproj子项目,导致不必要的编译。
  5. 用VS2008打开projects.sln,默认startup项目是bootstrap。加入demos/browser、QtUITools 2个项目(找到对应的.vcproj文件,加入即可)
  6. 先编译一次;
  7. 然后选中QtWebKit作为startup项目,再build一次;
    这里会提示webcore编译失败,修改DefaultLocalizationStrategy.cpp报错行,删除掉那个全角双引号即可;
  8. 最后选中browser项目,再build一次;
    这回提示找不到QtUIToolsd.lib链接,添加对应的vcproj即可(tools\designer\src\uitools\QtUiTools.vcproj)
  9. 注意,在这种配置下,有些子项目模块最终仍然没有被编译到,说明对QtWebKit来说,根本不需要(比如那个phonon)
    1. 但是当需要在Qt-4.8.x上编译更高版本的WebKit时,这些项目模块仍然需要(如QtSql、QtXml等)
  10. 再次编译,这回成功了

4 调试QtWebKit

设置QtWebKit为启动项目,调试命令行为demos/browser程序的完全路径,启动路径设为Qt bin。

时间: 2024-10-13 16:09:55

Windows平台上编译Qt-4.8.x Debug版注意事项的相关文章

在Windows Qt-4.8.x平台上编译Qt-5.0+ WebKit(即qtwebkit-2.3.x) Debug版注意事项

在Windows Qt-4.8.x平台上编译Qt-5.0+ WebKit(即qtwebkit-2.3.x) Debug版注意事项 跳转至: 导航. 搜索 目录 1 C++编译问题 1.1 从idl生成.h/.cpp失败? 1.2 VS编译器版本 1.3 名字导出问题 1.4 找不到int64_t类型? 1.5 Windows上需要pthread-win32库以提供多线程支持 2 链接问题 2.1 mt.exe : general error c101008d: Failed to write t

亲试,Windows平台上使用Qt5.2.1编写Android

首先把工具都下载好: 1. Qt for Android: http://qt-project.org/downloads 2. Android NDK http://developer.android.com/tools/sdk/ndk/index.html 64位可以下载第二个 3. Apache Ant 1.9.3 http://ant.apache.org/bindownload.cgi 4. JDK http://www.oracle.com/technetwork/java/java

Windows平台上安装LaTex工具以及LaTex常见的文件类型汇总

LaTex广泛用于学术报告.paper.学术PPT的撰写和制作,熟练掌握LaTex是在学术界生存的必备基本技能之一.本文简要介绍了在Windows平台上安装LaTex工具的基本方法和流程以及LaTeX常见的文件类型. 1.下载MiKTeX,下载地址为:http://miktex.org/download.MiKTeX的正确读音为/'mik'tek/. 2.安装MikTeX.安装完毕后,在开始菜单会出现"Previewer"和"TeXworks"程序图标.Previe

在ARM平台上编译安装golang

golang也就是go语言,现在已经发行到1.4.1版本了,语言特性优越性和背后google强大靠山什么的就不多说了.golang的官方提供了多个平台上的二进制安装包,遗憾的是并非没有发布ARM平台的二进制安装包.ARM平台没办法直接从官网下载二进制安装包来安装,好在golang是支持多平台并且开源的语言,因此可以通过直接在ARM平台上编译源代码来安装.整个过程主要包括编译工具配置.获取golang源代码.设置golang编译环境变量.编译.配置golang运行环境变量等步骤. 注:本文选用树莓

【翻译自mos文章】在windows平台上怎么启用Oracle database 企业版的partition?

来源于: How to enable Partitioning in Oracle Database Enterprise Edition 11.2 on Windows (文档 ID 1188238.1) 适用于: Oracle Database - Enterprise Edition - Version 11.2.0.1 and later Information in this document applies to any platform. 目标: 在Windows平台上怎么启用Or

在Windows平台上远程桌面Redhat 企业版 5和6.

在Windows平台上远程桌面Redhat 企业版 5和6.这个方法主要是使用XManager 3.0来进行远程桌面.1.使用软件:XManager3.0企业版.2.服务器版本:Redhat Enterprise 5&6.3.服务器端详细配置:     3.1.修改/etc/inittab              id:5:initdefault;     3.2.修改/etc/gdm/custom.conf              [xdmcp]              Enable=1

在Android平台上编译faad2

1.从官网下载源码 2.编辑一个config.h: /* config.h. Generated from config.h.in by configure. */ /* config.h.in. Generated from configure.in by autoheader. */ /* Define if you want to use libfaad together with Digital Radio Mondiale (DRM) */ /* #undef DRM */ /* De

在Windows平台上安装Node.js及NPM模块管理

1. 下载Node.js官方Windows版程序:   http://nodejs.org/#download   从0.6.1开始,Node.js在Windows平台上提供了两种安装方式,一是.MSI安装文件,另外还有一个.EXE可执行文件.   我选择了.EXE文件.因为.MSI安装文件除了将node.exe复制到C:\Program File (x86)\目录中及修改系统Path之外,没发现还有其他作用.   我使用的版本为0.6.2: http://nodejs.org/dist/v0.

Windows平台上谷歌浏览器损害电池

From:http://www.cnblogs.com/killerlegend/p/3909208.html Author:KillerLegend Date:2014.8.13 事情是这样的,我的笔记本最近老是突然就关机了,就跟台式机突然断电似的,直接就挂掉了...   我的电脑用的不到一年半,使用powercfg –energy命令检测: 查看energy-report.html,检测结果吓了我一跳: 我电池现在充电连33%都不到了,以前电脑断电后基本上两个小时都可以坚持住,现在就是40分