Linux modules install


安裝模塊的時候出現錯誤:modprobe: chdir(3.0.35-g6774ed9-dirty): No such file or directory.

內核模塊沒有安裝正確。本文記錄解決方法。

參考鏈接

http://linfengdu.blog.163.com/blog/static/1177107320132710370696/

問題描述

安裝模塊的時候出現錯誤。

root@freescale $ modprobe g_mass_storage.ko
modprobe: chdir(3.0.35-g6774ed9-dirty): No such file or directory

查看內核版本uname -r

root@freescale $ uname -r
3.0.35-g6774ed9-dirty

查看/lib/modules目錄的模塊安裝位置:

root@freescale /lib/modules$ ls
3.0.35-2666-gbdde708

對應的目錄名稱與內核版本不對應。那么這個目錄改怎么生成呢?

模塊編譯

在內核源碼根目錄進行,模塊編譯,可以選擇編譯所有模塊或者編譯指定目錄中的模塊。

  • 編譯所有模塊

make modules

  • 編譯指定目錄中的模塊

make M=drivers/usb/gadget/ modules

安裝模塊

將模塊安裝到指定的路徑。

  • 默認安裝的路徑

make modules_install

默認安裝在/lib/modules/kernel-version/

kernel-version是所編譯的內核的版本

例如我編譯的內核源碼版本是3.0.35-2666-gbdde708

  • 指定安裝路徑

make modules_install INSTALL_MOD_PATH=~/rootfs

指定到開發板的文件系統中或者打包放到文件系統中。

查看安裝結果

指定安裝目錄之后生成的結果

查看生成的內容如下

Qt@Tony:cd /home/Qt/rootfs/lib/modules/3.0.35-g6774ed9-dirty
Qt@Tony:~/rootfs/lib/modules/3.0.35-g6774ed9-dirty$ ll
total 148
drwxrwxr-x 3 Qt Qt  4096 Dec 14 13:09 ./
drwxrwxr-x 3 Qt Qt  4096 Dec 14 13:09 ../
lrwxrwxrwx 1 Qt Qt    20 Dec 14 13:08 build -> /home/Qt/kernel/
drwxrwxr-x 6 Qt Qt  4096 Dec 14 13:08 kernel/
-rw-rw-r-- 1 Qt Qt  8582 Dec 14 13:08 modules.alias
-rw-rw-r-- 1 Qt Qt  8513 Dec 14 13:08 modules.alias.bin
-rw-rw-r-- 1 Qt Qt 12237 Dec 14 13:08 modules.builtin
-rw-rw-r-- 1 Qt Qt 15275 Dec 14 13:08 modules.builtin.bin
-rw-rw-r-- 1 Qt Qt    69 Dec 14 13:08 modules.ccwmap
-rw-rw-r-- 1 Qt Qt  2812 Dec 14 13:08 modules.dep
-rw-rw-r-- 1 Qt Qt  5438 Dec 14 13:08 modules.dep.bin
-rw-rw-r-- 1 Qt Qt    75 Dec 14 13:08 modules.devname
-rw-rw-r-- 1 Qt Qt    73 Dec 14 13:08 modules.ieee1394map
-rw-rw-r-- 1 Qt Qt   141 Dec 14 13:08 modules.inputmap
-rw-rw-r-- 1 Qt Qt    81 Dec 14 13:08 modules.isapnpmap
-rw-rw-r-- 1 Qt Qt    74 Dec 14 13:08 modules.ofmap
-rw-rw-r-- 1 Qt Qt  2139 Dec 14 13:08 modules.order
-rw-rw-r-- 1 Qt Qt   463 Dec 14 13:08 modules.pcimap
-rw-rw-r-- 1 Qt Qt    43 Dec 14 13:08 modules.seriomap
-rw-rw-r-- 1 Qt Qt   131 Dec 14 13:08 modules.softdep
-rw-rw-r-- 1 Qt Qt  9248 Dec 14 13:08 modules.symbols
-rw-rw-r-- 1 Qt Qt 11607 Dec 14 13:08 modules.symbols.bin
-rw-rw-r-- 1 Qt Qt  6886 Dec 14 13:08 modules.usbmap
lrwxrwxrwx 1 Qt Qt    20 Dec 14 13:08 source -> /home/Qt/kernel/

modules.dep 用於記錄模塊的依賴關系。

如果沒有可以使用depmod命令生成(這一塊沒有驗證)。

模塊位於kernel目錄

Qt@Tony:~/kernel/module_install/lib/modules/3.0.35-g6774ed9-dirty$ tree kernel/
kernel/
├── crypto
│   └── tcrypt.ko
├── drivers
│   ├── gpu
│   │   └── drm
│   │       ├── drm.ko
│   │       └── vivante
│   │           └── vivante.ko
│   ├── hid
│   │   ├── hid-a4tech.ko
│   │   ├── hid-apple.ko
│   │   ├── hid-belkin.ko
│   │   ├── hid-cherry.ko
│   │   ├── hid-chicony.ko
│   │   ├── hid-cypress.ko
│   │   ├── hid-ezkey.ko
│   │   ├── hid-gyration.ko
│   │   ├── hid-logitech.ko
│   │   ├── hid-microsoft.ko
│   │   ├── hid-monterey.ko
│   │   ├── hid-petalynx.ko
│   │   ├── hid-pl.ko
│   │   ├── hid-samsung.ko
│   │   ├── hid-sony.ko
│   │   └── hid-sunplus.ko
│   ├── i2c
│   │   └── algos
│   │       └── i2c-algo-bit.ko
│   ├── media
│   │   └── video
│   │       ├── gspca
│   │       │   └── gspca_main.ko
│   │       ├── mxc
│   │       │   └── capture
│   │       │       ├── adv7180_tvin.ko
│   │       │       ├── camera_sensor_clock.ko
│   │       │       ├── ipu_bg_overlay_sdc.ko
│   │       │       ├── ipu_csi_enc.ko
│   │       │       ├── ipu_fg_overlay_sdc.ko
│   │       │       ├── ipu_prp_enc.ko
│   │       │       ├── ipu_still.ko
│   │       │       ├── mxc_v4l2_capture.ko
│   │       │       ├── ov3640_camera.ko
│   │       │       ├── ov5640_camera.ko
│   │       │       ├── ov5640_camera_mipi.ko
│   │       │       ├── ov5642_camera.ko
│   │       │       └── ov8820_camera_mipi.ko
│   │       └── uvc
│   │           └── uvcvideo.ko
│   ├── misc
│   │   └── mxs-perfmon.ko
│   ├── mxc
│   │   └── mlb
│   │       └── mxc_mlb150.ko
│   ├── net
│   │   └── wireless
│   │       ├── ath
│   │       │   └── ath6kl
│   │       │       └── ath6kl.ko
│   │       ├── hostap
│   │       │   └── hostap.ko
│   │       ├── rtl8192ce
│   │       │   └── 8192ce.ko
│   │       └── rtl8723bs
│   │           └── 8723bs.ko
│   ├── scsi
│   │   └── scsi_wait_scan.ko
│   └── usb
│       └── gadget
│           ├── g_file_storage.ko
│           └── g_mass_storage.ko
├── fs
│   ├── autofs4
│   │   └── autofs4.ko
│   ├── configfs
│   │   └── configfs.ko
│   └── nls
│       ├── nls_ascii.ko
│       └── nls_utf8.ko
└── net
    └── wireless
        ├── lib80211_crypt_ccmp.ko
        ├── lib80211_crypt_tkip.ko
        └── lib80211_crypt_wep.ko
33 directories, 51 files

Tony Liu

2016-12-14, Shenzhen


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM