我需要在 linux LMDE 3 Cindy 中安装 MySmartUSB Light 作为 linux 中 avr 的编程器,所以我下载了这个驱动程序(Linux_3.x.x_4.x.x_VCP_Driver_Source) 由此关联:基于如下所示的注释:
最后修改时间:2019 年 7 月 12 日
该捆绑包包含适用于 4.10.0 内核 (Ubuntu 17.04) 的修改后的 CP210x 驱动程序。
它包含了:
- 支持 CP2102N
注意:此驱动程序是如何在 CP210x 驱动程序中执行 GPIO 操作的示例,因为 kernel.org 上的驱动程序目前不支持 GPIO。该驱动程序仅在 Ubuntu 14.04 上的 Linux 3.13.0 内核上编写和测试。该驱动程序是 Linux 3.13.0 内核中现有驱动程序的修改版本,由 kernel.org 维护。建议使用与您的特定内核版本相匹配的驱动程序:
www.kernel.org
构建说明:
Ubuntu: 1. make(您的 cp210x 驱动程序) 2. cp cp210x.ko 到 /lib/modules//kernel/drivers/usb/serial 3. insmod /lib/modules/
当我想sudo make
在驱动程序文件夹中运行时,出现此错误:
so@notebook:~/Downloads/Compressed/Linux_3.x.x_4.x.x_VCP_Driver_Source$ sudo make
[sudo] password for so:
Sorry, try again.
[sudo] password for so:
make -C /lib/modules/`uname -r`/build M= modules
make[1]: Entering directory '/usr/src/linux-headers-4.9.0-9-amd64'
/usr/src/linux-headers-4.9.0-9-common/scripts/Makefile.build:44: /usr/src/linux-headers-4.9.0-9-common/scripts/basic/Makefile: No such file or directory
make[5]: *** No rule to make target '/usr/src/linux-headers-4.9.0-9-common/scripts/basic/Makefile'. Stop.
/usr/src/linux-headers-4.9.0-9-common/Makefile:444: recipe for target 'scripts_basic' failed
make[4]: *** [scripts_basic] Error 2
/usr/src/linux-headers-4.9.0-9-common/scripts/Makefile.build:44: /usr/src/linux-headers-4.9.0-9-common/arch/x86/entry/syscalls/Makefile: No such file or directory
make[4]: *** No rule to make target '/usr/src/linux-headers-4.9.0-9-common/arch/x86/entry/syscalls/Makefile'. Stop.
arch/x86/Makefile:231: recipe for target 'archheaders' failed
make[3]: *** [archheaders] Error 2
Makefile:152: recipe for target 'sub-make' failed
make[2]: *** [sub-make] Error 2
Makefile:8: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-4.9.0-9-amd64'
Makefile:7: recipe for target 'all' failed
make: *** [all] Error 2
那么我该如何解决这个问题呢?
答案1
您以前使用过该系统运行 make 来构建驱动程序吗?您可能需要一些额外的软件包。
本指南可能会有所帮助,因为它描述了编译软件包之前的必要步骤,尽管您的情况中最重要的步骤可能是第一步:
sudo apt-get install build-essential checkinstall
运行后,尝试sudo make
再次编译驱动程序。
如果它不起作用,则可能是您没有正确的内核头文件。内核头文件基本上只是内核本身的 C 头文件,这是编译与内核交互的东西(例如驱动程序)所必需的。这里是一个安装指南,它解释了升级/安装内核头文件就像运行一样简单:
sudo apt update
sudo apt install linux-headers-$(uname -r)