(超级详细)如何在Mac OS上的VScode中配置OpenGL环境并编译

这篇具有很好参考价值的文章主要介绍了(超级详细)如何在Mac OS上的VScode中配置OpenGL环境并编译。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

安装环境

机器:macbook air

芯片: M1芯片(arm64)

macOS:macOS Ventura 13.4

VScode version:April 2023 1.78

下载GLAD与GLFW

一、下载GLAD

​ 1. 从GLAD的在线服务下载所需的文件,参数选择如下,可根据自己的需要进行更换:

​ 2. 点击GENERATE生成

​ 3. 下载相应的压缩包

(超级详细)如何在Mac OS上的VScode中配置OpenGL环境并编译

​ 4. 解压缩,正确的目录结构如下所示:

  glad
  ├── include
  │   ├── KHR
  │   │   └── khrplatform.h
  │   └── glad
  │       └── glad.h
  └── src
      └── glad.c

​ 至此,GLAD的下载结束。

二、下载GLFW

​ 1. GLFW官网处下载,可以选择下载源码然后自己进行编译,也可以选择直接下载编译好的库文件。从源码开始编译的话更加灵活,能够灵活适配不同的操作系统,也能让自己对GLFW的源码结构有一个基本的了解。出于方便起见本文选择了后者。

​ 2. 下载下来的压缩包如下所示,

​ 3. 解压压缩包,得到目录结构如下的文件:

├── LICENSE.md
├── README.md
├── docs
├── include
├── lib-arm64
├── lib-universal
└── lib-x86_64

该目录下主要用到两个目录。

首先,根据自己的芯片型号选择lib-xxx,如果你是intel(x86)的芯片,那么就选择lib-x86-64,如果你是新版的m1或者m2芯片(arm)那么就选择lib-arm64。除此之外,lib-universal据说是两种芯片类型都能兼容,但由于没有机器,作者并未进行测试,有兴趣的同学可以自行测试一下。

其次,除了lib-xxx外,还需要用到的一个目录是include目录中的文件,剩下的文件和目录可以删除,不予保留。

至此,GLFW的下载结束。

项目结构配置

​ 创建工作目录new_openGL,并创建include、lib和src三个文件夹,并将GLAD和GLFW目录下的文件移动到相应的目录下:

glfw-3.3.8.bin.MACOS/include/GLFW/  ->  new_openGL/include/GLFW/
glfw-3.3.8.bin.MACOS/lib-arm64/*   ->  new_openGL/lib/
glad/include/glad/  ->  new_openGL/include/glad/
glad/include/KHR/   ->  new_openGL/include/KHR/
glad/src/glad.c  ->. new_openGL/src/glad.c

移动完成后,正确的文件目录结构如下所示:

new_openGL
├── include
│   ├── GLFW
│   │   ├── glfw3.h
│   │   └── glfw3native.h
│   ├── KHR
│   │   └── khrplatform.h
│   └── glad
│       └── glad.h
├── lib
│   ├── libglfw.3.dylib
│   └── libglfw3.a
└── src
    └── glad.c

至此,项目结构配置完成。

测试程序与项目的编译

​ 1. 项目的src/目录下创建文件main.cpp,并写入以下程序:

#include <glad/glad.h>
#include <GLFW/glfw3.h>
#include <stdio.h>
#include <stdlib.h>
#include <iostream>

void framebuffer_size_callback(GLFWwindow* window, int width, int height)
{
    glViewport(0, 0, width, height);
} 

void processInput(GLFWwindow *window)
{
    if(glfwGetKey(window, GLFW_KEY_ESCAPE) == GLFW_PRESS)
        glfwSetWindowShouldClose(window, true);
}
int main()
{
    glfwInit();
    glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
    glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);
    glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);
    glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GL_TRUE); //MAC OSX needs

    GLFWwindow* window = glfwCreateWindow(800, 600, "LearnOpenGL", NULL, NULL);
    if (window == NULL)
    {
        std::cout << "Failed to create GLFW window" << std::endl;
        glfwTerminate();
        return -1;
    }
    glfwMakeContextCurrent(window);

    if (!gladLoadGLLoader((GLADloadproc)glfwGetProcAddress))
    {
        std::cout << "Failed to initialize GLAD" << std::endl;
        return -1;
    }   

    glViewport(0, 0, 800, 600);
    while(!glfwWindowShouldClose(window))
    {
        processInput(window);

        glClearColor(0.9f, 0.3f, 0.3f, 1.0f);
        glClear(GL_COLOR_BUFFER_BIT);
        glfwSwapBuffers(window);
        glfwPollEvents();    
    }
    glfwTerminate();
    
    return 0;
}

​ 2. 项目的根目录下创建CMakeLists.txt文件,并将下面的语句复制进去:

cmake_minimum_required(VERSION 3.0.0)
project(HelloGL VERSION 0.1.0)

# 使用 C++ 17 标准
set(CMAKE_CXX_STANDARD 17)

# 设置代码文件
set(SRC_DIR ${PROJECT_SOURCE_DIR}/src/)

# 添加头文件
set(HEADER_DIR ${PROJECT_SOURCE_DIR}/include/)
set(LIB_DIR ${PROJECT_SOURCE_DIR}/lib/)
include_directories(${HEADER_DIR} ${LIB_DIR})

# 添加目标链接
set(GLFW_LINK ${LIB_DIR}libglfw.3.dylib)
link_libraries(${GLFW_LINK})

# 执行编译命令
set(SOURCES ${SRC_DIR}glad.c ${SRC_DIR}main.cpp)
add_executable(HelloGL ${SOURCES})

# 链接系统的 OpenGL 框架
if (APPLE)
    target_link_libraries(HelloGL "-framework OpenGL")
endif()

include(CTest)
enable_testing()

set(CPACK_PROJECT_NAME ${PROJECT_NAME})
set(CPACK_PROJECT_VERSION ${PROJECT_VERSION})
include(CPack)

此时项目的目录结构如下:

new_openGL
├── CMakeLists.txt
├── include
│   ├── GLFW
│   │   ├── glfw3.h
│   │   └── glfw3native.h
│   ├── KHR
│   │   └── khrplatform.h
│   └── glad
│       └── glad.h
├── lib
│   ├── libglfw.3.dylib
│   └── libglfw3.a
└── src
    ├── glad.c
    └── main.cpp

​ 3. 项目根目录下创建build目录,进入build目录并执行:

mkdir build
cd build
cmake ..

​ 如需安装cmake 请至:Download | CMake

得到以下结果:

(base) liushanlin@192 build % cmake ..
-- The C compiler identification is AppleClang 14.0.3.14030022
-- The CXX compiler identification is AppleClang 14.0.3.14030022
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /Library/Developer/CommandLineTools/usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /Library/Developer/CommandLineTools/usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Configuring done
-- Generating done
-- Build files have been written to: /Users/liushanlin/cpp_directory/new_openGL/build

可以看到cmake指令在build目录下为我们生成了许多新的文件和目录,包括CMakeFilesTesting等等,这些都是中间文件,不需要管。

创建build目录的目的使这些生成的中间文件不会影响源代码的结构,如果需要删除所有生成的文件,只需要删除build目录,就可以还原原始的目录结构。

cmake最终的目的就是为了生成Makefile文件,即下图中最后一个文件,该文件用于后续make命令的执行。

然后,在build目录下执行:

make

得到以下输出结果,并生成了HelloGL可执行文件:

(base) liushanlin@192 build % make
[ 33%] Building C object CMakeFiles/HelloGL.dir/src/glad.c.o
[ 66%] Building CXX object CMakeFiles/HelloGL.dir/src/main.cpp.o
[100%] Linking CXX executable HelloGL
[100%] Built target HelloGL

至此,测试文件的编译已经全部结束。

测试可执行文件HelloGL

在build目录中执行下面的命令:

./HelloGL

得到下面的结果说明一切都正确:

至此,Mac环境下VScode中OpenGL环境搭建与测试就已经全部完成了。

参考文章:

  1. 十分钟最简便配置mac+OpenGL+vscode_mac vscode opengl_seewed的博客-CSDN博客

创作不易,如果你觉得还不错,请点赞关注哦 ^^文章来源地址https://www.toymoban.com/news/detail-508021.html

到了这里,关于(超级详细)如何在Mac OS上的VScode中配置OpenGL环境并编译的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Mac安装配置Visual Studio Code(vscode)以及Java环境详细教程(初学者必看)

    原本博主今天想继续给大家出Java接下来的教程,但是就在昨天我在配置vscode的时候遇到了一些问题,Windows系统的小伙伴配置起来肯定很方便,但是在Mac的小伙伴却显得十分无奈,所以我想给大家出一篇Mac的Visual Studio Code配置以及Java环境搭建教程! 博客主页:Jovy.的博客_CSDN博客-领

    2024年02月01日
    浏览(84)
  • Mac OS 配置java的环境变量

    下载java的jdk安装包 下载完成后,点击安装,一直下一步即可。Mac会默认安装到: /Library/Java/JavaVirtualMachines/jdk-1.8.jdk , command+option+c 复制路径 打开terminal,运行如下命令: 创建一个.bash_profile的隐藏配置文件 打开并编辑 添加配置信息。注意 jdk-1.8.jdk 可能不同 保存编辑完的文

    2024年02月13日
    浏览(37)
  • Mac OS 中JDK 环境(jdk 1.8.0_831)安装配置、环境变量配置及卸载操作

            摊牌了,本来就有点喜新厌旧的我,特意把系统和开发环境都拉到比较高,想试验一下兼容性和某些新特性,探索了一下新大陆,也见识了各种光怪陆离的妖魔鬼怪。         因为要着手云平台项目的重构改版和新系统的架构和开发,而Nacos和MySQL总是出现各种奇奇

    2024年02月11日
    浏览(57)
  • Mac OS如何安装Stable Diffusion-详细教程附模型包

    Stable Diffusion是现在强大的AI绘画工具之一,最重要的还是免费使用! 今天详细讲一下怎么在 Mac OS 上安装部署Stable Diffusion: 在开始我们需要安装下Home Brew, 可以直接复制下面代码到终端并执行 下面我们需要使用  brew  安装一些所需要的依赖包:  make   protobuf   rust   python@

    2024年02月06日
    浏览(42)
  • 如何在VMware虚拟机上安装运行Mac OS系统(详细图文教程)

    一、安装前准备 虚拟机运行软件: VMware Workstation Pro ,版本: 16.0.0 。 VMware Mac OS支持套件: Unlocker 。 Mac OS系统镜像。 如果VMware 在没有安装 Unlocker 的情况下启动,在选择客户机操作系统时没有支持Mac OS的选项,如下图所示: 这时候需要下载最新版的Unlocker,如果是在Windo

    2024年02月03日
    浏览(67)
  • JDK的环境配置(超级详细教程)

    一、下载java安装包 我们可以去官网下载java,进入官网页面,然后点击Download Java。 网站:https://developer.oracle.com/languages/java.html 里面有各种版本的jdk可供选择。 二、安装JDK 这里我选择安装的java文件: jdk-18_windows-x64_bin 接下来我们开始安装,一直点next(下一步)就行: 安装成功

    2024年02月06日
    浏览(43)
  • HDFS NFS Gateway(环境配置,超级详细!!)

    🐮博主syst1m 带你 acquire knowledge! ✨博客首页——syst1m的博客💘 😘《CTF专栏》超级详细的解析,宝宝级教学让你从蹒跚学步到健步如飞🙈 😎《大数据专栏》大数据从0到秃头👽,从分析到决策,无所不能❕ 🔥 《python面向对象(人狗大战)》突破百万的阅读量,上过各种各样

    2024年02月04日
    浏览(29)
  • JDK的安装与环境配置(超级详细,保证成功)

    如果你是一个才学习Java语言的小白,第一步应该就是安装JDK并配置环境了。在这里出一个超级详细的教程,希望可以帮助到你 首先,先把下载JDK的地址挂上:https://www.oracle.com/java/technologies/downloads/archive/ JDK的最新版本: Standard Edition(标准版)的最新版:jdk 14。 Early-Access(

    2024年02月05日
    浏览(51)
  • 【VSCode】mac系统利用VSCode配置C++环境

    本文主要提供给想要在mac电脑上编写C++的童鞋,帮助你们有一个更好的编程环境; mac系统下的C++编程环境可以用苹果官方的软件Xcode,也很简单,在app store里就可以下载,但是也有一个非常痛苦的问题,就是这个软件实在是太大,256G内存的直接可以劝退了,所以mac系统下建议

    2024年02月16日
    浏览(48)
  • Mac中VSCode配置vue项目环境

    进入VSCode官网,下载Mac版安装包 设置中文: vscode导航栏view - Command Palette - 输入Configure Display Language - 选择简体中文 - 重启 下载地址:node.js官网,建议下载长期维护版本。 打开控制台输入 node -v 如果正确显示版本号,安装完成 修改镜像源: $ sudo npm install -g cnpm --registry=http:

    2024年02月16日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包