即使提供库路径也找不到 clang++ 库

clang++ library not found even when providing library path

我试图用 glfw 创建一个新的 OpenGL 项目,很高兴在 m1 Mac 上使用 vs 代码,并设置文件,以便我拥有包含必要 headers 和库 (libglfw3.a) 文件以及包含 glad.c 和 main.cpp 的 src 文件夹,都在我的工作区文件夹中。

我已经修改了 tasks.json 文件,如下所示:

{
"version": "2.0.0",
"tasks": [
    {
        "type": "cppbuild",
        "label": "C/C++: clang++ build active file",
        "command": "/usr/bin/clang++",
        "args": [
            "-fdiagnostics-color=always",
            "-g",
            "-std=c++17",
            "-I${workspaceFolder}/include",
            "-L${workspaceFolder}/lib",
            "${workspaceFolder}/src/*.cpp",
            "${workspaceFolder}/src/glad.c",
            "-llibglfw3",
            "-o",
            "${workspaceFolder}/game"
        ],
        "options": {
            "cwd": "${fileDirname}"
        },
        "problemMatcher": [
            "$gcc"
        ],
        "group": {
            "kind": "build",
            "isDefault": true
        },
        "detail": "compiler: /usr/bin/clang++"
    }
]

}

但是,我收到以下错误:

ld: library not found for -llibglfw3 
clang: error: linker command failed with exit code 1 (use -v to see invocation)

我以为我已经正确包含了 glfw 库的路径,但它说找不到该库。我做错了什么?

作为 side-note,我已经按照 this 教程设置了程序,但是这个 post 假设您有一个 windows machine , 所以我有 downloaded/changed 一些关于 m1 mac.

的知识

通常,当您使用 -l 标志将库提供给 link 时,您会省略 lib 前缀。例如:“-lglfw3”links 文件“libglfw3.a”。看来您应该更改您的 -llibglfw3 选项。