当我尝试使用时,make clean modules
出现错误:
make -C src/ clean
make[1]: Verzeichnis „/home/dvadmin/treiber/src“ wird betreten
rm -rf *.o *.ko *~ core* .dep* .*.d .*.cmd *.mod.c *.a *.s .*.flags .tmp_versions Module.symvers Modules.symvers *.order
make[1]: Verzeichnis „/home/dvadmin/treiber/src“ wird verlassen
make -C src/ modules
make[1]: Verzeichnis „/home/dvadmin/treiber/src“ wird betreten
make -C /lib/modules/6.2.0-33-generic/build SUBDIRS=/src modules
make[2]: Verzeichnis „/usr/src/linux-headers-6.2.0-33-generic“ wird betreten
make[3]: *** Keine Regel vorhanden, um das Ziel „arch/x86/entry/syscalls/syscall_32.tbl“,
benötigt von „arch/x86/include/generated/uapi/asm/unistd_32.h“, zu erstellen. Schluss.
make[2]: *** [arch/x86/Makefile:248: archheaders] Fehler 2
make[2]: Verzeichnis „/usr/src/linux-headers-6.2.0-33-generic“ wird verlassen
make[1]: *** [Makefile:42: modules] Fehler 2
make[1]: Verzeichnis „/home/dvadmin/treiber/src“ wird verlassen
make: *** [Makefile:32: modules] Fehler 2
我已按照自述文件来制作驱动程序。
<Linux device driver for Realtek Ethernet controllers>
This is the Linux device driver released for RealTek RTL8168B/8111B, RTL8168C/8111C, RTL8168CP/8111CP, RTL8168D/8111D Gigabit Ether>
<Requirements>
- Kernel source tree (supported Linux kernel 2.6.x and 2.4.x)
- For linux kernel 2.4.x, this driver supports 2.4.20 and latter.
- Compiler/binutils for kernel compilation
<Quick install with proper kernel settings>
Check whether the built-in driver, r8169.ko (or r8169.o for kernel 2.4.x), is installed.
# lsmod | grep r8169
If it is installed, please remove it.
# rmmod r8169
note: If the built-in driver cannot removed by rmmod, please edit /etc/modprobe.conf and comment 'alias eth0 r8169'. Then, remmove >
Unpack the tarball :
# tar vjxf r8168-8.aaa.bb.tar.bz2
Change to the directory:
# cd r8168-8.aaa.bb
If you are running the target kernel, then you should be able to do :
# make clean modules (as root or with sudo)
# make install
# depmod -a
# insmod ./src/r8168.ko (or r8168.o in linux kernel 2.4.x)
You can check whether the driver is loaded by using following commands.
# lsmod | grep r8168
# ifconfig -a
我按照教程安装了完整的内核: https://www.michlfranken.de/ubuntu-hwe-kernel/#:~:text=sudo%20apt%20install%20linux-generic-hwe-20.04%20-y%20Ubuntu%2022.04%3A%20sudo,一个新内核。
我不知道我做错了什么,也许是因为驱动程序适用于内核 2.6?有没有办法让以太网适配器正常工作?
该适配器未在 lshw 中列出:
H/W-Pfad Gerät Klasse Beschreibung
===============================================================
system Arbeitsplatzrechner
/0 bus D3402-B2
/0/0 memory 64KiB BIOS
/0/11 memory 16GiB Systemspeicher
/0/11/0 memory 8GiB DIMM DDR4 Synchron Unbuf
/0/11/1 memory Project-Id-Version: lshwRepor
/0/11/2 memory 8GiB DIMM DDR4 Synchron Unbuf
/0/11/3 memory Project-Id-Version: lshwRepor
/0/17 memory 256KiB L1 Cache
/0/18 memory 1MiB L2 Cache
/0/19 memory 8MiB L3 Cache
/0/1a processor Intel(R) Core(TM) i7-6700K CP
/0/100 bridge Xeon E3-1200 v5/E3-1500 v5/6t
/0/100/14 /dev/fb0 bus 100 Series/C230 Series Chipse
/0/100/14/0 usb1 bus xHCI Host Controller
/0/100/14/0/1 communication SAMSUNG_Android
/0/100/14/0/7 input6 input Chicony HP Wired Desktop 320
/0/100/14/0/8 input9 input Logitech USB Optical Mouse
/0/100/14/1 usb2 bus xHCI Host Controller
/0/100/14.2 generic 100 Series/C230 Series Chipse
/0/100/16 communication 100 Series/C230 Series Chipse
/0/100/16.3 communication 100 Series/C230 Series Chipse
/0/100/17 scsi1 storage Q170/Q150/B150/H170/H110/Z170
/0/100/17/0 /dev/cdrom disk BD-RE BH16NS55
/0/100/17/1 /dev/sda disk 256GB Samsung SSD 850
/0/100/17/1/1 volume 511MiB Windows FAT Laufwerk
/0/100/17/1/2 /dev/sda2 volume 237GiB EXT4-Laufwerk
/0/100/17/0.0.0 /dev/sdb disk 250GB WDC WDS250G2B0A
/0/100/17/0.0.0/1 /dev/sdb1 volume 99MiB Windows FAT Laufwerk
/0/100/17/0.0.0/2 /dev/sdb2 volume 15MiB reserved partition
/0/100/17/0.0.0/3 /dev/sdb3 volume 232GiB Windows NTFS Laufwerk
/0/100/17/0.0.0/4 /dev/sdb4 volume 524MiB Windows NTFS Laufwerk
/0/100/1b bridge 100 Series/C230 Series Chipse
/0/100/1c bridge 100 Series/C230 Series Chipse
/0/100/1c/0 /dev/fb0 display GF108 [GeForce GT 630]
/0/100/1c/0.1 card1 multimedia GF108 High Definition Audio C
/0/100/1c/0.1/0 input10 input HDA NVidia HDMI/DP,pcm=3
/0/100/1c/0.1/1 input11 input HDA NVidia HDMI/DP,pcm=7
/0/100/1c/0.1/2 input12 input HDA NVidia HDMI/DP,pcm=8
/0/100/1c/0.1/3 input13 input HDA NVidia HDMI/DP,pcm=9
/0/100/1f bridge Q170 Chipset LPC/eSPI Control
/0/100/1f/0 system PnP device PNP0c02
/0/100/1f/1 printer PnP device PNP0400
/0/100/1f/2 communication PnP device PNP0501
/0/100/1f/3 communication PnP device PNP0501
/0/100/1f/4 input PnP device PNP0303
/0/100/1f/5 input PnP device PNP0f03
/0/100/1f/6 system PnP device PNP0c02
/0/100/1f/7 system PnP device PNP0c02
/0/100/1f/8 system PnP device PNP0b00
/0/100/1f/9 generic PnP device INT3f0d
/0/100/1f/a system PnP device PNP0c02
/0/100/1f/b system PnP device PNP0c02
/0/100/1f/c system PnP device PNP0c02
/0/100/1f/d system PnP device PNP0c02
/0/100/1f/e generic PnP device FXY0815
/0/100/1f.2 memory Memory controller
/0/100/1f.3 card0 multimedia 100 Series/C230 Series Chipse
/0/100/1f.3/0 input14 input HDA Intel PCH Mic
/0/100/1f.3/1 input15 input HDA Intel PCH Line
/0/100/1f.3/2 input16 input HDA Intel PCH Line Out
/0/100/1f.4 bus 100 Series/C230 Series Chipse
/0/100/1f.6 enp0s31f6 network Ethernet Connection (2) I219-
/1 power To Be Filled By O.E.M.
/2 input0 input Sleep Button
/3 input1 input Power Button
/4 input2 input Power Button
/5 enx5e86695e5feb network Ethernet interface
enp0s31f6 是板载适配器。最后一个 enx5e86695e5feb 是我的智能手机。我在系统设置中看不到该适配器。我还尝试了另一个 PCIe 适配器(相同型号)。
我希望有人能帮助我。我正在运行 Ubuntu 22.04