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

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 PADS Logic 原理图
  • ¥15 PADS Logic 图标
  • ¥15 电脑和power bi环境都是英文如何将日期层次结构转换成英文
  • ¥20 气象站点数据求取中~
  • ¥15 如何获取APP内弹出的网址链接
  • ¥15 wifi 图标不见了 不知道怎么办 上不了网 变成小地球了
  • ¥50 STM32单片机传感器读取错误
  • ¥15 (关键词-阻抗匹配,HFSS,RFID标签天线)
  • ¥15 机器人轨迹规划相关问题
  • ¥15 word样式右侧翻页键消失