无法识别的调试选项:1 [默认启用]

unrecognized debugging option: 1 [enabled by default]

我正在用 C 为 Windows 和 linux 编写一个 cross-platform gtk 应用程序。今天我在标题中遇到了奇怪的编译器错误(我以前从未见过) .

当我在 Windows 中构建我的程序时会发生这种情况,但在 Linux 中不会。当我通过命令行在 Windows 中构建它时,此消息显示为警告并且程序编译成功。但是,当我在代码块中构建它时,此消息显示为错误并且无法编译。

这是我的 makefile 中的内容:

ifeq ($(OS),Windows_NT)
    CC = mingw32-gcc
    BIN = "bin\"
    DIRCHK = if exist bin rd /s /q bin
    CPGLADE = copy main_win.glade bin\Release
    RM = rmdir /S /Q bin
    SQLITE = -dll sqlite3.dll
    DLL = copy /Y sqlite3.dll bin\Debug && copy /Y sqlite3.dll bin\Release
else
    CC = gcc
    BIN = -vp bin/
    RM = rm -rf bin
    SQLITE = -l sqlite3 -ldl -lpthread
    DLL = rm -f sqlite3.dll
endif

SHELL = bash

GTK := $(shell pkg-config --cflags --libs gtk+-3.0)

CFLAGS := -g -Wall -static-libgcc -lm $(GTK) $(SQLITE)

TARGET = deans2

all:
    $(DIRCHK)
    mkdir $(BIN)Debug
    mkdir $(BIN)Release
    $(CPGLADE)
    $(CC) main.c $(CFLAGS) -o bin/Release/$(TARGET)
    $(DLL)

Debug:
    $(DIRCHK)
    mkdir $(BIN)Debug
    $(CPGLADE)
    $(CC) main.c $(CFLAGS) -o bin/Debug/$(TARGET)
    $(DLL)

Release:
    $(DIRCHK)
    mkdir $(BIN)Release
    $(CPGLADE)
    $(CC) main.c $(CFLAGS) -o bin/Release/$(TARGET)
    $(DLL)

clean:
    $(RM)

您确定错误是 unrecognized debugging option: 1 吗? (第一名。)

可能是 unrecognized debugging option: l? (字母 ell.)

我希望在 Windows 上构建时 SQLITE 中设置的 -dll 标志会出现后一个错误,因为这不是 gcc 的有效标志,我我知道。

你想在那里做什么?