有没有办法在VSCode Mac中链接SFML库

Is there a way to link SFML libraries in VSCode Mac?

本文关键字:链接 SFML Mac VSCode 有没有      更新时间:2023-10-16

在macOS中,有没有一种相当容易理解的方法将SFML库与VSCode链接起来?

我的情况:

  • 使用苹果电脑
  • 将 Clang 与 VSCode 结合使用
  • 安装 Xcode
  • 我是业余爱好者

注意:我正在使用clang和Mac

在这里查看我的问题和答案: 使用 SFML (macOS( 手动链接和编译C++程序

简而言之:

  • 下载适用于 Mac 的 SFML
  • 将包含目录从提取的文件夹复制到项目目录
  • 将动态库文件复制到您的项目,文件夹库
  • 在终端中键入 g++ 命令并链接到动态库

它将是这样的:

g++ main.cpp -o main -I include -L lib -l sfml-system -l sfml-window -l sfml-graphics -l sfml-audio -l sfml-network -Wl,-rpath ./lib

这里有一个样板,用于在VS代码中链接SFML:

https://github.com/andrew-r-king/sfml-vscode-boilerplate

如果您有Macbook M1,其他答案将不起作用。原因是因为网站上的 sfml 是用 x86_64 编译的,您无法将库直接编译为 arm64。因此,您需要在Homebrew上安装sfmlpkg-config

命令:

g++ main.cpp $(pkg-config --libs --cflags sfml-window sfml-system sfml-graphics) -o main

更详细的解决方案在这里:https://stackoverflow.com/a/53510642/16264548

如果您不想使用 pkg-config ,则可以手动键入位置:

main.cpp -I/opt/homebrew/Cellar/sfml/2.5.1_1/include -L/opt/homebrew/Cellar/sfml/2.5.1_1/lib -lsfml-window -lsfml-system -lsfml-graphics -o main

要启用编辑器功能,您可以将库包含文件添加到 C/C++ 配置中:

  • 打开命令面板(默认情况下为 ⇧⌘P(
  • 键入并选择"C/C++:编辑配置 (UI(">
  • "包含路径">部分中,添加一行:/your/path/to/sfml/include/*

就我而言,路径是/usr/local/Cellar/sfml/2.5.1_1/include/*