Doing all the things in the kernel source root path:
The original configuration is used as basement to generate our own profile:
cp arch/arm/configs/bb.org_defconfig defconfig_LQ
make menuconfig
load defconfig_LQ
do some modification based on your needs then
save defconfig_LQ
cp defconfig_LQ arch/arm/configs/beaglebone_defconfig
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- beaglebone_defconfig
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- uImage dtbs
maybe you can add -j4
to make it faster.
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- modules
maybe you can add -j4
to make it faster.
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- SUBDIRS=drivers/input/touchscreen modules
sudo make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- modules_install
sudo
make sure you have the writing permission for the default path /lib/modules/KERNEL-NAME
or you can have no sudo and use:
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- INSTALL_MOD_PATH=/path/to/target modules_install
or you can copy to target board directly:
scp -r /lib/modules/3.8.13+ [email protected]:/lib/modules/
if you make something wrong and want to recompile again, please make clean
first.
reference1 compile wiki
reference2 compile wiki
reference3, Beaglebone Black NFS root