Recently used the next Raspberry Pi and Inter Edison, originally intended to use the network card, but found that the Raspberry Pi and Edison can not compile the official driver, error missing/kenerl/bulid directory, check the information, the original is these embedded platform to save space, are not equipped with the source code , and in the driver of the network card need to call the system interface, but there is no source code, these interfaces are not, compile the time can not find the interface, so, error.
A compilation driver
There are two solutions:
First installation Source-devel
Source-devel is the source code repository, the interface of the kernel you are using should have it.
1. First, check the kernel: uname-r
2. Internal Core header file C header files: Click to open link
3, after the installation of the kernel, you need to use this command to determine the kernel C Header installation directory
ls-d/usr/src/kernels/$ (uname-r) */include
Reference:
[[email protected] ~]# uname-r2.6.25-14.fc9.i686[[email protected] ~]# rpm-q kernel-develpackage kernel-devel is not ins Talled[[email protected] ~]# cd/home[[email protected] home]# wget ftp://rpmfind.net/linux/fedora/releases/9/ Everything/i386/os/packages/kernel-devel-2.6.25-14.fc9.i686.rpm[[email protected] home]# rpm-i Kernel-devel-2.6.25-14.fc9.i686.rpm[[email protected] home]# rpm-q kernel-develkernel-devel-2.6.25-14.fc9.i686
4. When you're finished, start compiling your NIC driver.
Second other environment compilation replication
This method is simple, probably means that you compile in other environments (such as virtual machines), and then copy the compiled firmware and files to the platform. This method requires you to know what the driver compiles, and where the compiled parts should be placed.
1. Compiling drivers in other environments
2. Find the driver firmware/lib/modules/3.13.0-32-generic (kernel version)/kernel/drivers/net/wireless/rtl8188 (NIC driver firmware), copy it to the corresponding folder in the embedded platform
3. Locate the binary file/lib/firmware/rtl8192se (network card chip model)/This folder is a binary file (when you copy the driver firmware to the driver folder, the platform may automatically download the binary files, if not copied into it)
Note: For copying files You can copy them to your personal directory using SSH service software such as WINSCP, and move them to the destination folder using the command.
Two check drive
Check that the driver is not loaded, and that the driver installation is successful if you have the following information.
[Email protected]:~$ lsmod | grep 818192cu 528365 0uio 8119 1 UIO_PDRV_GENIRQ
No, reboot and check.
Copyright NOTICE: This article for Bo Master original article, without Bo Master permission not reproduced.
Linux Embedded Development Platform Network card driver solution