[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[plamo:14014] Re: alsa-driver-0.9.0rc1



ALSAはほとんど使ったことがありませんので、やや一般論になりますが…

From: Uetake Sadao <utake@nyc.odn.ne.jp>
Message-Id: <20020518133526.34ca0f4e.utake@nyc.odn.ne.jp>

> 1。kernelのsound機能はmodulesにしています。

ALSAを使われる場合は、カーネル側のサウンド回りは全部 N でよかったと思
います。もっとも、これで実際になにか問題になるということは考えにくいの
ですが。

> 2。alsaのconfigulation は --with-isapnp=no --with-oss=yes
>                        --with-debug=detect --with-cards=ens1371
> 3。makeすると、/usr/include/linuxに isapnp.hがないよと言ってだめ。

ここから想像できることは、alsa-drivers が、--without-isapnp についていっ
てない(ようするにバグ)ということです。逆に、--with-isapnp にして、カー
ネル側の PnP も有効にしてみるとどうなるでしょう?

# 2.2系は、もう2年以上前に離れてしまったので覚えてませんが、確か
# isapnp 持ってましたよね…

> 4。やってみたこと
>    a) alsa-driverの ツリー内にあるisapnp.hをincludeするように
>       alsa-kernel/isa/ad1816a/ad1816a.cを書き換え。
>    b) kernel-2.4.18 isapnp.h を kernel-2.2.19 にコピー。
>    c) alsa-driverの isapnp.hをkernel-2.2.19 にコピー。

これだと、コンパイル時に、PnP にまつわるシンボルが「無理矢理」宣言され
るので、コンパイルは通ります。が、実際にリンクする場合(モジュールの時
は depmod や、実際の組み込み時)に、カーネル内部にそれに対応するシンボ
ルが存在しないと、エラーになってしまいます。というわけで、

>  3つ共 makeはokなのですが、make installすると、終りの方で
>  depmod -a するところで snd.o unresolved symbolとなって
>  当然 insmod や modprobe しても同じ結果です。

このような現象が起こるわけですが、このことからも、ALSAのドライバモジュー
ルが、おそらく PnP にまつわるシンボルを参照しているであろうことが類推
できます。ところで、"unresolved symbol" と言われているシンボルはどのよ
うな名称だったでしょうか? これを教えていただければ、こちらの想像が正し
かったかどうかの推測ができるかもしれません。

で、対策ですが、

>  kernel-2.4.18なら問題無く動作します。

ということですので、

1. 0.9.0rc1 のバグで、2.2.x では動かなかった(開発版ではこのような、古
   いカーネルとの互換性を消してしまうことはよくあります)

2. 単に isapnp まわりがうまくなかっただけなので、カーネル側でも PnP を
   有効化すれば大丈夫かもしれない

くらいでしょうか。
_______________________________
田原 俊一   jado@flowernet.gr.jp, shunichi_tahara@zenrin.co.jp
                                  http://flowernet.gr.jp/jado/
FingerPrint:  16 9E 70 3B 05 86 5D 08  B8 4C 47 3A E7 E9 8E D9
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄

Follow-Ups
[plamo:14019] Re: alsa-driver-0.9.0rc1, Uetake Sadao
References
[plamo:14007] alsa-driver-0.9.0rc1, Uetake Sadao

[検索ページ] [メール一覧]
Plamo ML 公開システム