- PR -

qmailのインストールでエラー

1
投稿者投稿内容
ZUMA
常連さん
会議室デビュー日: 2004/07/20
投稿数: 25
投稿日時: 2004-07-20 19:22
はじめまして ZUMAと申します。

Linuxにqmailをインストールし、
メールサーバを構築しようと思っています。

ネット上からqmail-1.03を入手し、
tar xzvfで展開し、
make setup checkを実行したら
以下のメッセージが出てうまくいきません。
./compile date822fmt.c
date822fmt.c:1:10: #include expects "FILENAME" or <FILENAME>
date822fmt.c: In function `date822fmt':
date822fmt.c:16: `time_t' undeclared (first use in this function)
date822fmt.c:16: (Each undeclared identifier is reported only once
date822fmt.c:16: for each function it appears in.)
date822fmt.c:16: parse error before "now"
date822fmt.c:24: `now' undeclared (first use in this function)
date822fmt.c:24: parse error before "utc"
date822fmt.c:25: warning: assignment makes pointer from integer without a cast
date822fmt.c:26: dereferencing pointer to incomplete type
date822fmt.c:27: dereferencing pointer to incomplete type
date822fmt.c:28: dereferencing pointer to incomplete type
date822fmt.c:29: dereferencing pointer to incomplete type
date822fmt.c:30: dereferencing pointer to incomplete type
date822fmt.c:31: dereferencing pointer to incomplete type
make: *** [date822fmt.o] Error 1

どうすればよいのでしょうか?
ご教授お願いします。

Linux Redhat9
qmail1-.03
です。
お願いします。
あんとれ
ぬし
会議室デビュー日: 2004/01/14
投稿数: 556
投稿日時: 2004-07-20 21:04
qmail-date-localtime.patch 当てられてますか?

パッチ適用後のソースコードをエディタで開いてみて、
正しくパッチが当たっているか確認してみてください。

IE なんかでパッチをダウンロードしたりすると、
勝手に改行コードを変換されたりしてうまくいかなかったりする場合があるようです。
ZUMA
常連さん
会議室デビュー日: 2004/07/20
投稿数: 25
投稿日時: 2004-07-21 11:10
お返事ありがとうございます。

>qmail-date-localtime.patch 当てられてますか?

qmail-date-localtime.patchはまだ当ててないんです。
qmail-date-localtime.patchをネット上から
入手しようとしてるんですが、
http://mirror.averse.net/pub/FreeBSD/ports/local-distfiles/sada/


>IE なんかでパッチをダウンロードしたりすると、
>勝手に改行コードを変換されたりしてうまくいかなかったりする場合があるようです

IEでダウンしましたが、
qmail-date-localtime.patch.gz というtarファイル形式なんですが、
解凍コマンド(gunzipなど)色々試したんですが、
フォーマットが違うというエラーが出て、うまく当てられない状況です。

qmail-date-localtime.patchの入手方法および、
パッチの当て方をご教授お願いします。
よろしくお願いします。

Dr.Doraemon
ぬし
会議室デビュー日: 2002/03/23
投稿数: 265
投稿日時: 2004-07-21 12:10
お疲れ様です。

> IEでダウンしましたが、
> qmail-date-localtime.patch.gz というtarファイル形式なんですが、
> 解凍コマンド(gunzipなど)色々試したんですが、
> フォーマットが違うというエラーが出て、うまく当てられない状況です。

このパッチは、無圧縮で配布されていた気がしますが・・・。
試しに、そのパッチファイルを直接viで開いてみたらどうなりますか?
たぶんふつうにソースが見えるのではないかと・・・。
ZUMA
常連さん
会議室デビュー日: 2004/07/20
投稿数: 25
投稿日時: 2004-07-21 12:27
お疲れ様です。

> このパッチは、無圧縮で配布されていた気がしますが・・・。
> 試しに、そのパッチファイルを直接viで開いてみたらどうなりますか?
> たぶんふつうにソースが見えるのではないかと・・・。

そうなんですか。
拡張子が「.gz」となっていたので、圧縮されていると思っていました。
メモ帳でも開けました。
サーバーにアップロードし、ファイル名を「.gz」を取ったファイル名に直したら、
viで開くことができました。
で、
patch -p1 < ../qmail-date-localtime.patch を実行したら、
以下のようなエラーがでました。
missing header for unified diff at line 7 of patch
patching file date822fmt.c
Hunk #1 FAILED at 1.
Hunk #2 FAILED at 13.
2 out of 2 hunks FAILED -- saving rejects to file date822fmt.c.rej

あんとれさんが最初に行っていた、改行コードが原因のエラーなんでしょうか?
だとしたら、どう直せばよろしいのでしょうか?
よろしくお願いします。

hide
会議室デビュー日: 2002/07/10
投稿数: 10
投稿日時: 2004-07-23 00:12
Hi

> 拡張子が「.gz」となっていたので、圧縮されていると思っていました。

ひょっとしてこれって1.0.1用のパッチではないでしょうか?

http://ftp.nlc.net.au/pub/unix/mail/qmail/qmail-date-localtime.patch
(多くのサイトではftp://と紹介されていますが、現在このサーバーは
ftpでのアクセスを拒否しているようです)

で1.0.3用のパッチを取得して試してみてはいかがでしょう。
あんとれ
ぬし
会議室デビュー日: 2004/01/14
投稿数: 556
投稿日時: 2004-07-23 22:07
> date822fmt.c:16: `time_t' undeclared (first use in this function)
> date822fmt.c:16: parse error before "now"

エラーの行数と内容をチェックするとパッチが既に当たっているようにも見えます。
オリジナルの 16 行目に time_t 構造体や変数 now は使われていません。
一方、パッチ適用バージョンは

16: time_t now;

となります。

本家からオリジナルソースを DL して比べてみてください。

http://cr.yp.to/software/qmail-1.03.tar.gz
ZUMA
常連さん
会議室デビュー日: 2004/07/20
投稿数: 25
投稿日時: 2004-07-26 19:25
お疲れ様です。
あんとれさんの教えてくださったサイトから
ダウンロードし、再度コンパイルかけたらうまくいきました。
ありがとうございました。
1

スキルアップ/キャリアアップ(JOB@IT)