c++ - 如何使用OpenGL设置Visual Studio Code?

标签 c++ opengl visual-studio-code

我正在尝试为opengl开发设置Visual Studio代码。我已经可以将其用于普通的c/c++开发,现在我正尝试将opengl开发添加到混合中。我知道如何在其他平台(即Eclipse,Xcode,Visual Studio,CodeBlocks)上设置opengl。我的问题的根源在于如何在Visual Studio代码中设置依赖项。我最好的猜测是在task.json文件中运行任务。现在,每次我运行程序时,它都充满了用于编译项目的代码。

最佳答案

OpenGl&C/C++&VSCode

遇到了同样的问题。请注意,这里有两个问题:

  • 如何设置launch.jsontasks.json文件?
  • the official VSCode documentation on C++ programming with VSCode开头
  • The tasks documentation详细说明了如何设置和运行tasks
  • 使用哪些命令来编译代码?
  • 这是棘手的地方。编译取决于操作系统和环境。以下部分主要关注于此:

  • 苹果电脑

    对我而言,主要问题是我使用的是MAC,许多解释仅针对Linux和Windows(它们没有framework参数),或者它们解释了如何在Xcode GUI中进行设置。

    TL; DR

    正如this Github Gistthis StackOverflow post都建议:
  • 修复您的包含文件名
  • 并非所有内容都在<gl/*>中(例如,Mac的一部分包含<OpenGL/*>,而glut文件包含<GLUT/*>)
  • 为了运行,请将framework添加到您的构建参数中(以包括外部库),例如...
  • gcc -o ex1 ex1.c -framework GLUT -framework OpenGL -Wno-deprecated
  • cc <your_file.c> -framework GLUT -framework OpenGL
  • 不要忘记:将这些frameworks添加到C/C++扩展设置和/或tasks.json以及

  • (同样:使用clangclang++时,它非常相似)

    将该见解与official documentation on C/C++ tasks 集成在一起,就完成了! :)

    更多细节

    以上只是我整个旅程的简短版本,详细说明如下:
  • 我也从the official VSCode instructions on C++ programming with VSCode(您也提到过)开始。
  • 然后,我在底部点击了它们的链接:Using Clang in Visual Studio Code(GCC的设置非常相似)。
  • 在Mac和非Mac OpenGl编译之间的区别之后,跟随this Github Gist。有两个主要区别:
  • APPLE路径略有不同;并非所有内容都在<gl/*>中(例如,核心文件的<OpenGL/*>和glut文件的<GLUT/*>)。
  • 您必须通过OpenGL标志添加framework和其他库。
  • 解决了这一问题之后:
  • 将这些frameworks以及
  • 添加到您的C/C++扩展设置中
  • (刚开始时,您可能希望减少弃用警告;随着OpenGL在过去十年中使用-Wno-deprecated进行了重大更改,)
  • 如果您以前从未这样做过,则可能想要brew install glewbrew install glfw和/或您使用的任何其他外部库。

  • Windows和Linux呢?

    VSCode的设置基本相同。确保正确设置了C/C++扩展后,请查看the official "C/C++ for Visual Studio Code" documentation page底部的环境文档。

    但是,更大的问题通常是如何进行编译。我没有在非MAC系统上进行编译的最新示例或经验。但是这里有一些相关的引用资料:
  • Compile OpenGl on Linux
  • Compile OpenGl with GCC on Windows

  • 跨平台的?

    根据open github issue #1083的说法,显然跨平台开发仍然可能会引起一些麻烦。

    我还发现了一个使用VSCode here进行OpenGl跨平台编译的人的例子。您可能要检查他们的entire .vscode/ folder(如果不是他们的整个项目设置)。

    单击按钮即可运行+调试

    如今,通过遵循these instructions可以很容易地将任意数量的启动(运行和/或调试)配置添加到内置的启动+调试器UI中。

    [不推荐使用] VSCode“代码运行器”扩展

    在调试器UI出现问题之前(或至少在我没有注意到之前),您可以安装Code Runner扩展,您将在右上角(或Command+Alt+N)获得一个简洁的“运行代码”按钮。

    如果您只想使用它来运行单个可执行文件,则此方法效果很好。如果要单独运行单个文件,则会有些困难。我没有尝试过,但是正如他们建议的那样,您可以使用特殊的文件命名模式,即glob pattern(例如*.gl.cpp),并使用code-runner.executorMapByGlob设置来基于文件名使用不同的compile + run参数。

    关于c++ - 如何使用OpenGL设置Visual Studio Code?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41577520/

    相关文章:

    c++ - 如何获取亮像素或暗像素的坐标?打开简历

    c++ - CUDA 中的 float(0.0) 与 0.0f

    opengl - 在几秒钟而不是几小时内旋转数百个 JPEG

    opengl - 四 strip 纹理失真

    c++ - 搜索/替换 boost 正则表达式 C++

    c - opengl:关于 glutMainLoop() 的问题

    visual-studio-code - 安装 python 扩展时出错 "can' t 打开文件 'directory + filename' : [Errno 2] No such file or directory "

    visual-studio-code - 将 csscomb 用于 VS Code

    python - Jupyter Notebook 的当前工作目录设置为 vscode 中的临时文件夹

    c++ - 将 dll 转换为 lib 以进行静态链接?