qt 编译 vs2005

下载源码:http://ftp.iasi.roedu.net/mirrors/ftp.trolltech.com/qt/source/qt-win-opensource-src-4.3.1.zip
下载patch: http://jaist.dl.sourceforge.net/sourceforge/qtwin/acs-4.3.0-patch2.zip
解压缩patch到源码目录
执行install....
执行qconfigure msvc2005


Psi-Qt4-Windows Build Scripts

From PsiWiki

Disclaimer: These instructions are unofficial and may or may not work for you.

This page contains scripts for building Psi-Qt4 on Windows platform.

Notes:

  • If You were looking for scripts for building Psi on Windows, please consult Psi/Windows build scripts article.
  • These scripts may take the advantages of superior command-line cmd.exe found in Windows NT/2000/XP/Server 2003 and may not work properly on Windows 95/98/Me.

Contents

[hide]

[ edit]

Main worker script

This script does the main job compiling Psi-Qt4 and is called from inside other scripts. Should not be called directly from the command-line. It must be placed in makewin_build.bat file in order for other scripts to work properly.

 @echo off

if "%1" == "" goto NoArgs

REM ----- Setup compilation and release process -----

set name=Psi-Qt4 for Windows
set project=psi.pro
set outdir=psiwin
set binary=Psi.exe

set system=%windir%/system
if "%OS%" == "Windows_NT" set system=%system%32

call %1 > nul
shift

REM ----- Compile and link Psi -----

echo This will compile, link and release %name%.
echo STEP 1: Create Makefile for QCA
title Creating Makefile for QCA...
cd ../qca2
qmake qca.pro > ../psi-qt4/makewin.log
if errorlevel 1 goto NoQMake
echo STEP 2: Compile QCA
title Compiling QCA...
%MAKE% qmake_all >> ../psi-qt4/makewin.log
cd src
%MAKE% release >> ../../psi-qt4/makewin.log
cd ..
copy lib/qca2.lib ../psi-qt4/src/ > nul
copy lib/qca2.lib ../qca2-openssl/ > nul
cd ../psi-qt4
echo STEP 3: Create Makefile for %name%
title Creating Makefile for %name%...
qmake %project% > makewin.log
if errorlevel 1 goto NoQMake
echo STEP 4: Compile %name%
title Compiling %name%...
%MAKE% qmake_all >> makewin.log
cd src
%MAKE% release >> ../makewin.log
cd ..
if errorlevel 1 goto CompileFailed
echo STEP 5: Create Makefile for QCA-OpenSSL plugin for %name%
title Creating Makefile for QCA-OpenSSL plugin for %name%...
cd ../qca2-openssl
qmake qca-openssl.pro >> ../psi-qt4/makewin.log
echo STEP 6: Compile QCA-OpenSSL plugin for %name%
title Compiling QCA-OpenSSL plugin for %name%...
%MAKE% release >> ../psi-qt4/makewin.log
if errorlevel 1 goto CompileFailed
cd ..

REM ----- Copy output to single directory -----

 :Release
echo STEP 7: Prepare for release of %name%
title Preparing for release of %name%...
if exist %outdir% rmdir /s /q %outdir%
mkdir %outdir%
copy src/release/%binary% %outdir% > nul
copy %QTDIR%/bin/qt*4.dll %outdir% > nul
del %outdir%/qt*d4.dll > nul
mkdir %outdir%/crypto
copy ../qca2-openssl/release/qca-openssl.dll %outdir%/crypto > nul
copy ../qca2/lib/qca2.dll %outdir% > nul
copy %system%/libeay32.dll %outdir% > nul
copy %system%/ssleay32.dll %outdir% > nul
xcopy /d /e certs %outdir%/certs/ > nul
xcopy /d /e iconsets %outdir%/iconsets/ > nul
xcopy /d /e sound %outdir%/sound/ > nul
copy COPYING %outdir% > nul
copy README %outdir% > nul

REM ----- Process succeeded -----

 :Finished
echo Seems that %name% is ready for distibution.
title Done.
goto End

REM ----- Error handling -----

 :NoArgs
echo No arguments at command line.
goto End

 :NoQMake
echo Failed to run 'qmake'. Are you sure you have Qt4 set up?
goto End

 :CopyFailed
echo Copy failed, stopping.
goto End

 :CompileFailed
echo Compile failed, stopping. See 'makewin.log' file for details.
goto End

REM ----- Cleanup -----

 :End
set name=
set project=
set outdir=
set binary=
set system=
[ edit]

Compiler specific scripts

This section provides compiler-specific scripts - each compiler is provided with two scripts - one setup and one driver.

[ edit]

MinGW specific scripts

[ edit]
Setup script

This script sets up the environment for MinGW compiler. It must be named setup_g++.bat.

 @echo off
 :: Set paths for Qt 4.1.0/OpenSource
set QTDIR=C:/Qt/4.1.0
 :: Set paths and variables for MinGW (g++)
call "%QTDIR%/bin/qtvars.bat"

 :: Set names for some tools
set MAKE=mingw-win32

Note:

  • You might need to change the location of Your Qt4/OpenSource installation (C:/Qt/4.1.0 here).
[ edit]
Driver script

This script drives the whole build process for MinGW compiler. I prefer it to be named makewin_g++.bat, but any name is good.

 @echo off
call makewin_build.bat setup_g++.bat %1

You run this script to build Psi-Qt4/Windows using MinGW.

[ edit]

Microsoft Visual C++ .NET scripts

[ edit]
Setup script

This script sets up the environment for Microsoft Visual C++ .NET compiler. It must be named setup_msvc.net.bat.

 @echo off
 :: Set paths and variables for Microsoft Visual C++ .NET 2003
call "%VS71COMNTOOLS%vsvars32.bat"
 :: Append Microsoft Platform SDK (comment out if not installed)
set INCLUDE=C:/Progra~1/Micros~2/include;%INCLUDE%
set LIB=C:/Progra~1/Micros~2/lib;%LIB%
 :: Set paths for Qt 4.1.0/OpenSource for VS.NET
set QTDIR=C:/Qt/4.1.0
set QMAKESPEC=win32-msvc.net
set PATH=%QTDIR%/bin;%PATH%

 :: Set names for some tools
set MAKE=nmake /nologo

Notes:

  • You might need to change the location of Your Qt4/OpenSource installation (C:/Qt/4.1.0 here).
  • If You use Microsoft Visual C++ .NET (a.k.a. Microsoft Visual C++ .NET 2002) compiler, You need to replace %VS71COMNTOOLS% with %VSCOMNTOOLS% in order for the script to work correctly.
  • If You have no Microsoft Platform SDK installed, delete following lines from the above script:
 :: Append Microsoft Platform SDK (comment out if not installed)
set INCLUDE=C:/Progra~1/Micros~2/include;%INCLUDE%
set LIB=C:/Progra~1/Micros~2/lib;%LIB%

Otherwise, You have to replace C:/Progra~1/Micros~2 with the short path to Microsoft Platform SDK installation directory. It can be obtained by running the following command:

 dir /x "%programfiles%/*Platform*"

%programfiles% is usually C:/Progra~1.

[ edit]
Driver script

This script drives the whole build process for Microsoft Visual C++ .NET compiler. I prefer it to be named makewin_msvc.net.bat, but any name is good.

 @echo off
call makewin_build.bat setup_msvc.net.bat %1

You run this script to build Psi-Qt4/Windows using Microsoft Visual C++ .NET.

[ edit]

Microsoft Visual C++ 2005 scripts

[ edit]
Setup script

This script sets up the environment for Microsoft Visual C++ 2005 compiler. It must be named setup_msvc2005.bat.

 @echo off
 :: Set paths and variables for Microsoft Visual C++ 2005
call "%VS80COMNTOOLS%vsvars32.bat"
 :: Set paths for Qt 4.1.0/OpenSource for VS2005
set QTDIR=C:/Qt/4.1.0
set QMAKESPEC=win32-msvc2005
set PATH=%QTDIR%/bin;%PATH%

 :: Set names for some tools
set MAKE=nmake /nologo

Notes:

  • You might need to change the location of Your Qt4/OpenSource installation (C:/Qt/4.1.0 here).
[ edit]
Driver script

This script drives the whole build process for Microsoft Visual C++ 2005 compiler. I prefer it to be named makewin_msvc2005.bat, but any name is good.

 @echo off
call makewin_build.bat setup_msvc2005.bat %1

You run this script to build Psi-Qt4/Windows using Microsoft Visual C++ 2005.

[ edit]

Cleanup script

This script cleans up the source directories of Psi-Qt4, QCA2 and QCA-OpenSSL and prepares them for complete rebuild. I prefer it to be named makewin_clean.bat.

 @echo off

if not exist lang goto psiwidgets
cd lang
if exist *.qm del *.qm
cd ..

 :psiwidgets
if not exist libpsi/psiwidgets goto qca
cd libpsi/psiwidgets
if exist tmp rmdir /s /q tmp
if exist debug rmdir /s /q debug
if exist release rmdir /s /q release
if exist *.dll del *.dll
if exist *.exp del *.exp
if exist *.idb del *.idb
if exist *.lib del *.lib
if exist moc_*.* del moc_*.*
if exist *.moc del *.moc
if exist *.o del *.o
if exist *.obj del *.obj
if exist *.pdb del *.pdb
if exist *.so del *.so
if exist *.tds del *.tds
if exist Makefile del Makefile
if exist *.Debug del *.Debug
if exist *.Release del *.Release
cd ../..

 :qca
if not exist ../qca2 goto tls
cd ../qca2
for /r %%x in (.) do (
if exist %%x/.moc rmdir /s /q %%x/.moc
if exist %%x/.obj rmdir /s /q %%x/.obj
if exist %%x/.ui rmdir /s /q %%x/.ui
if exist %%x/moc rmdir /s /q %%x/moc
if exist %%x/obj rmdir /s /q %%x/obj
if exist %%x/ui rmdir /s /q %%x/ui
if exist %%x/debug rmdir /s /q %%x/debug
if exist %%x/release rmdir /s /q %%x/release
if exist %%x/bin rmdir /s /q %%x/bin
if exist %%x/lib rmdir /s /q %%x/lib
if exist %%x/*.dll del %%x/*.dll
if exist %%x/*.exp del %%x/*.exp
if exist %%x/*.idb del %%x/*.idb
if exist %%x/*.lib del %%x/*.lib
if exist %%x/*.moc del %%x/*.moc
if exist %%x/*.o del %%x/*.o
if exist %%x/*.obj del %%x/*.obj
if exist %%x/*.pdb del %%x/*.pdb
if exist %%x/*.so del %%x/*.so
if exist %%x/*.tds del %%x/*.tds
if exist %%x/Makefile del %%x/Makefile
if exist %%x/*.Debug del %%x/*.Debug
if exist %%x/*.Release del %%x/*.Release
)
cd ../psi-qt4

 :tls
if not exist ../qca2-openssl goto src
cd ../qca2-openssl
if exist debug rmdir /s /q debug
if exist release rmdir /s /q release
if exist *.dll del *.dll
if exist *.exp del *.exp
if exist *.idb del *.idb
if exist *.lib del *.lib
if exist *.moc del *.moc
if exist *.o del *.o
if exist *.obj del *.obj
if exist *.pdb del *.pdb
if exist *.so del *.so
if exist *.tds del *.tds
if exist Makefile del Makefile
if exist *.Debug del *.Debug
if exist *.Release del *.Release
cd ../psi-qt4

 :src
if not exist src goto win32
cd src
for /r %%x in (.) do (
if exist %%x/.moc rmdir /s /q %%x/.moc
if exist %%x/.obj rmdir /s /q %%x/.obj
if exist %%x/.rcc rmdir /s /q %%x/.rcc
if exist %%x/.ui rmdir /s /q %%x/.ui
if exist %%x/moc rmdir /s /q %%x/moc
if exist %%x/obj rmdir /s /q %%x/obj
if exist %%x/rcc rmdir /s /q %%x/rcc
if exist %%x/ui rmdir /s /q %%x/ui
if exist %%x/debug rmdir /s /q %%x/debug
if exist %%x/release rmdir /s /q %%x/release
if exist %%x/bin rmdir /s /q %%x/bin
if exist %%x/lib rmdir /s /q %%x/lib
if exist %%x/*.dll del %%x/*.dll
if exist %%x/*.exe del %%x/*.exe
if exist %%x/*.exp del %%x/*.exp
if exist %%x/*.idb del %%x/*.idb
if exist %%x/*.lib del %%x/*.lib
if exist %%x/*.moc del %%x/*.moc
if exist %%x/*.o del %%x/*.o
if exist %%x/*.obj del %%x/*.obj
if exist %%x/*.pdb del %%x/*.pdb
if exist %%x/*.so del %%x/*.so
if exist %%x/*.tds del %%x/*.tds
if exist %%x/Makefile del %%x/Makefile
if exist %%x/*.Debug del %%x/*.Debug
if exist %%x/*.Release del %%x/*.Release
)
cd ..

 :win32
if not exist win32 goto root
cd win32
if exist *.res del *.res
cd ..

 :root
if exist psiwin rmdir /s /q psiwin
if exist *.log del *.log
if exist Makefile del Makefile
if exist *.Debug del *.Debug
if exist *.Release del *.Release
[ edit]

Links

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值