0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

CentOS 8 で FDclone のビルドに失敗する対策

Last updated at Posted at 2020-11-12

同様の問題に直面している人がいないのか、直接的な情報を見つけられなかったので。

結論

ソースを展開してSPECファイルをUTF8で編集・修正して再度アーカイブして今まで通りにrpmbuildする

環境

  • 記事執筆時点のさくらVPSでCentOS 8を選択しインストールした環境
  • FD-3.01j(多分過去のバージョンも)
# uname -a
Linux ${HOSTNAME} 4.18.0-193.28.1.el8_2.x86_64 #1 SMP Thu Oct 22 00:20:22 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

#現象
rpmbuildすると、こんな表示が出てビルドが完了しない。

# rpmbuild -tb --clean ./FD-3.01j.tar.gz
warning: bogus date in %changelog: Tue Jul  7 2004 Takashi SHIRAI <shirai@unixusers.net>
warning: bogus date in %changelog: Tue Sep 17 2003 Takashi SHIRAI <shirai@unixusers.net>
warning: Package FDclone: invalid utf-8 encoding in Description: FDclone is a file& directory maintenance tool for the UNIX
based OS.  It is a clone of "FD" for MS-DOS, made by Mr.
A.Idei <SDI00544@niftyserve.or.jp> in 1989.

%description(ja)
FDclone �ϡ�1989ǯ�� A.Idei <SDI00544@niftyserve.or.jp> ����
���ˤ��ä� MS-DOS �Ѥ˺������줿�أƣġ٤��Ϥ�����UNIX �١�
���� OS ���ѤΥե����� & �ǥ��쥯�ȥ������ġ����Ǥ��� - Invalid or incomplete multibyte orwide character
Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.oWoPi3
+ umask 022
+ cd /root/rpmbuild/BUILD
+ cd /root/rpmbuild/BUILD

中略


RPM build errors:
    bogus date in %changelog: Tue Jul  7 2004 Takashi SHIRAI <shirai@unixusers.net>
    bogus date in %changelog: Tue Sep 17 2003 Takashi SHIRAI <shirai@unixusers.net>
    Package FDclone: invalid utf-8 encoding in Description: FDclone is a file & directory maintenance tool for the UNIX
based OS.  It is a clone of "FD" for MS-DOS, made by Mr.
A.Idei <SDI00544@niftyserve.or.jp> in 1989.

%description(ja)
FDclone �ϡ�1989ǯ�� A.Idei <SDI00544@niftyserve.or.jp> ����
���ˤ��ä� MS-DOS �Ѥ˺������줿�أƣġ٤��Ϥ�����UNIX �١�
���� OS ���ѤΥե����� & �ǥ��쥯�ȥ������ġ����Ǥ��� - Invalid or incomplete multibyte orwide character
    Empty %files file /root/rpmbuild/BUILD/FD-3.01j/debugsourcefiles.list

調べたこと

bogus dateの意味

偽りの曜日だそうで。
Tue Jul 7 2004 の日付が正しいとするなら、水曜日なので Tue ではなく Wed です。曜日が正しいなら 6 です。
Tue Sep 17 2003 の日付が正しいとするなら、水曜日なので Tue ではなく Wed です。曜日が正しいなら 16 です。

文字コード関連

rpmbuildのSPECファイルはUTF-8で書くそうですが、fd.specはEUCで書かれていました。

error: Empty %files file /root/rpmbuild/BUILD/FD-3.01j/debugsourcefiles.list

ググってみると、有益な情報を得ることができました。debugsourcefiles.listを作成しないことで回避できるようです。

バグ #4555: RPM build errors: Empty %files file ...
https://www.openrtm.org/redmine/issues/4555

やったこと

作業ディレクトリを作りソースファイルをダウンロードして展開

mkdir tmp
cd tmp
wget http://hp.vector.co.jp/authors/VA012337/soft/fd/FD-3.01j.tar.gz
tar zxvf .FD-3.01j.tar.gz

./FD-3.01j/fd.specをUTF8で編集

vim ./FD-3.01j/fd.spec

%global debug_package %{nil} は %prep と %setup より前であることが必要。

29行目から3行を削除し・・・

FDclone ?ϡ?1989ǯ?ヒ A.Idei <SDI00544@niftyserve.or.jp> ?皃ホ
?熙ヒ?隍テ?ニ MS-DOS ヘム?˺鋿????줿?أƣġ٤Ϥ?????UNIX ?١?
???ホ OS ネニヘム?Υե????・& ?ǥ??쥯?ȥ・ノヘ?ġ??・ヌ????

5行追加。

FDclone は、1989年に A.Idei <SDI00544@niftyserve.or.jp> 氏の
手によって MS-DOS 用に作成された『FD』を模した、UNIX ベー
スの OS 汎用のファイル & ディレクトリ管理ツールです。

%global debug_package %{nil}

日付は正しいと仮定して、173行目あたり(更新履歴の最後の方)にある曜日を修正
Tueから・・・

* Tue Jul  7 2004 Takashi SHIRAI <shirai@unixusers.net>
* Tue Sep 17 2003 Takashi SHIRAI <shirai@unixusers.net>

Wedへ

* Wed Jul  7 2004 Takashi SHIRAI <shirai@unixusers.net>
* Wed Sep 17 2003 Takashi SHIRAI <shirai@unixusers.net>

再度アーカイブ

tar czvf FD-3.01j.tar.gz ./FD-3.01j

あとはいつも通りrpmbuildしてできあがったrpmパッケージをインストール。

rpmbuild -tb FD-3.01j.tar.gz
rpm -ivh ~/rpmbuild/RPMS/x86_64/FDclone-3.01j-1.x86_64.rpm

以上。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?