You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在VSCode中打包使用Raylib开发的C++游戏为可运行应用程序

基于Raylib的C++游戏独立打包全流程(VSCode环境)

前置准备

  • 确认本地Raylib为静态编译版本:Windows下对应.lib后缀库文件,macOS/Linux下对应.a后缀库文件,若只有动态库需要重新编译Raylib并勾选静态编译选项
  • 所有游戏依赖的图片、音频、字体等资源统一放在项目根目录的assets文件夹内,代码内资源路径全部改为相对路径

Windows平台打包步骤

  • 修改VSCode的编译配置(tasks.json文件),在原有编译参数中加入静态编译标记,参考编译命令如下:
    x86_64-w64-mingw32-g++ -static -static-libgcc -static-libstdc++ 你的代码文件.cpp -o 游戏名.exe -lraylib -lopengl32 -lgdi32 -lwinmm
    -static参数为必填项,会将所有依赖的运行库打包进exe,无需额外附带dll文件
  • 执行编译生成exe文件后,将assets资源文件夹和exe放在同一目录下,整个文件夹即可直接分发运行;如果需要单文件执行,可以用Raylib自带的rres工具将资源打包成二进制嵌入代码,编译后仅生成单个exe文件
  • 可使用upx工具压缩最终exe文件,体积可缩小60%以上不影响运行

macOS平台打包步骤

  • 修改编译参数添加静态标记,参考编译命令如下:
    clang++ -std=c++17 -framework CoreVideo -framework IOKit -framework Cocoa -framework GLUT -framework OpenGL libraylib.a 你的代码文件.cpp -o 游戏名
  • 生成符合macOS使用习惯的app包(可选):
    1. 新建文件夹命名为游戏名.app,依次创建子目录Contents/MacOS、Contents/Resources
    2. 编译好的可执行文件放入Contents/MacOS目录,所有资源文件放入Contents/Resources目录
    3. 新建Contents/Info.plist文件填入基础的app配置信息即可
  • 执行otool -L 可执行文件路径验证没有依赖外部Raylib动态库,即完成打包

Linux平台打包步骤

  • 优先尝试静态编译,参考编译命令如下:
    g++ -static -static-libgcc -static-libstdc++ 你的代码文件.cpp -o 游戏名 -lraylib -lGL -lm -lpthread -ldl -lrt -lX11
  • 若静态编译存在依赖缺失问题,可使用AppImage方式打包:将编译好的动态链接版可执行文件、所有依赖库、资源文件放入AppDir目录,用appimagetool工具打包成单个AppImage文件,即可在所有主流发行版直接运行

内容的提问来源于stack exchange,提问作者Okoma

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 06:15:03