Ralink無線ドライバーのビルド失敗 | 見よう見まねのブログ

見よう見まねのブログ

CameraやPCなど、見よう見まねの悪戦苦闘

これまでは、カーネルソースから無線ドライバーをビルドしていました。
今回は、メーカHPからソースを入手し、ビルドに挑戦。

Mediatek(Ralink)のソースのダウンロード(DL)は以下から。
http://www.mediatek.com/jp/downloads1/downloads/

(1)Linux用RT8070/ RT3070/ RT3370/ RT3572/ RT5370/ RT5372/ RT5572 USB (2012/10/22付 v2.6.1.3)
(2)Linux用RT3573 USB (2012/09/12付 v2.5.0.0)

をDLし、展開します。展開結果、(1)の方が対象機種が多く便利そう。
/common/rtusb_dev_id.c にIDを追加し、ドライバーをビルドします。
既にサポートされている、重複するIDは削除します。

今回は、練習用にDebian Jessie用(Kernel 3.16.0-4-686)でビルド。
でも、エラーが出てビルドできません。おかしいですね?
$ make

/tools/bin2h: 許可がありません
Makefile:324: recipe for target 'build_tools' failed
make: *** [build_tools] Error 127


README_STA_usb を読んで見ると、以下の記述が。
Debian Jessie(3.16)など3.x系では使えない?Ubuntu 16.04(4.4)もダメですね。

Supporting Kernel:
===================
linux kernel 2.4 and 2.6 series.


でも、サポートされるカーネル番号が、2.4 & 2.6とは古いですね。。。
比較的新しい、Mediatek(MT)製無線チップを採用しているなら、以下が使えそうです。
MT7601U USB  2013/09/13  v3.0.0.4  Linux
MT7610U USB  2013/09/16  V3.0.0.2  Linux
MT7612U      2014/11/07  v3.0.0.1  Linux

気を取り直し、再度挑戦。
今度は、ソースを、/usr/src にコピーし、
$ sudo make

でも、以下のエラーが出てまたもやビルド失敗。
/usr/src/linux-headers-3.16.0-4-common/scripts/Makefile.build:262: recipe for target '/usr/src/RT5572/os/linux/../../os/linux/rt_linux.o' failed
make[4]: *** [/usr/src/RT5572/os/linux/../../os/linux/rt_linux.o] Error 1
/usr/src/linux-headers-3.16.0-4-common/Makefile:1352: recipe for target '_module_/usr/src/RT5572/os/linux' failed
make[3]: *** [_module_/usr/src/RT5572/os/linux] Error 2
Makefile:181: recipe for target 'sub-make' failed
make[2]: *** [sub-make] Error 2
Makefile:8: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-3.16.0-4-686-pae'
Makefile:388: recipe for target 'LINUX' failed
make: *** [LINUX] Error 2


無線LANのドライバーのビルドは一筋縄では行かず、難関ですね。
まだまだ修行が足りません。。。

無銭でも一味違うソース欲し