お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2013-12-29 10:49:01

Ueda_Katuhiko
メンバ
登録日: 2013-04-20

GW-USHyper300のドライバーモジュールのコンパイル

ubuntu 12.04 でGW-USHyper300を使用したいと
以下から
http://www.realtek.com.tw/downloads/downloadsView.aspx?Langid=4&PNid=21&PFid=48&Level=5&Conn=4&DownTypeID=3&GetDown=false&Downloads=true#2292

kernel 2.6.x 及び3.2.0用のソースをダウンロードして展開してdriver配下で
makeしたところ以下エラーがでます。対処をアドバイスいただけないでしょうか?


make
make ARCH=i386 CROSS_COMPILE= -C /lib/modules/3.2.0-52-generic/build M=/home/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/driver/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405  modules
make[1]: ディレクトリ `/usr/src/linux-headers-3.2.0-52-generic' に入ります
  CC [M]  /home/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/driver/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/cmd/rtl871x_cmd.o
In file included from /home/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/driver/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/include/drv_types.h:70:0,
                 from /home/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/driver/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/cmd/rtl871x_cmd.c:24:
/home/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/driver/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/include/rtl871x_cmd.h:107:25: エラー: フィールド ‘event_tasklet’ が不完全型を持っています
In file included from /home/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/driver/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/include/drv_types.h:72:0,
                 from /home/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/driver/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/cmd/rtl871x_cmd.c:24:
/home/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/driver/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/include/rtl871x_xmit.h:355:24: エラー: フィールド ‘xmit_tasklet’ が不完全型を持っています
In file included from /home/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/driver/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/include/drv_types.h:73:0,
                 from /home/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/driver/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/cmd/rtl871x_cmd.c:24:
/home/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/driver/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/include/rtl871x_recv.h:205:24: エラー: フィールド ‘recv_tasklet’ が不完全型を持っています
make[2]: *** [/home/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/driver/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/cmd/rtl871x_cmd.o] エラー 1
make[1]: *** [_module_/home/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/driver/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405] エラー 2
make[1]: ディレクトリ `/usr/src/linux-headers-3.2.0-52-generic' から出ます
make: *** [modules] エラー 2
@-FMVNC3EC3:~/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/driver/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405$ uname -r
3.2.0-52-generic
@-FMVNC3EC3:~/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/driver/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405$ pwd
/home/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/driver/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405
@-FMVNC3EC3:~/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/driver/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405$ ^C
@-FMVNC3EC3:~/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405/driver/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405$

オフライン

 

#2 2013-12-30 01:29:18

katsu07
ゲスト

Re: GW-USHyper300のドライバーモジュールのコンパイル

情報だけでなのですが、ubuntu 12.04に提供されているカーネルは以下の様になっています。
現時点では kernel-3.2系、kernel-3.5系、kernel-3.8系、kernel-3.11系の4つです。
そしていずれもカーネルソースを確認すると、rtl8712の記述があります。
(但し、kernel-3.2系と3.5系には rtl8712u.bin.ihex と言うfirmwareがソースの中にありません)
gw-ushyper300のUSB IDを検索すると"2019:ED18"である記述がみつかりました。
(usb wireless品は製造時期等によって同じ物でも変わる場合があるので確実とは言えません)

コード:

$ grep 2019 /lib/modules/3.11.0-14-generic/*
・・・略・・・
/lib/modules/3.11.0-14-generic/modules.alias:alias usb:v2019p5304d*dc*dsc*dp*ic*isc*ip*in* carl9170
/lib/modules/3.11.0-14-generic/modules.alias:alias usb:v2040p2019d*dc*dsc*dp*ic*isc*ip*in* smsusb
/lib/modules/3.11.0-14-generic/modules.alias:alias usb:v2019p4901d*dc*dsc*dp*ic*isc*ip*in* r8712u
/lib/modules/3.11.0-14-generic/modules.alias:alias usb:v2019pED18d*dc*dsc*dp*ic*isc*ip*in* r8712u
                                                       ^^^コレ^^^
/lib/modules/3.11.0-14-generic/modules.alias:alias usb:v2019pED16d*dc*dsc*dp*ic*isc*ip*in* r8712u
/lib/modules/3.11.0-14-generic/modules.alias:alias usb:v2019pAB28d*dc*dsc*dp*ic*isc*ip*in* r8712u
/lib/modules/3.11.0-14-generic/modules.alias:alias usb:v0763p2019d*dc*dsc*dp*ic*isc*ip*in* snd_usb_audio

ドライバー名は r8712u となっているので、

コード:

$ modinfo r8712u
filename:       /lib/modules/3.11.0-14-generic/kernel/drivers/staging/rtl8712/r8712u.ko
firmware:       rtlwifi/rtl8712u.bin
author:         Larry Finger
description:    rtl871x wireless lan driver
license:        GPL
srcversion:     748939744C6AAC44D12C356
・・・略・・・
alias:          usb:v0409p02B6d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v7392p7622d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v07AAp0051d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v2019pED18d*dc*dsc*dp*ic*isc*ip*in* <<<<<<<< コレ
alias:          usb:v13D3p3306d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0E66p0015d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v06F8pE031d*dc*dsc*dp*ic*isc*ip*in*
・・・略・・・

端末で$ lsusb を実行した結果に"2019:ED18"があれば、カーネル標準ドライバーを試す価値があるかもしれません。
現状使用しているカーネルは3.2系で、しかも最新ではない様なので、更新できない特別な理由があるならばおすすめしません。
(kernel-3.5系、3.8系、3.11系にするとubuntu 14.04予定のカーネルに乗り換える必要もでてきますので)

 

#3 2013-12-30 09:51:12

Ueda_Katuhiko
メンバ
登録日: 2013-04-20

Re: GW-USHyper300のドライバーモジュールのコンパイル

アドバイスありがとうございます

使ってはみたいのですが、検索すると以下の操作で
導入するらしいのですね

3.2系で起動できるようにはしておきたいので
grubのメニューに追加されるもんなのでしょうか?

cd /tmp
wget http://dl.dropbox.com/u/47950494/upubuntu.com/kernel-3.8 -O kernel-3.8
chmod +x kernel-3.8
sudo sh kernel-3.8
sudo reboot

オフライン

 

#4 2013-12-30 11:20:14

katsu07
ゲスト

Re: GW-USHyper300のドライバーモジュールのコンパイル

そもそもドライバーを導入しようとしていたわけですから、挿しただけでは認識しなかったと言う事だと思います。
それならばまず、gw-ushyper300 のIDを確認して下さい。
#2の投稿にも書きましたが、IDが"2019:ED18"でないと意味がありません。
gw-ushyper300をUSBポートに挿した状態で端末より
$ lsusb で"2019:ED18"が表示されるか確認して下さい。(おそらくPLANEXの文字が出ると思われます)

出力例:
$ lsusb
・・・略・・・
Bus 001 Device 003: ID 045e:00f0 Microsoft Corp.
Bus 001 Device 004: ID 5986:0294 Acer, Inc
Bus 002 Device 003: ID 058f:6366 Alcor Micro Corp. Multi Flash Reader

又、IDが"2019:ED18"であったならば、
$ lsmod | grep r8712u
を実施して、ドライバーが読み込まれているかも確認して下さい。


** IDが"2019:ED18"ならば、以下の記述を参照してください。 **

ubuntu 12.04ではubuntu 公式レポジトリにパッケージが用意されています。
導入すればgrubにも反映されます。
古いカーネルを勝手に削除したりしませんので、いずれも選択起動可能となります。
複数導入すると、それ相応のディスク容量が必要です。(/bootを別パーティションにしているならば、要注意)

kernel 3.5の場合(quantal): ubuntu 12.04.2の標準カーネル
kernel 3.8の場合(raring) : ubuntu 12.04.3の標準カーネル
kernel 3.11の場合(saucy)

カーネルイメージとヘッダーのパッケージの場合
$ sudo apt-get install linux-generic-lts-quantal
$ sudo apt-get install linux-generic-lts-raring
$ sudo apt-get install linux-generic-lts-saucy

これが一番簡単だと思います。
一つづつ導入しては再起動して確認作業をすれば良いと思います。

他にも以下の物があります。

カーネルイメージのパッケージのみ
$ sudo apt-get install linux-image-generic-lts-quantal
$ sudo apt-get install linux-image-generic-lts-raring
$ sudo apt-get install linux-image-generic-lts-saucy
カーネルヘッダーのパッケージのみ
$ sudo apt-get install linux-headers-generic-lts-quantal
$ sudo apt-get install linux-headers-generic-lts-raring
$ sudo apt-get install linux-headers-generic-lts-saucy

 

#5 2013-12-31 21:06:48

Ueda_Katuhiko
メンバ
登録日: 2013-04-20

Re: GW-USHyper300のドライバーモジュールのコンパイル

情報ありがとうございました
m(==)m
一応 ubuntuのversionを再確認しました

lsb_release -a
No LSB modules are available.
Distributor ID:    Ubuntu
Description:    Ubuntu 12.04.3 LTS
Release:    12.04
Codename:    precise

ハードウェアの情報も確認しました
lsusb|grep 2019
Bus 001 Device 002: ID 2019:ed16 PLANEX
Bus 001 Device 004: ID 2019:ed18 PLANEX

でアドバイスにしたがい、カーネルの導入を試みました
sudo apt-get install linux-generic-lts-raring
[sudo] password for root:
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています               
状態情報を読み取っています... 完了
E: パッケージ linux-generic-lts-raring が見つかりません


ううーーん何か設定だめなんでしょうか
apt-cache search linux-generic
linux-generic - Complete Generic Linux kernel
linux-image-3.2.0-23-generic - Linux kernel image for version 3.2.0 on 64 bit x86 SMP
linux-generic-pae - Complete Generic Linux kernel
linux-image-3.2.0-23-generic-pae - Linux kernel image for version 3.2.0 on 64 bit x86 SMP
linux-image-3.2.0-45-generic - Linux kernel image for version 3.2.0 on 32 bit x86 SMP
linux-image-3.2.0-51-generic - Linux kernel image for version 3.2.0 on 32 bit x86 SMP
linux-image-3.2.0-40-generic - Linux kernel image for version 3.2.0 on 32 bit x86 SMP
linux-image-3.2.0-52-generic - Linux kernel image for version 3.2.0 on 32 bit x86 SMP
linux-image-3.2.0-39-generic - Linux kernel image for version 3.2.0 on 32 bit x86 SMP

設定不良でしょうか??

オフライン

 

#6 2013-12-31 21:33:20

katsu07
ゲスト

Re: GW-USHyper300のドライバーモジュールのコンパイル

私も同じubuntu 12.04.3を使用しています。
以下の様に検索すると、普通に出てくるのですが・・・・

$ apt-cache search linux-generic-lts
linux-generic-lts-quantal - Generic Linux kernel image and headers
linux-generic-lts-quantal-eol-upgrade - Complete Generic Linux kernel and headers
linux-generic-lts-raring - Generic Linux kernel image and headers
linux-generic-lts-raring-eol-upgrade - Complete Generic Linux kernel and headers
linux-generic-lts-saucy - Generic Linux kernel image and headers
linux-generic-lts-saucy-eol-upgrade - Complete Generic Linux kernel and headers

最初の投稿を見ると、今使われているカーネルも最新の3.2.0-57ではなく、3.2.0-52の様なのですが、アップデートは普通にされてますよね?
手動で $ sudo apt-get update してから確認してもダメでしょうか?

 

#7 2014-01-01 11:01:30

Ueda_Katuhiko
メンバ
登録日: 2013-04-20

Re: GW-USHyper300のドライバーモジュールのコンパイル

apt-get updateしてもapt-cache search linux-genericの結果は変わりませんでした

同じCDからインストールした ubuntu 12.04で実施した所以下の様になりました

apt-cache search linux-generic
linux-generic - Complete Generic Linux kernel
linux-image-3.2.0-23-generic - Linux kernel image for version 3.2.0 on 64 bit x86 SMP
linux-generic-pae - Complete Generic Linux kernel
linux-image-3.2.0-23-generic-pae - Linux kernel image for version 3.2.0 on 64 bit x86 SMP
linux-image-3.5.0-32-generic - Linux kernel image for version 3.5.0 on 32 bit x86 SMP
linux-image-3.5.0-34-generic - Linux kernel image for version 3.5.0 on 32 bit x86 SMP
linux-generic-lts-quantal - Generic Linux kernel image and headers
linux-image-3.5.0-23-generic - Linux kernel image for version 3.5.0 on 32 bit x86 SMP

なんか/etc/apt/sources.listを比較してみます
最初の質問については、回答を頂いたので、/etc/apt/sources.listのメンテンテナスは
話の流れからそれてる気がしますので、情報に感謝するとともに今回の質問はクローズします

情報ありがとうございました

オフライン

 

#8 2014-01-04 09:45:15

Ueda_Katuhiko
メンバ
登録日: 2013-04-20

Re: GW-USHyper300のドライバーモジュールのコンパイル

出来たら追加で質問させてください

アドバイスkernel 3.8系を入れて
uname -r
3.8.0-28-generic
の状態で、GW-USHyper300を差し

lsusbしたところ
Bus 001 Device 004: ID 2019:ed18 PLANEX
が表示されます

lsmod |grep r8712uが出力されたので
/sbin/ifconfigしたのですが

loしか表示されません
型番はわかりませんが
Bus 001 Device 006: ID 2019:ed16 PLANEX
のwifi子機を刺すとwlan0が現れるので、無線LAN
子機を認識する環境は揃ってるとおもうんですが??

どこを切り分けるべきでしょうか?

オフライン

 

#9 2014-01-04 10:28:26

Ueda_Katuhiko
メンバ
登録日: 2013-04-20

Re: GW-USHyper300のドライバーモジュールのコンパイル

そうですね、kernel 3.2系 3.8系をgrubのメニューで選択して起動したいです

オフライン

 

#10 2014-01-04 11:05:11

Ueda_Katuhiko
メンバ
登録日: 2013-04-20

Re: GW-USHyper300のドライバーモジュールのコンパイル

まちがえました。今回の質問から派生して、別の題で質問していた話をこちらに投稿してしまいました

オフライン

 

#11 2014-01-04 12:28:52

Ueda_Katuhiko
メンバ
登録日: 2013-04-20

Re: GW-USHyper300のドライバーモジュールのコンパイル

/etc/network/interfaces
にwlan1で記述すると動くようになりました
なぜかwlan0では認識しません??

オフライン

 

#12 2014-01-04 13:08:52

katsu07
ゲスト

Re: GW-USHyper300のドライバーモジュールのコンパイル

もともと認識していたのではないでしょうか?
wlan0だと思い込んで作業してしまった為に気づかなかったと。
wirelessが2つ存在していて、USHyper300を後から認識させた為に、順番にデバイス名がアサインされたと思います。
デバイス名の順番を変えたり、wlan0として認識させたい場合はudevを変更する必要があると思います。

しかし、今はそれよりもこちらの投稿を確認してください。

 

#13 2014-01-04 20:58:15

Ueda_Katuhiko
メンバ
登録日: 2013-04-20

Re: GW-USHyper300のドライバーモジュールのコンパイル

存在していたのかもしれませんね
アドバイス頂いたカーネルにアップデートしてないマシンでは
/sbin/ifconfig wlan1で情報を得ることは出来ても
/etc/network/interfacesにwlan1の設定を書いても
wifi親機からipを取得出来ないので、今回アドバイス頂かなければ
正常に動作させる事は出来ませんでした

アドバイスありがとうございます。アップデートマネージャの設定似ついても
配慮頂きありがとうございました

オフライン

 

Board footer

Powered by FluxBB