分享

Window 环境 MinGW32 + GCC 4.8.1 绿色版 Qt 4.8.5 开发环境

 quasiceo 2014-01-17

使用nuwen的mingw工具链编译Qt和Boost

不依赖于任何mingw/msys动态库

qtcreator升级到2.8.1,修改使之能够适应目录移动(与mingw配合)

 

资源文件如下:

msys环境:C0_msys-wget-svn-git-mercurial-cvs-rev13.7z(来自于网络,请参照其所附带的使用及版权说明)

mingw32工具:C1_mingw-x32-gcc-4.8.1-posix-dwarf-rev2.7z(来自于网络,请参照其所附带的使用及版权说明)

Qt 4.8.5 + Qt Creator 2.8.0 + QChart 1.3.0:part1  part2 (源码编译)

按照如下顺序配置完毕,启动msys.bat,即可使用msys+mingw+qt工具集:

00.解压C0至任意文件夹
01.顺序解压C1、C2至C0解压出的msys目录
02.启动msys.bat
03.命令行使用Qt 4.8.5提供的开发工具和qctreator


Window环境MinGW32 + GCC 4.7.2 编译绿色版Qt 4.8.4备记

Windows 7 下按照如下步骤编译绿色版Qt 4.8.4(编译后的文件下载qt-4.8.4-mingw-gcc-4.7.2-msys-win320(带qtcreator 2.6.2),需要mingw-gcc-4.7.2-msys-win32支持)

1. 安装最新版的msys和mingw,下载地址msys+mingw -》mingw-gcc-4.7.2-msys-win32


2. 运行msys.bat,测试gcc和gdb


3. 在/下创建目录opt


4. 经过以上步骤后的目录结构如下
├─bin
├─etc
├─home
│  └─USERHOME
├─include
├─lib
│  └─perl5
│      └─5.8
├─mingw
├─opt
├─postinstall
├─sbin
│  └─awk
└─share

5. 解压Qt 4.8.4源码到/home下(源码目录,其它目录也可以)

6. 进入Qt源码目录,执行./configure.exe -prefix /opt/Qt/4.8.4 -Release

7. configure成功执行后,不要急于mingw32-make
   修改qt源码目录\src\corelib\global下的qlibraryinfo.cpp文件中QString QLibraryInfo::location(LibraryLocation loc)的实现,使用环境变量QTDIR获取相关路径信息。
   当然,如果有key和编译目录等相关敏感信息需要修改,也可以修改qt源码目录\src\corelib\global下对应的文件,建议编译开源版本。
  
8. 进入Qt源码目录\qmake,执行mingw32-make,生成新的qmake

9. 进入Qt源码目录,执行mingw32-make,成功后执行执行mingw32-make install,安装完成后可删除Qt源码目录

    修改Qt安装目录\mkspecs\default\qmake.conf的第一行为QMAKESPEC_ORIGINAL=$QTDIR/mkspecs/win32-g++-4.6

10.本人编译时仅编译了Release版本的Qt,针对Debug库文件需要创建文件链接,创建/opt/Qt/install.bat,文件内容如下
          @echo off
          set cdir=%PWD%
          cd %QTDIR%/lib
          @echo 开始为Qt项目调试创建开发库文件连接

rm  libQAxContainerd.a          
rm  libQAxServerd.a             
rm  libQtCLucened4.a            
rm  libQtCored4.a               
rm  libQtDeclaratived4.a        
rm  libQtDesignerd4.a           
rm  libQtDesignerComponentsd4.a 
rm  libQtGuid4.a                
rm  libQtHelpd4.a               
rm  libQtMultimediad4.a         
rm  libQtNetworkd4.a            
rm  libQtOpenGLd4.a             
rm  libQtScriptd4.a             
rm  libQtScriptToolsd4.a        
rm  libQtSqld4.a                
rm  libQtSvgd4.a                
rm  libQtTestd4.a               
rm  libQtWebKitd4.a             
rm  libQtXmld4.a                
rm  libQtXmlPatternsd4.a        
rm  libqtmaind.a                

mklink  libQAxContainerd.a           libQAxContainer.a
mklink  libQAxServerd.a              libQAxServer.a
mklink  libQtCLucened4.a             libQtCLucene4.a
mklink  libQtCored4.a                libQtCore4.a
mklink  libQtDeclaratived4.a         libQtDeclarative4.a
mklink  libQtDesignerd4.a            libQtDesigner4.a
mklink  libQtDesignerComponentsd4.a  libQtDesignerComponents4.a
mklink  libQtGuid4.a                 libQtGui4.a
mklink  libQtHelpd4.a                libQtHelp4.a
mklink  libQtMultimediad4.a          libQtMultimedia4.a
mklink  libQtNetworkd4.a             libQtNetwork4.a
mklink  libQtOpenGLd4.a              libQtOpenGL4.a
mklink  libQtScriptd4.a              libQtScript4.a
mklink  libQtScriptToolsd4.a         libQtScriptTools4.a
mklink  libQtSqld4.a                 libQtSql4.a
mklink  libQtSvgd4.a                 libQtSvg4.a
mklink  libQtTestd4.a                libQtTest4.a
mklink  libQtWebKitd4.a              libQtWebKit4.a
mklink  libQtXmld4.a                 libQtXml4.a
mklink  libQtXmlPatternsd4.a         libQtXmlPatterns4.a
mklink  libqtmaind.a                 libqtmain.a
@echo 为Qt项目调试创建开发库文件连接结束
cd %cdir%
exit

      安装后如果移动了msys目录,可能需要在启动msys.bat后进入/opt/Qt 执行$COMSPEC /k install.bat

USERNAME@PCNAME /opt/Qt
$ $COMSPEC /k install.bat

 

11.修改/etc/profile文件,在如下位置增加红色字体部分内容


# Copyright (C) 2001, 2002  Earnie Boyd  <earnie@users.sf.net>
# This file is part of the Minimal SYStem.
#   http://www./msys.shtml
#
#         File: profile
#  Description: Shell environment initialization script
# Last Revised: 2002.05.04

if [ -z "$MSYSTEM" ]; then
  MSYSTEM=MINGW32
fi

# For Qt Developer
if [ -d "/opt/Qt" ]; then
export QTDIR=/opt/Qt/4.8.4
export QTCDIR=/opt/Qt/qtcreator
export PATH="$QTDIR/bin:$QTCDIR/bin:$PATH"
export LD_LIBRARY_PATH="$QTDIR/lib:$LD_LIBRARY_PATH"
 if [ ! -f $QTDIR/lib/libqtmaind.a ]; then
    $COMSPEC /k $QTDIR/../install.bat
  fi
fi

# My decision to add a . to the PATH and as the first item in the path list
# is to mimick the Win32 method of finding executables.
#
 

 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多