Eu tenho um Ubuntu e eu compilei um driver ath9k para uma arquitetura ARM. O problema é que não posso fazer a instalação funcionar como quero trabalhar. O README diz o seguinte:
Building for external kernels
If you have a kernel you do not have installed but yet want to build the compat-wireless-2.6 drivers for it you can use this syntax:
make KLIB=/home/mcgrof/kernels/linux-2.6.23.9 KLIB_BUILD=/home/mcgrof/kernels/linux->2.6.23.9
If you have a kernel installed, which is not your currently running kernel (e.g. via distro updates; plus its corresponding kernel-dev package), you can use this syntax:
make KLIB=/lib/modules/2.6.30.6-53.fc11.x86_64
and to install to your system's root path for the non-running kernel:
make KLIB=/lib/modules/2.6.30.6-53.fc11.x86_64 KMODPATH_ARG='INSTALL_MOD_PATH=' install
Meu comando de compilação é o seguinte:
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
(Construir é um sucesso.)
De acordo com o README, eu devo instalar assim:
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
Infelizmente minha instalação não funciona. O resultado é o seguinte:
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
Como devo fazer isso direito?