vine-users ML アーカイブ



[vine-users:068216] Re: iplog のインストール

  • From: KAWA <kawa73@xxxxxxxxxxxxxxxxx>
  • Subject: [vine-users:068216] Re: iplog のインストール
  • Date: Sun, 10 Oct 2004 23:25:56 +0900
川です。

Date    :Sun, 10 Oct 2004 22:13:00 +0900
From    :FUKUHARA Makoto <makoto@xxxxxxxxxxxxxxxxxx>
Subject :[vine-users:068215] Re: iplogのインストール
ID      :4169355C.5020509@xxxxxxxxxxxxxxxxxx

> 福原です.
...
> make の失敗は,次のメッセージでしょうか.
> 
> gcc -DHAVE_CONFIG_H -I. -I. -I..   -I/usr/include/pcap  -g -O2 -D_REENTRANT -c iplog_options.c
> iplog_options.c:443:19: " 文字での終端を欠いています
> iplog_options.c: 関数 `print_help' 内:
> iplog_options.c:444: error: wrong type argument to decrement
> iplog_options.c:444: error: 文法エラー before "user"
> iplog_options.c:478:59: ' 文字での終端を欠いています
> iplog_options.c:478:59: 警告: character constant too long for its type
> iplog_options.c:493:65: " 文字での終端を欠いています
> make[3]: *** [iplog_options.o] エラー 1

そうですね。gcc-3.4.2 では次のようになります。

-----
gcc -DHAVE_CONFIG_H -I. -I. -I..   -I/usr/include/pcap  -g -O2 -D_REENTRANT -c iplog_options.c
iplog_options.c: In function `print_help':" 文字での終端を欠いています
iplog_options.c:444: error: wrong type argument to decrement
iplog_options.c:444: error: 構文解析エラー が "user" の前にあります
' 文字での終端を欠いています
" 文字での終端を欠いています
make[3]: *** [iplog_options.o] エラー 1
-----

微妙に違うのがナニですが。

> Vine 3.0 では,次のパッチを当てればコンパイルできます.
> 
> http://de.lunar-linux.org/lunar/patches/iplog-2.2.3-gcc3.3.patch
> 
> 文字列の改行の扱いが変わった(複数行にわたる文字列を使えなくなった)みたいですね.

情報ありがとうございます。まだ Vine3.0 に移行していないので、移行した
らパッチを当ててみます。gcc-3.0 になったときだか、gcc-3.? で c++ の
ABI がガラリと変ったときだか忘れましたが、上記のようなことが書いてあり
ました。gcc2 のコンパイラ拡張がバッサリ削られたとうすらボンヤリ覚えて
います。

実はこういう事例はすごく多いんですよね。ddd-3.3.8 だったかが gcc-3.3.? 
でコンパイルできるけれど gcc-3.4.0 でコンパイルできない…、と思ってい
たら、いきなり ddd-3.3.9 が出てコンパイルできるようになったりとか。日
常茶飯事です。で、コンパイラの変更でいつもごまかしています。

gcc3.0 がでた頃からメインで最新の gcc を使っていたので iplog はコンパ
イラの変更でバイナリを作っていました。というわけで、最初の情報を投げて
みた訳です。

次の春から gcc4 ですね。

# 今の環境は、Vine2.6r4 で 
#
#   [hoge]$ uname -r
#   2.4.26-0vl1.1
#
# となっていますが実はこれ、ちょっと前の Seed から持ってきて gcc3 で
# コンパイル出来なかったので、gcc2 で作った代物だったりします。

--
KAWA