Make

執行 make 出現問題 - 語法錯誤:“(”意外

  • March 1, 2021

烏布努圖 18.04.4 LTS - Linux 5.3.0-28 - gcc 7.4.0

我正在嘗試執行 make,我得到以下輸出

/bin/sh: 1: Syntax error: "(" unexpected
Makefile:1699: recipe for target 'modules' failed
make: *** [modules] Error 2

我嘗試添加SHELL := /bin/bashmakefile.

然後我得到以下內容。

/bin/bash: -c: line 0: syntax error near unexpected token `('
/bin/bash: -c: line 0: `make ARCH=x86_64 CROSS_COMPILE= -C /lib/modules/5.3.0-28-generic/build M=/home/dubsta/Downloads/Archer T9UH(EU&US)_V2_170831_Linux/linux_T9UH  modules'
Makefile:1700: recipe for target 'modules' failed
make: *** [modules] Error 1

前幾行Makefile看起來像這樣:

SHELL := /bin/bash
EXTRA_CFLAGS += $(USER_EXTRA_CFLAGS)
EXTRA_CFLAGS += -O1
#EXTRA_CFLAGS += -O3
#EXTRA_CFLAGS += -Wall
#EXTRA_CFLAGS += -Wextra
#EXTRA_CFLAGS += -Werror

我已經仔細檢查了我正在使用的 hte linux 版本的核心標頭檔是否已安裝。

問題是您從中執行它的目錄,/home/dubsta/Downloads/Archer T9UH(EU&US)_V2_170831_Linux/linux_T9UH modules. 核心 Makefile 不處理包含空格的目錄,我也不確定括號和 & 符號。

要解決此問題,請將 和 重命名Archer T9UH(EU&US)_V2_170831_Linuxlinux_T9UH modules更簡單的名稱,不帶空格,然後重試(根據需要調整命令)。

引用自:https://unix.stackexchange.com/questions/567727