私は以前、このドライバーを古いカーネルであると信じてコンパイルしました。しかし、私は現在15.10にいるので、それを理解できません。
dylan@xaelah:~$ uname -r
4.2.0-18-generic
ここ はSudo lshw
の出力です
here からソースをダウンロードしました
次に、ディレクトリにCDを発行してSudo make
を発行します
出力は次のとおりです。
make -C tools
make[1]: Entering directory '/home/dylan/Downloads/patched-Asus-PCE-N53-linux-driver-master/tools'
gcc -g bin2h.c -o bin2h
make[1]: Leaving directory '/home/dylan/Downloads/patched-Asus-PCE-N53-linux-driver-master/tools'
/home/dylan/Downloads/patched-Asus-PCE-N53-linux-driver-master/tools/bin2h
cp -f os/linux/Makefile.6 /home/dylan/Downloads/patched-Asus-PCE-N53-linux-driver-master/os/linux/Makefile
make -C /lib/modules/4.2.0-18-generic/build SUBDIRS=/home/dylan/Downloads/patched-Asus-PCE-N53-linux-driver-master/os/linux modules
make[1]: Entering directory '/usr/src/linux-headers-4.2.0-18-generic'
CC [M] /home/dylan/Downloads/patched-Asus-PCE-N53-linux-driver-master/os/linux/../../sta/sta_cfg.o
In file included from /home/dylan/Downloads/patched-Asus-PCE-N53-linux-driver-master/include/rtmp_os.h:44:0,
from /home/dylan/Downloads/patched-Asus-PCE-N53-linux-driver-master/include/rtmp_comm.h:69,
from /home/dylan/Downloads/patched-Asus-PCE-N53-linux-driver-master/include/rt_config.h:33,
from /home/dylan/Downloads/patched-Asus-PCE-N53-linux-driver-master/os/linux/../../sta/sta_cfg.c:28:
/home/dylan/Downloads/patched-Asus-PCE-N53-linux-driver-master/os/linux/../../sta/sta_cfg.c: In function ‘RTMPQueryInformation’:
/home/dylan/Downloads/patched-Asus-PCE-N53-linux-driver-master/os/linux/../../sta/sta_cfg.c:3953:30: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘long unsigned int’ [-Wformat=]
DBGPRINT(RT_DEBUG_TRACE, ("sizeof UCHAR=%d, channel=%d \n", sizeof(UCHAR), p
^
/home/dylan/Downloads/patched-Asus-PCE-N53-linux-driver-master/include/os/rt_linux.h:665:16: note: in definition of macro ‘DBGPRINT_RAW’
printk Fmt; \
^
/home/dylan/Downloads/patched-Asus-PCE-N53-linux-driver-master/os/linux/../../sta/sta_cfg.c:3953:4: note: in expansion of macro ‘DBGPRINT’
DBGPRINT(RT_DEBUG_TRACE, ("sizeof UCHAR=%d, channel=%d \n", sizeof(UCHAR), p
^
/home/dylan/Downloads/patched-Asus-PCE-N53-linux-driver-master/os/linux/../../sta/sta_cfg.c: In function ‘RTMPIoctlShow’:
/home/dylan/Downloads/patched-Asus-PCE-N53-linux-driver-master/os/linux/../../sta/sta_cfg.c:4896:85: error: macro "__DATE__" might prevent reproducible builds [-Werror=date-time]
intf(extra, size, "Driver version-%s, %s %s\n", STA_DRIVER_VERSION, __DATE__, _
^
/home/dylan/Downloads/patched-Asus-PCE-N53-linux-driver-master/os/linux/../../sta/sta_cfg.c:4896:95: error: macro "__TIME__" might prevent reproducible builds [-Werror=date-time]
, size, "Driver version-%s, %s %s\n", STA_DRIVER_VERSION, __DATE__, __TIME__ );
^
cc1: some warnings being treated as errors
scripts/Makefile.build:258: recipe for target '/home/dylan/Downloads/patched-Asus-PCE-N53-linux-driver-master/os/linux/../../sta/sta_cfg.o' failed
make[2]: *** [/home/dylan/Downloads/patched-Asus-PCE-N53-linux-driver-master/os/linux/../../sta/sta_cfg.o] Error 1
Makefile:1398: recipe for target '_module_/home/dylan/Downloads/patched-Asus-PCE-N53-linux-driver-master/os/linux' failed
make[1]: *** [_module_/home/dylan/Downloads/patched-Asus-PCE-N53-linux-driver-master/os/linux] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-4.2.0-18-generic'
Makefile:384: recipe for target 'LINUX' failed
make: *** [LINUX] Error 2
明らかに私はSudo make install
できない
また、前のビルドで表示されたタイプの不一致やその他の警告についても心配していませんが、それでも機能します。 Sudo make -i
も試してみました
ビルドの基本、カーネルソース、ヘッダーをダウンロードしました...
何か他のものが必要な場合は教えてください。 Googleで検索したところ、同様の問題が見つかりましたが、解決策は見つかりませんでした。このサイトには this さえありますが、答えはなく、他の選択肢は機能しません。
助けていただければ幸いです!
編集:
また、次のようにmakeを実行してみました-
Sudo make RT_CFLAGS="-Wno-error=date-time"
同じエラー....
それからSudo make clean
を実行してからSudo make RT_CFLAGS="-Wno-error=date-time" -i
を実行しました ここはpastbinです
私は彼女の上にそれをコンパイルすることができます:
$ lsb_release -dc
Description: Ubuntu 15.10
Codename: wily
$ uname -r
4.2.0-18-generic
コンパイルにSudo
を使用しないことをお勧めします。以下の手順が失敗した場合、最初からやり直してください。
Gitリポジトリを複製しました。
git clone https://github.com/unused/patched-Asus-PCE-N53-linux-driver.git
cd patched-Asus-PCE-N53-linux-driver/
-Wno-error=date-time
をコンパイルフラグに追加します
vim os/linux/config.mk +178
WFLAGS:=
を探します
WFLAGS := -DAGGREGATION_SUPPORT -DPIGGYBACK_SUPPORT -DWMM_SUPPORT -DLINUX -Wall -Wstrict-prototypes -Wno-trigraphs -Wno-error=date-time
コンパイル
make
この時点で、モジュールは正常にコンパイルされました。
ls -l os/linux/rt5592sta.ko
-rw-rw-r-- 1 user user 1767056 Nov 21 10:29 /home/user/Desktop/sand_box/patched-Asus-PCE-N53-linux-driver/os/linux/rt5592sta.ko
modinfo /home/user/Desktop/sand_box/patched-Asus-PCE-N53-linux-driver/os/linux/rt5592sta.ko
filename: /home/user/Desktop/sand_box/patched-Asus-PCE-N53-linux-driver/os/linux/rt5592sta.ko
version: 2.6.0.0_20120326
srcversion: 150B71061DC1EBE4DE31E22
alias: pci:v00001814d00005592sv*sd*bc*sc*i*
depends:
vermagic: 4.2.0-18-generic SMP mod_unload modversions
parm: mac:rt28xx: wireless mac addr (charp)
しかし、make
スクリプトが/tftpboot
フォルダーにコピーしようとしたのは奇妙です。開発者が別のマシンでそれを更新/テストする簡単な方法を探していたのかもしれません。
LD [M] /home/user/Desktop/sand_box/patched-Asus-PCE-N53-linux-driver/os/linux/rt5592sta.ko
make[1]: Leaving directory '/usr/src/linux-headers-4.2.0-18-generic'
cp -f /home/user/Desktop/sand_box/patched-Asus-PCE-N53-linux-driver/os/linux/rt5592sta.ko /tftpboot
cp: cannot create regular file ‘/tftpboot’: Permission denied
Makefile:384: recipe for target 'LINUX' failed
make: *** [LINUX] Error 1
とにかく、残りのインストール手順を完了してみてください。関連する問題が発生した場合はお知らせください。