WindowsXP でpidgin-portable-2.6.2 のビルド (というより単なるパッケージング) をしてみるテスト

* はじめに [#jc1f1da0]

- オフィシャルなリビルド手順を見つけられなかったため,見様見真似で適当にやりました.
もしかしたら本来推奨されるやり方と異なるかもしれません.

- 作業はWindowsXP Professional x64 Edition 上で行いました


* Pidgin本体をビルド [#yc7e6acd]

とりあえず[[ビルド手順>Windows/Pidginをビルドしてみる/ビルド手順]]に従って
「pidginのインストーラの構築」の直前まで進める (インストーラまでは作らなくてよい)

以下を実行してインストーラ用のファイルを用意する

 make -f Makefile.mingw create_release_install_dir

完走してpidgin-2.6.2-win32binというディレクトリができていればOK


* NSISのプラグインなどを追加 [#d1854d89]

基本的に以下のファイルのうち,dllファイルはNSISのインストールディレクトリのPluginsの下に,
nshファイルはNSISのインストールディレクトリのIncludeの下に置く.

- [[FindProcDLL plug-in>http://nsis.sourceforge.net/FindProcDLL_plug-in]]
-- FindProcDLL.dllをPluginsの下にコピー
- [[MoreInfo plug-in>http://nsis.sourceforge.net/MoreInfo_plug-in]]
-- MoreInfo.dllをPluginsの下にコピー
- [[Copy Registry Key>http://nsis.sourceforge.net/Copy_Registry_Key]]
-- registry.nshをIncludeの下にコピー
- [[TextReplace plugin>http://nsis.sourceforge.net/TextReplace_plugin]]
-- textreplace.dllをPluginsの下にコピー
-- TextReplace.nshをIncludeの下にコピー
- [[NewAdvSplash plug-in>http://nsis.sourceforge.net/NewAdvSplash_plug-in]]
-- newadvsplash.dllをPluginsの下にコピー


* pidgin-portable本体のダウンロードと展開 [#ifa6549f]

ビルドに必要となるファイルが含まれているため
pidgin-portableの[[公式サイト>http://portableapps.com/apps/internet/pidgin_portable]]から
PidginPortable_2.6.2.paf.exe をダウンロードする.

ダウンロードが済んだら実行し,適当な場所にインストールする.「Additional Languages」は不要なので
チェックしなくてよい.


* 作業用ディレクトリの作成 [#kf334cd4]

今回は ~/compile/PidginPortable 以下で作業する.
 mkdir -p ~/compile/PidginPortable
 cd ~/compile/PidginPortable

メインのファイルを置くディレクトリ
 mkdir -p PidginPortable

言語関連のファイルを置くディレクトリ
 mkdir -p PidginPortable/Optional1

オリジナルのpidgin-portableのファイルを置く場所を用意
 mkdir -p original

* UPXの用意 [#tc8d0bae]

http://upx.sourceforge.net/ より upx303w.zip (Win32 console version) を
ダウンロードし,解凍して出てくる upx.exe を適当なところに置く.

ここでは ~/compile/PidginPortable 直下に置く.


* オリジナルのファイルのコピー [#tee0255d]

先ほどインストールしたpidgin-portableのディレクトリの中身をoriginalの
下にコピーする (以下のように配置されていればOK)
 % ls -F original
 App/  Data/  Other/  PidginPortable.exe*  help.html*

original以下からそのまま使うファイルをPidginPortable以下にコピーする
 cd PidginPortable
 mkdir -p App Data Other
 rsync -av ../original/Other/ Other/
 rsync -av ../original/App/AppInfo App/
 rsync -av ../original/App/DefaultData App/
 rsync -av ../original/App/GTKLegacy App/
 rsync -av ../original/App/aspell App/
 cp ../original/help.html .


* PidginおよびGTKの必要なファイルをコピー [#se5e9677]

 mkdir -p App/GTK
 rsync -av --exclude=share/locale \
   ../../pidgin/gtk_installer/gtk_install_files/ App/GTK/
 
 mkdir -p App/Pidgin
 rsync -av --exclude=locale \
  ../../pidgin/pidgin-2.6.2/pidgin-2.6.2-win32bin/ App/Pidgin/
 
 mv App/Pidgin/pidgin{,-portable}.exe


* ファイルを圧縮 [#a88e4a73]

 cd App/
 
 find . \( -name '*.dll' -o -name '*.exe' \) \
   -exec echo '{}' ';' \
   -exec ../../upx.exe --best --compress-icons=0 \
     --nrv2e --crp-ms=999999 -k '{}' ';'
 
 find . -name '*~' -exec rm '{}' ';'



* PidginおよびGTKの言語関連のファイルをコピーする [#d2e67b50]

 cd ~/compile/PidginPortable
 cd PidginPortable/Optional1
 
 mkdir -p App/{GTK,Pidgin}
 mkdir -p App/GTK/share
 
 rsync -av ../../../pidgin/gtk_installer/gtk_install_files/share/locale \
   App/GTK/share/
 
 rsync -av ../../../pidgin/pidgin-2.6.2/pidgin-2.6.2-win32bin/locale App/Pidgin/


* ランチャーを作る [#gee42cf2]

 cd ~/compile/PidginPortable
 cd PidginPortable
 cd Other/Source
 
 unset LANG
 makensis.exe PidginPortable.nsi

成功すると ~/compile/PidginPortable/PidginPortable に
PidginPortable.exe ができる. 


* インストーラーを作る [#cf6147d8]

PortableApps.com Installerをダウンロードして,適当な場所にインストールしておく~
http://portableapps.com/apps/development/portableapps.com_installer

インストールした PortableApps.comInstaller.exe を起動

Next で次の画面に行き,Create Installer For: で ~/compile/PidginPortable/PidginPortable
に相当するディレクトリを選んで Go

成功すると ~/compile/PidginPortable に PidginPortable_2.6.2.paf.exe ができるので
適宜リネーム.

 cd ~/compile/PidginPortable
 mv PidginPortable_2.6.2{,-yaz}.paf.exe


トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS