↑日記で日々積み重ねた情報をトップの「わんこのページ」にまとめています。

おのたく日記 [RDF] YouTubeも始めました→


2010-06-05(Sat) パッケージビルド時にパッチするDBS [長年日記]

[Debian] パッケージビルド時にパッチするDBS

6月2日の日記で、2009年5月9日「iiimf-client-elパッケージにパッチしてビルドしなおす」とかで、パッチするのが大変なの思い出した。

iiimf-client-elパッケージのソースパッケージim-sdkソースパッケージの中身よく見てくると

This package uses a build system called DBS (Doogie's Build System).

To extract the upstream source, run "debian/rules setup". This will

extract the pristine source in build-tree/, and apply patches from

debian/patches/.

[im-sdk-12.3.91-6.3/debian/README.buildより引用]

と書いてあって、DBSなるビルド時にpatchするシステムが使われていた。

See: 第 25 回東京エリア Debian 勉強会 2007 年 2 月資料「dbsとは」

どうやらDBSでは、debian/patchsに「番号-うんぬん」というネーミングでパッチファイル置けばよいらしい。ソースとパッチ(Debian Bug report logs - #508453 Cannot use ATOKX3 for Linux on iiimf-client-el (iiimecf)にあるupstream_iiimecf0.75.patch.gzim-sdk_control.diff.gz)は前に取ってきてあるので

$ sudo apt-get build-dep im-sdk

$ apt-get source iiimf-client-el

$ cd im-sdk-12.3.91

$ zcat ../im-sdk_control.diff.gz |patch -p1

$ zcat ../upstream_iiimecf0.75.patch.gz >im-sdk-12.3.91-6.3/debian/paches/081_upstream_iiimecf0.75.patch

$ debchange -i

im-sdk (12.3.91-6.6-1) unstable; urgency=low

* Non-maintainer upload.

* iiim-client-el 0.75

-- Sun, 10 May 2010 05:05:01 +0900

$ debuild -uc -us

として、ソースのパッチをセットしてビルドした。

このほかに、以前見つけていたdefined(SO_PEERCRED)問題も含めて、こんなパッチを入れてコンパイルした。

--- iiimf-12.3.91-svn2814/iiimsf/src/basictype.hh~ 2004-12-07 14:34:59.000000000 +0900

+++ iiimf-12.3.91-svn2814/iiimsf/src/basictype.hh 2010-06-01 19:34:14.261921159 +0900

@@ -10,6 +10,7 @@

#include

#include

#include

+#include

//

// Usuful functors', 'debian/patches/066-includeEOF.patch

--- iiimf-12.3.91-svn2814/iiimsf/src/iwrap.c.org 2010-06-02 02:53:42.398919324 +0900

+++ iiimf-12.3.91-svn2814/iiimsf/src/iwrap.c 2010-06-02 02:54:18.439415045 +0900

@@ -55,6 +55,7 @@

#include

#endif

+#define __USE_GNU

#ifdef HAVE_UNIX_SOCKET

#include

#include

しかし、これでもエラーが出る

make[6]: ディレクトリ `im-sdk-12.3.91/build-tree/iiimf-12.3.91-svn2814/leif/sch_le_sun/src/input_methods/newpinyin/util' から出ます

Making all in data

make[6]: ディレクトリ `im-sdk-12.3.91/build-tree/iiimf-12.3.91-svn2814/leif/sch_le_sun/src/input_methods/newpinyin/data' に入ります

./util/mkciku

File Size of UdCiku.dat should be 3852 0xF0C

make[6]: *** [PyCiku.dat] セグメンテーション違反です

make[6]: ディレクトリ `el/im-sdk-12.3.91/build-tree/iiimf-12.3.91-svn2814/leif/sch_le_sun/src/input_methods/newpinyin/data' から出ます

これは、「Debian Bug report logs - #571432im-sdk: FTBFS: File Size of UdCiku.dat should be 3852 0xF0C」で、最近発生するようになった問題で、まだ解決されていない…(残念)

とりあえずBug systemをSubscribeして、解決待ち。

本日のPingbacks(全0件)

Google Web検索 on-o.com内を検索