宮原@京都といいます。
On Sun, 13 Apr 2003 21:29:57 +0900 (JST)
有村 徹朗 <tetsurou_arimura@xxxxxxxxxxx> wrote:
> カーネルモードrp-pppoeをkernel2.4.19で使っていました。
> kernel2.4.20-0vl24.2へアップグレードにともない、再度カー
> ネルモードにしようと、カーネルの再構築し、pppとrp-pppoe
> のrpmパッケージは削除し、pppはcvsでダウンロード、インス
> トールし、次にrp-pppoe-3.5.tar.gzをmakeしようとするので
> すがmakeが通りません。以下にエラーメッセージをつけます。
Vineユーザーではないのですが,オリジナルの kernel-2.4.20 に XFS のパッチ
を当てると有村さんと同様のエラーが発生したので少し調べてみました。
・/usr/src/linux/include/asm/byteorder.h に原因がありそうである
こちらでも,有村さんのメールにもあるように byteorder.h で parse
error が発生しています。
> In file included from /usr/include/linux/if_pppox.h:21,
> from plugin.c:56:
> /usr/include/asm/byteorder.h:38: parse error before
> `__u64'
> /usr/include/asm/byteorder.h:38: parse error before `val'
> /usr/include/asm/byteorder.h:39: warning: function
> declaration isn't a prototype
こちらでは,オリジナルの kernel-2.4.20 では,このエラーは発生せず,
XFS のパッチを当てるとエラーが発生しました。(パッチによって
byteorder.h は変更されています)
パッチがあたった byteorder.h は,kernel-2.4.21 のオリジナルにも取り
込まれており,kernel-2.4.21 でも同様のエラーが発生します。
Vine の kernel2.4.20-0vl24.2 は,オリジナルの kernel-2.4.20 から XFS
またはそれ以外の理由で byteorder.h が更新されているのではないでしょ
うか?
byteorder.h を修正する能力はないので,
1) kernel-2.4.20 オリジナルの状態でカーネル設定を行う
2) ppp を cvs でダウンロード&インストール
3) rp-pppoe を configure & make
4) XFSパッチ宛
5) kernelコンパイルなど
の手順で設定し,とりあえず稼動しています。
有村さんの環境でもオリジナル kernel-2.4.20 の byteorder.h を
rp-pppoe の make の時だけ使用することでうまくいくかもしれません。
・rouge03氏の方法はkernel-2.4.19***で作られたplugin.oでは?
On Wed, 16 Apr 2003 15:46:28 +0900
rouge03 <rouge03@xxxxxxxxxxxxxx> wrote:
> 『rp-pppoe-3.5』 カーネルモードする為すんなり出来ると思いましたが
> " make " 出来ませんでした。
> .....ふとっ! ...以前の /usr/local/src/rp-pppoe-3.5/src/plugin/を
> 比較しましたら 「plugin.o」が無いのです。で、「plugin.o」をコピー
> しましたところ無事 make 出来ました。(当方の環境でして)
この「以前の」というのは kernelの変更前にmakeしたplugin.oではないでしょ
うか? 少なくともmake出来なかったkernelにおいて動作させるのは危険だと
思います。
確認していないので申し訳ないですが,有村さんのpppd 2.4.2b3関連のトラブ
ルも異なるカーネル環境で作られたplugin.oを使っていることが原因ではない
でしょうか?
------------------------------------------
宮原 武裕
E-mail: tanmay@xxxxxxxxxxxxxxxx
------------------------------------------