[Armadillo:03479] armadillo-220_aodv-uuの実装について

yamasaki email@hidden
2008年 10月 2日 (木) 20:36:01 JST


yamasakiです。

armadillo-220にaodv-uuを実装しようとしています。

Kernel : 2.6.12.3-a9-15
Userland : atmark-dist-20080617

makeした際デーモンは作られるのですが、カーネルモジュールの
コンパイルの際にエラーになってしまいます。

この条件付コンパイルでは "#else" に入っているのですが、あっているので
しょうか?
また、条件付コンパイルの箇所を消して実行したところ、(LINUX_VERSION_CODE
に関しては
バージョンのヘッダファイルが見当たらず、他のところで引数の数によるエラー
が出たため
未満であろうと条件を消しました。)
カーネルモジュールはできたのですが、armadillo上でロードしたところ、
フォーマットが違うとエラーになります。
Makefileは開発ガイドのuserディレクトリへのマージに沿っています。

--- error ---------------------------------------------------------
kaodv-mod.c: In function ‘kaodv_hook’:
kaodv-mod.c:273: error: too many arguments to function ‘ip_route_me_harder’
kaodv-mod.c: At top level:
kaodv-mod.c:315: error: expected ‘)’ before string constant
kaodv-mod.c:316: error: expected ‘)’ before string constant
make[1]: *** [kaodv-mod-arm.o] エラー 1
make[1]: ディレクトリ `/home/atmark/armadillo/aodv-uu-0.9.5/lnx' から出ます
make: *** [kaodv] エラー 2
------------------------------------------------------------------

--- kaodv-mod.c ---------------------------------------------------
#ifdef KERNEL26
static int num_parms = 0;
#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10))
module_param_array(ifname, charp, num_parms, 0444);
#else
module_param_array(ifname, charp, &num_parms, 0444);
#endif
module_param(qual_th, int, 0);
#else
MODULE_PARM(ifname, "1-" __MODULE_STRING(MAX_INTERFACES) "s");
MODULE_PARM(qual_th, "i");
#endif
------------------------------------------------------------------

--- kaodv-mod.c remake---------------------------------------------

static int num_parms = 0;
module_param_array(ifname, charp, num_parms, 0444);
module_param(qual_th, int, 0);

------------------------------------------------------------------

何か、対処法ご教授頂ければ幸いです。よろしくお願いします。






armadillo メーリングリストの案内