MrYarnell 2018-09-13 16:29 采纳率: 100%
浏览 1465
已采纳

Linux编译单一内核模块

我买了一块arm cortex-A53架构的开发板(nanopi a64),在使用的时候发现内核中没有UVC摄像头驱动,也就是免驱摄像头驱动,然后翻阅开发板厂家-友善之臂给的内核源码nanopi-a64-bsp/lichee/linux-3.10/drivers/media/usb/uvc路径下有UVC的驱动源码,所以我就想单独把这个UVC模块给编译出来,但是我按照《鸟哥Linux私房菜》的方法编译只生成了.o文件,并没有生成.ko文件。如下图:
图片说明
我使用的命令是:

 make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- drivers/media/usb/uvc/

这个命令我是在Ubuntu16.04里面执行的。因为我所使用的平台是arm64 所以我通过ARCH参数指定了目标平台,还指定了编译工具链。
uvc目录下的Makefile文件如下图:

 uvcvideo-objs  := uvc_driver.o uvc_queue.o uvc_v4l2.o uvc_video.o uvc_ctrl.o \
                  uvc_status.o uvc_isight.o uvc_debugfs.o
ifeq ($(CONFIG_MEDIA_CONTROLLER),y)
uvcvideo-objs  += uvc_entity.o
endif
#obj-$(CONFIG_USB_VIDEO_CLASS) += uvcvideo.o
obj-m += uvcvideo.o

ps:我试了很多次了,我也尝试过整个内核编译,但是会报错。错误信息很多:

 drivers/media/cedar-ve/cedar_ve.c:78:2: error: #error "Unknown chip type!"

我想应该是我的方法不对,希望有大神可以帮帮我!谢谢!
nanopi a64开发板手册:http://wiki.friendlyarm.com/wiki/index.php/NanoPi_A64/zh

NanoPi A64源码下载地址:https://pan.baidu.com/s/1c2kkWpi#list/path=%2F

  • 写回答

3条回答 默认 最新

  • yzhiju 2018-09-14 03:49
    关注

    友善之臂给的内核源码没编译出.ko 是make menuconfig里没选中uvc 模块
    厂家给的内核源码里面UVC驱动模块 代码拷贝到你要用的版本内核对应的位置下 添加配置 make menuconfig 里能找到对应的模块配置 选上M 就可以编译出来了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 shape_predictor_68_face_landmarks.dat
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料