我有一个 Ubuntu,并且为 ARM 架构交叉编译了 ath9k 驱动程序。问题是无法按照我想要的方式进行安装。自述文件内容如下:
构建外部内核
如果您有尚未安装的内核,但想要为其构建 compat-wireless-2.6 驱动程序,则可以使用以下语法:
使 KLIB=/home/mcgrof/kernels/linux-2.6.23.9 KLIB_BUILD=/home/mcgrof/kernels/linux->2.6.23.9
如果您安装了一个内核,但它不是您当前运行的内核(例如通过发行版更新;加上其相应的 kernel-dev 包),您可以使用以下语法:
使 KLIB=/lib/modules/2.6.30.6-53.fc11.x86_64
并将非运行内核安装到系统的根路径:
使 KLIB=/lib/modules/2.6.30.6-53.fc11.x86_64 KMODPATH_ARG='INSTALL_MOD_PATH=' 安装
我的构建命令如下:
make ARCH=arm CROSS_COMPILE=/home/roncsak/building/toolchain-arm-linux-gnueabihf/gcc-lw-arm-linux-gnueabihf-4.7-2013.03-20130313_linux/bin/arm-linux-gnueabihf- KLIB=/home/roncsak/building/linux/linux-3.0.35-boundary KLIB_BUILD=/home/roncsak/building/linux/linux-3.0.35-boundary
(构建成功。)
根据 README 我应该这样安装:
make ARCH=arm CROSS_COMPILE=/home/roncsak/building/toolchain-arm-linux-gnueabihf/gcc-arm-linux-gnueabihf-4.7-2013.03-20130313_linux/bin/arm-linux-gnueabihf- KLIB=/home/roncsak/building/linux/linux-3.0.35-boundary KLIB_BUILD=/home/roncsak/building/linux/linux-3.0.35-boundary KMODPATH_ARG='INSTALL_MOD_PATH=/home/roncsak/building/targetfs/rfs/lib/modules/3.0.35' install
不幸的是我的安装不起作用。结果如下:
make -C /home/roncsak/building/linux/linux-3.0.35-boundary M=/home/roncsak/building/ath9/compat-wireless-3.1.1-1 modules
make[1]: Entering directory `/home/roncsak/building/linux/linux-3.0.35-boundary'
Building modules, stage 2.
MODPOST 9 modules
WARNING: "ewma_init" [/home/roncsak/building/ath9/compat-wireless-3.1.1-1/net/mac80211/mac80211.ko] undefined!
WARNING: "ewma_add" [/home/roncsak/building/ath9/compat-wireless-3.1.1-1/net/mac80211/mac80211.ko] undefined!
make[1]: Leaving directory `/home/roncsak/building/linux/linux-3.0.35-boundary'
make -C /home/roncsak/building/linux/linux-3.0.35-boundary M=/home/roncsak/building/ath9/compat-wireless-3.1.1-1 "INSTALL_MOD_DIR=updates" INSTALL_MOD_PATH=/home/roncsak/building/buildDir/targetfs/rfs/lib/modules/3.0.35/ \
modules_install
make[1]: Entering directory `/home/roncsak/building/linux/linux-3.0.35-boundary'
INSTALL /home/roncsak/building/ath9/compat-wireless-3.1.1-1/compat/compat.ko
INSTALL /home/roncsak/building/ath9/compat-wireless-3.1.1-1/drivers/net/wireless/ath/ath.ko
INSTALL /home/roncsak/building/ath9/compat-wireless-3.1.1-1/drivers/net/wireless/ath/ath9k/ath9k.ko
INSTALL /home/roncsak/building/ath9/compat-wireless-3.1.1-1/drivers/net/wireless/ath/ath9k/ath9k_common.ko
INSTALL /home/roncsak/building/ath9/compat-wireless-3.1.1-1/drivers/net/wireless/ath/ath9k/ath9k_htc.ko
INSTALL /home/roncsak/building/ath9/compat-wireless-3.1.1-1/drivers/net/wireless/ath/ath9k/ath9k_hw.ko
INSTALL /home/roncsak/building/ath9/compat-wireless-3.1.1-1/net/mac80211/mac80211.ko
INSTALL /home/roncsak/building/ath9/compat-wireless-3.1.1-1/net/rfkill/rfkill-regulator.ko
INSTALL /home/roncsak/building/ath9/compat-wireless-3.1.1-1/net/wireless/cfg80211.ko
DEPMOD 3.0.35
WARNING: /home/roncsak/building/buildDir/targetfs/rfs/lib/modules/3.0.35//lib/modules/3.0.35/updates/net/wireless/cfg80211.ko needs unknown symbol rfkill_unregister
WARNING: /home/roncsak/building/buildDir/targetfs/rfs/lib/modules/3.0.35//lib/modules/3.0.35/updates/net/wireless/cfg80211.ko needs unknown symbol rfkill_blocked
WARNING: /home/roncsak/building/buildDir/targetfs/rfs/lib/modules/3.0.35//lib/modules/3.0.35/updates/net/wireless/cfg80211.ko needs unknown symbol rfkill_destroy
WARNING: /home/roncsak/building/buildDir/targetfs/rfs/lib/modules/3.0.35//lib/modules/3.0.35/updates/net/wireless/cfg80211.ko needs unknown symbol rfkill_resume_polling
WARNING: /home/roncsak/building/buildDir/targetfs/rfs/lib/modules/3.0.35//lib/modules/3.0.35/updates/net/wireless/cfg80211.ko needs unknown symbol rfkill_pause_polling
WARNING: /home/roncsak/building/buildDir/targetfs/rfs/lib/modules/3.0.35//lib/modules/3.0.35/updates/net/wireless/cfg80211.ko needs unknown symbol rfkill_set_hw_state
WARNING: /home/roncsak/building/buildDir/targetfs/rfs/lib/modules/3.0.35//lib/modules/3.0.35/updates/net/wireless/cfg80211.ko needs unknown symbol rfkill_alloc
WARNING: /home/roncsak/building/buildDir/targetfs/rfs/lib/modules/3.0.35//lib/modules/3.0.35/updates/net/wireless/cfg80211.ko needs unknown symbol rfkill_register
WARNING: /home/roncsak/building/buildDir/targetfs/rfs/lib/modules/3.0.35//lib/modules/3.0.35/updates/net/wireless/cfg80211.ko needs unknown symbol rfkill_set_sw_state
WARNING: /home/roncsak/building/buildDir/targetfs/rfs/lib/modules/3.0.35//lib/modules/3.0.35/updates/net/mac80211/mac80211.ko needs unknown symbol ewma_add
WARNING: /home/roncsak/building/buildDir/targetfs/rfs/lib/modules/3.0.35//lib/modules/3.0.35/updates/net/mac80211/mac80211.ko needs unknown symbol ewma_init
WARNING: /home/roncsak/building/buildDir/targetfs/rfs/lib/modules/3.0.35//lib/modules/3.0.35/updates/net/rfkill/rfkill-regulator.ko needs unknown symbol rfkill_unregister
WARNING: /home/roncsak/building/buildDir/targetfs/rfs/lib/modules/3.0.35//lib/modules/3.0.35/updates/net/rfkill/rfkill-regulator.ko needs unknown symbol rfkill_destroy
WARNING: /home/roncsak/building/buildDir/targetfs/rfs/lib/modules/3.0.35//lib/modules/3.0.35/updates/net/rfkill/rfkill-regulator.ko needs unknown symbol rfkill_alloc
WARNING: /home/roncsak/building/buildDir/targetfs/rfs/lib/modules/3.0.35//lib/modules/3.0.35/updates/net/rfkill/rfkill-regulator.ko needs unknown symbol rfkill_register
make[1]: Leaving directory `/home/roncsak/building/linux/linux-3.0.35-boundary'
mkdir: cannot create directory `/usr/lib/compat-wireless/': Permission denied
make: *** [install-scripts] Error 1
我应该怎样做才对呢?