○ Sylpheedのインストール

・メモリ消費量の少ない高速起動のメールクライアントを使う
・sylpheed-3.1.1のrpmを作成し、インストールします
・ライブラリはfedoraのsrcパッケージから作成します
・gnupg2をバンドルしないで、構築します

・ソースの取得、削除は省略します
・エディタ、ファイラーの操作は省略します
・ソースを展開したら説明文を読みましょう
・Enterキーを省略します

・ログイン端末で "#" はroot、"$" は一般ユーザのプロンプトの記号です
・設定ファイルで "#" で始まる行はコメントとして解釈されます

○関連サイト

:compface-1.5.2-11.src.rpm  (http://ftp.riken.jp/Linux/fedora/)
:gpgme-1.2.0-3.fc14.src.rpm 
:oniguruma-5.9.2-1.fc13.src.rpm 
:pth-2.0.7-9.src.rpm 
:sylpheed-3.1.1.tar.bz2  (http://sylpheed.sraoss.jp/ja/)

○インストール環境

:OS CentOS 5.6
:selinux disabled or permissive
:インストール先 
:作業 /usr/src
:言語 LANG=ja_JP.UTF-8
:ユーザー rootで実行

・メンテナンスの場合は一般ユーザから行います



○rebuildに必要な開発パッケージ

・specファイルに記述されているものです
・さらに、依存関連のパッケージを要求されます

○compface

BuildRequires:  diffutils

○oniguruma

BuildRequires: ruby >= 1.8

○gpgme

BuildRequires: gawk
BuildRequires: gnupg2
BuildRequires: gnupg2-smime
BuildRequires: libgpg-error-devel
BuildRequires: pth-devel

○sylpheed

・fedoraのspecファイルです

BuildRequires: gtk2-devel openssl-devel
BuildRequires: desktop-file-utils pkgconfig gettext xdg-utils
%{!?_without_gpgme:BuildRequires: gpgme-devel}
%{!?_without_compface:BuildRequires: compface-devel}
%{!?_without_ldap:BuildRequires: openldap-devel}
%{?_with_oniguruma:BuildRequires: oniguruma-devel}
%{?_with_jpilot:BuildRequires: jpilot-devel}
BuildRequires: gtkspell-devel
%if 0%{?fedora} > 8
BuildRequires: enchant-devel



○rebuild & インストール

・md5チェックができないので、--nomd5オプションでインストールします

○compface

# cd /usr/src
[root@mars:/usr/src]
# mkdir compface
# rpm -ivh --nomd5 compface-1.5.2-11.src.rpm
# cd redhat/SPECS
[root@mars:/usr/src/redhat/SPECS]

・specファイルの修正
 Release: 11.C56

# vi compface.spec

# rpmbuild -ba --clean --rmsource compface.spec
# mv compface.spec /usr/src/compface
# cd ../RPMS/i386
[root@mars:/usr/src/redhat/RPMS/i386]

・作成されたパッケージ
 compface-1.5.2-11.C56.i386.rpm
 compface-devel-1.5.2-11.C56.i386.rpm

# rm *debuginfo*
# mv *.rpm /usr/src/compface
# cd ../../SRPMS
[root@mars:/usr/src/redhat/SRPMS]

・作成されたパッケージ
 compface-1.5.2-11.C56.src.rpm

# mv *.rpm /usr/src/compface

・インストール

# cd /usr/src/compface
[root@mars:/usr/src/compface]
# rpm -Uvh compface-devel* compface-1.5.2-11.C56.i386.rpm

○pth

# cd /usr/src
[root@mars:/usr/src]
# mkdir pth
# rpm -ivh --nomd5 pth-2.0.7-9.src.rpm
# cd redhat/SPECS
[root@mars:/usr/src/redhat/SPECS]

・specファイルの修正
 Release: 9.C56

# vi pth.spec

# rpmbuild -ba --clean --rmsource pth.spec
# mv pth.spec /usr/src/pth
# cd ../RPMS/i386
[root@mars:/usr/src/redhat/RPMS/i386]

・作成されたパッケージ
 pth-2.0.7-9.C56.i386.rpm
 pth-devel-2.0.7-9.C56.i386.rpm

# rm *debuginfo*
# mv *.rpm /usr/src/pth
# cd ../../SRPMS
[root@mars:/usr/src/redhat/SRPMS]

・作成されたパッケージ
 pth-2.0.7-9.C56.src.rpm

# mv *.rpm /usr/src/pth

・インストール

# cd /usr/src/pth
[root@mars:/usr/src/pth]
# rpm -Uvh pth-devel* pth-2.0.7-9.C56.i386.rpm

○oniguruma

# cd /usr/src
[root@mars:/usr/src]
# mkdir oniguruma
# rpm -ivh --nomd5 oniguruma-5.9.2-1.fc13.src.rpm
# cd redhat/SPECS
[root@mars:/usr/src/redhat/SPECS]

# rpmbuild -ba --clean --rmsource --define 'dist .C56' oniguruma.spec
# mv oniguruma.spec /usr/src/oniguruma
# cd ../RPMS/i386
[root@mars:/usr/src/redhat/RPMS/i386]

・作成されたパッケージ
 oniguruma-5.9.2-1.C56.i386.rpm
 oniguruma-devel-5.9.2-1.C56.i386.rpm

# rm *debuginfo*
# mv *.rpm /usr/src/oniguruma
# cd ../../SRPMS
[root@mars:/usr/src/redhat/SRPMS]

・作成されたパッケージ
 oniguruma-5.9.2-1.C56.src.rpm

# mv *.rpm /usr/src/oniguruma

・インストール

# cd /usr/src/oniguruma
[root@mars:/usr/src/oniguruma]
# rpm -Uvh oniguruma-devel* oniguruma-5.9.2-1.C56.i386.rpm

○gpgme

# cd /usr/src
[root@mars:/usr/src]
# mkdir gpgme
# rpm -ivh --nomd5 gpgme-1.2.0-3.fc14.src.rpm
# cd redhat/SPECS
[root@mars:/usr/src/redhat/SPECS]

・specファイルの修正(下記参照)

# vi gpgme.spec

# rpmbuild -ba --clean --rmsource --define 'dist .C56' gpgme.spec
# mv gpgme.spec /usr/src/gpgme
# cd ../RPMS/i386
[root@mars:/usr/src/redhat/RPMS/i386]

・作成されたパッケージ
 gpgme-1.2.0-3.C56.i386.rpm
 gpgme-devel-1.2.0-3.C56.i386.rpm

# rm *debuginfo*
# mv *.rpm /usr/src/gpgme
# cd ../../SRPMS
[root@mars:/usr/src/redhat/SRPMS]

・作成されたパッケージ
 gpgme-1.2.0-3.C56.src.rpm

# mv *.rpm /usr/src/gpgme

・インストール

# cd /usr/src/gpgme
[root@mars:/usr/src/gpgme]
# rpm -Uvh gpgme-devel* gpgme-1.2.0-3.C56.i386.rpm

:gpgme.spec

・省略

BuildRequires: gawk
# BuildRequires: gnupg2
# BuildRequires: gnupg2-smime
BuildRequires: gnupg
BuildRequires: libgpg-error-devel
BuildRequires: pth-devel

# --disable-gpg-test required since 'make check' currently includes some
# gpg(1)-specific tests
%define _with_gpg --with-gpg=%{_bindir}/gpg --disable-gpg-test
# Requires: gnupg2
Requires: gnupg

・省略


○sylpheed

# cd /usr/src
[root@mars:/usr/src]
# mkdir sylpheed
# tar jxf sylpheed-3.1.1.tar.bz2
# cp sylpheed-3.1.1/sylpheed.spec redhat/SPECS

・certs_dirの位置をCentOSに合わせます(下記参照)

# vi sylpheed-3.1.1/libsylph/ssl.c

・圧縮ファイルを作成してコピーします

# rm sylpheed-3.1.1.tar.bz2
# tar jcf sylpheed-3.1.1.tar.bz2 sylpheed-3.1.1/
# cp sylpheed-3.1.1.tar.bz2 redhat/SOURCES
# cd redhat/SPECS
[root@mars:/usr/src/redhat/SPECS]
# chown root:root sylpheed.spec

・specファイルの修正(下記参照)

# vi sylpheed.spec

# rpmbuild -ba --clean --rmsource sylpheed.spec
# mv sylpheed.spec /usr/src/sylpheed
# cd /usr/src/redhat/RPMS/i386
[root@mars:/usr/src/redhat/RPMS/i386]

・作成されたパッケージ
 sylpheed-3.1.1-1.C56.i386.rpm

# rm *debuginfo*
# mv *.rpm /usr/src/sylpheed
# cd ../../SRPMS
[root@mars:/usr/src/redhat/SRPMS]

・作成されたパッケージ
 sylpheed-3.1.1-1.C56.src.rpm

# mv *.rpm /usr/src/sylpheed

・インストール

# cd /usr/src/sylpheed
[root@mars:/usr/src/sylpheed]
# rpm -Uvh sylpheed-3.1.1-1.C56.i386.rpm

:sylpheed-3.1.1/libsylph/ssl.c

・省略

                    "etc" G_DIR_SEPARATOR_S
                    "ssl" G_DIR_SEPARATOR_S "certs", NULL);
 #else
        certs_dir = g_strdup("/etc/pki/tls/certs");
 #endif
        if (!is_dir_exist(certs_dir)) {

・省略

:sylpheed.spec

・省略

Version: %{ver}
Release: 1.C56

・省略

%build
CFLAGS="$RPM_OPT_FLAGS" ./configure --prefix=%{prefix} \
${SYLPHEED_CONFIGURE_FLAGS} \
--enable-ldap --enable-oniguruma
make

・省略


○ Copyright(c) 528p.com All Rights Reserved.