无法制作 RTL8188CE 驱动程序

无法制作 RTL8188CE 驱动程序

我刚刚从 Realtek 网站直接下载了 RTL8188CE 驱动程序。我安装了 build-essentials 和 linux-generic-headers。我转到下载的驱动程序的顶级目录并make在终端中运行。我不断收到以下错误。

make -C /lib/modules/3.5.0-25-generic/build M=/home/mo/Documents/ASUS PCE-N15 Drivers/rtl_92ce_92se_92de_8723ae_88ee_linux_mac80211_0012.0207.2013 modules
make[1]: Entering directory `/usr/src/linux-headers-3.5.0-25-generic'
make[1]: *** No rule to make target `PCE-N15'.  Stop.
make[1]: Leaving directory `/usr/src/linux-headers-3.5.0-25-generic'
make: *** [all] Error 2

我正在尝试安装 ASUS PCE-N15 WiFi 卡的驱动程序。

这是 makefile:

CC = gcc
KVER  := $(shell uname -r)
KSRC := /lib/modules/$(KVER)/build
MODDESTDIR := /lib/modules/$(KVER)/kernel/drivers/net/wireless/rtlwifi
FIRMWAREDIR := /lib/firmware/
PWD := $(shell pwd)
CLR_MODULE_FILES := *.mod.c *.mod *.o .*.cmd *.ko *~ .tmp_versions* modules.order Module.symvers
SYMBOL_FILE := Module.symvers

EXTRA_CFLAGS += -O2
obj-m := rtlwifi.o
PCI_MAIN_OBJS   := base.o   \
        rc.o    \
        debug.o \
        regd.o  \
        efuse.o \
        cam.o   \
        ps.o    \
        core.o  \
        stats.o \
        pci.o   \

rtlwifi-objs += $(PCI_MAIN_OBJS)

all: 
    $(MAKE) -C $(KSRC) M=$(PWD) modules
    @cp $(SYMBOL_FILE) rtl8192ce/
    @make -C rtl8192ce/
    @cp $(SYMBOL_FILE) rtl8192se/
    @make -C rtl8192se/
    @cp $(SYMBOL_FILE) rtl8192de/
    @make -C rtl8192de/
    @cp $(SYMBOL_FILE) rtl8723e/
    @make -C rtl8723e/
    @cp $(SYMBOL_FILE) rtl8188ee/
    @make -C rtl8188ee/
install: all
    find /lib/modules/$(shell uname -r) -name "r8192se_*.ko" -exec rm {} \;
    find /lib/modules/$(shell uname -r) -name "r8192ce_*.ko" -exec rm {} \;
    find /lib/modules/$(shell uname -r) -name "r8723e_*.ko" -exec rm {} \;
    find /lib/modules/$(shell uname -r) -name "r8188ee_*.ko" -exec rm {} \;
    @rm -fr $(FIRMWAREDIR)/`uname -r`/rtlwifi

    $(shell rm -fr $(MODDESTDIR))
    $(shell mkdir $(MODDESTDIR))
    $(shell mkdir $(MODDESTDIR)/rtl8192se)
    $(shell mkdir $(MODDESTDIR)/rtl8192ce)
    $(shell mkdir $(MODDESTDIR)/rtl8192de)
    $(shell mkdir $(MODDESTDIR)/rtl8723e)
    $(shell mkdir $(MODDESTDIR)/rtl8188ee)
    @install -p -m 644 rtlwifi.ko $(MODDESTDIR) 
    @install -p -m 644 ./rtl8192se/rtl8192se.ko $(MODDESTDIR)/rtl8192se
    @install -p -m 644 ./rtl8192ce/rtl8192ce.ko $(MODDESTDIR)/rtl8192ce
    @install -p -m 644 ./rtl8192de/rtl8192de.ko $(MODDESTDIR)/rtl8192de
    @install -p -m 644 ./rtl8723e/rtl8723e.ko $(MODDESTDIR)/rtl8723e
    @install -p -m 644 ./rtl8188ee/rtl8188ee.ko $(MODDESTDIR)/rtl8188ee

    @depmod -a

    @#copy firmware img to target fold
    @#$(shell [ -d "$(FIRMWAREDIR)/`uname -r`" ] && cp -fr firmware/rtlwifi/ $(FIRMWAREDIR)/`uname -r`/.)
    @#$(shell [ ! -d "$(FIRMWAREDIR)/`uname -r`" ] && cp -fr firmware/rtlwifi/ $(FIRMWAREDIR)/.)
    @cp -fr firmware/rtlwifi/ $(FIRMWAREDIR)/

uninstall:
    $(shell [ -d "$(MODDESTDIR)" ] && rm -fr $(MODDESTDIR))

    @depmod -a

    @#delete the firmware img
    @rm -fr /lib/firmware/rtlwifi/
    @rm -fr /lib/firmware/`uname -r`/rtlwifi/

clean:
    rm -fr *.mod.c *.mod *.o .*.cmd *.ko *~
    rm -fr .tmp_versions
    rm -fr Modules.symvers
    rm -fr Module.symvers
    rm -fr Module.markers
    rm -fr modules.order
    rm -fr tags
    @find -name "tags" -exec rm {} \;
    @rm -fr $(CLR_MODULE_FILES)
    @make -C rtl8192ce/ clean
    @make -C rtl8192se/ clean
    @make -C rtl8192de/ clean
    @make -C rtl8723e/ clean
    @make -C rtl8188ee/ clean

答案1

我找到了问题所在。我的 PWD 中有一个空格,因此 make 命令认为 PCE-N15 是目标,而不是 PATH 名称的一部分。

相关内容