首页/新闻资讯/正文详情

raylib 安装跨平台实操:三条路线跑通第一个窗口,链接参数照着敲

发布时间:2026/9/24 20:49:58 来源:云帆数科 栏目:资讯中心
raylib 安装跨平台实操:三条路线跑通第一个窗口,链接参数照着敲
raylib 安装跨平台实操三条路线跑通第一个窗口链接参数照着敲【免费下载链接】raylibA simple and easy-to-use library to enjoy videogames programming项目地址: https://gitcode.com/GitHub_Trending/ra/raylibraylib 是一个 C 语言写的跨平台游戏库把窗口、图形、纹理、模型、音频打包好。读完照命令敲完你手里会有一个能开窗口、能关掉的本地程序和一个find_package直接可用的库。装之前先确认这三件事raylib 跨平台前置检查C 编译器在手gcc --version能出结果走源码路线还需要cmake --version。OpenGL 能力默认构建目标是 3.3 上下文动手前用glxinfo确认显卡能给到。真实显示环境本地有桌面的会话才行SSH 空会话、远程虚拟桌面里没有真实 OpenGL 实现窗口必然起不来。三种装法按需求对号入座只想 5 分钟内跑起来 → 包管理器要固定版本但不想编译 → 预编译二进制包要裁剪模块、降 OpenGL 版本或出 WebAssembly → 源码编译。注意 raylib 默认产出静态库链接完就是独立可执行文件分发不用带 .dll / .so。⚠️ 最容易被漏的是音频开发库如libasound2-dev。缺了它编译照样成功跑起来却没声音而且必须补装依赖后重新编译 raylib 才能补上。按你的场景选一条路raylib 安装三种敲法包管理器路线一条命令版本被发行版锁死# Windows (PowerShell) choco install raylib # macOS brew install raylib # Linux sudo apt install libraylib-dev # Ubuntu/Debian; Arch: pacman -S raylib验证一行pkg-config --modversion raylib # prints the installed version能打印版本号就算装好。最小验证程序如下#include raylib.h int main(void) { InitWindow(800, 450, raylib test); SetTargetFPS(60); while (!WindowShouldClose()) { BeginDrawing(); ClearBackground(RAYWHITE); DrawText(Hello raylib!, 300, 200, 20, LIGHTGRAY); EndDrawing(); } CloseWindow(); return 0; }gcc test.c -o test -lraylib -lopengl32 -lgdi32 -lwinmm # Windows MinGW gcc test.c -o test -lraylib -framework OpenGL -framework Cocoa # macOS gcc test.c -o test -lraylib -lGL -lm -lpthread -ldl -lrt # Linux验收弹出 800x450 白窗显示一行字点关闭或按 ESC 干净退出环境就齐了。先用 apt 装了、后来发现要换 OpenGL 后端或裁模块 →sudo apt remove libraylib-dev卸掉切到源码路线两者不打架。预编译二进制路线省编译时间但要自己管目录拿一份 release 归档解压到固定位置头文件和库各归其位# keep include/ and lib/ apart for -I and -L later mkdir -p ~/raylib-pkg/include ~/raylib-pkg/lib cp raylib-6.0.0/include/raylib.h ~/raylib-pkg/include/ cp raylib-6.0.0/lib/libraylib.a ~/raylib-pkg/lib/验证ls ~/raylib-pkg/include/raylib.h ~/raylib-pkg/lib/libraylib.a验收两个文件都在之后编译带-I ~/raylib-pkg/include -L ~/raylib-pkg/lib -lraylib即可版本锁死在包的 tag 上。已经解压了 release 包、又发现想调构建选项 → 删掉目录直接走源码编译没有残留要清理。源码编译路线完全可控产物干净git clone https://gitcode.com/GitHub_Trending/ra/raylib cd raylib cmake -B build -DCMAKE_BUILD_TYPERelease # add -DOPENGL_VERSION2.1 to lower the floor cmake --build build -j4 sudo cmake --install build验证pkg-config --modversion raylib ls /usr/local/lib/libraylib*验收能打出版本号、/usr/local/lib下有libraylib.afind_package(raylib)随后可直接引用。模块裁剪用 cmake/CMakeOptions.txt 里的开关如USE_AUDIO需先开CUSTOMIZE_BUILDON。把库接进你自己的工程raylib CMake 配置与裸链接CMake 一行 find_packagecmake_minimum_required(VERSION 3.11) project(mygame C) find_package(raylib 6.0 REQUIRED) add_executable(mygame main.c) target_link_libraries(mygame raylib)构建目录里cmake .. make即可官方示例工程在 projects/CMake/。裸 Makefile 链接参数Linux 形态其他平台照抄上面各平台那一行CFLAGS -I/usr/local/include LDFLAGS -lraylib -lGL -lm -lpthread -ldl -lrt game: game.c $(CC) $(CFLAGS) $ -o $ $(LDFLAGS) 仓库 projects/ 下有 VS2022 / VS Code / Code::Blocks 现成模板宏定义和链接库都配好了拷出来替换 main.c 就能编译。接入后最容易踩的两颗雷macOS 缺-frameworkCocoa / OpenGL / IOKit链接报缺符号就往这查Linux 静态库链接顺序源文件在前-lraylib及其系统依赖在后顺序反了就报 undefinedraylib 编译报错排查按症状直达链接阶段报 undefined reference to InitWindow最可能的原因库没链接上或静态库依赖的系统库参数与顺序不全。pkg-config --libs raylib # check expected -l entries ldd ./game | grep -i ray # dynamic build: is it actually linked修复按「源文件 →-lraylib→ 系统库」的顺序重链例如gcc game.c -o game -lraylib -lGL -lm -lpthread -ldl -lrt。编译成功但窗口不弹出来最可能的原因显卡给不出 raylib 默认要求的 3.3 上下文InitWindow 起不来。glxinfo | grep OpenGL version # macOS: check in System Information修复低于 3.3 就降级重编cmake -B build -DOPENGL_VERSION2.1可选 4.3 / 3.3 / 2.1 / 1.1 / Software再重新链接。画面正常但没声音最可能的原因编译 raylib 时系统缺音频后端开发库音频代码没编进去。dpkg -l | grep -E libasound2-dev|libpulse-dev # Ubuntu/Debian修复sudo apt install libasound2-dev libpulse-dev后重新cmake --build build -j4 sudo cmake --install build。收尾自查头文件搜索路径已就位pkg-config --cflags raylib能给出 -I 位置驱动的 OpenGL 版本满足构建目标或已显式降级运行环境是真实显示会话非 SSH 空会话 / 无头远程桌面音频开发库在编译 raylib 之前就装好了版本怎么选 跑通后往哪走raylib OpenGL 版本对照版本线最低 OpenGL一句话特征6.x / 5.x / 4.x3.3完整 3D可出 Web / Android 构建3.x2.1基础 2D 3D 功能集大版本升级会带-WARNING-标记的 API 变更升级前翻一遍 CHANGELOG。examples/core/core_basic_window.c难度 ★1/4→ 窗口、清屏、文字与主循环的最小闭环examples/core/core_3d_camera_first_person.c难度 ★2/4→ 第一人称 3DWASD 移动加鼠标视角examples/models/models_textured_cube.c难度 ★2/4→ 纹理、材质与 3D 物体渲染环境搭完剩下的时间留给你自己的项目。【免费下载链接】raylibA simple and easy-to-use library to enjoy videogames programming项目地址: https://gitcode.com/GitHub_Trending/ra/raylib创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关推荐

c++构造函数问题
c++构造函数问题

在 C11 及之后的标准中,“五大成员函数”(对应著名的五法则 / Rule of Five)指的是负责管理对象生命周期与底层资源(如堆内存、文件描述符、网络套接字等)的五个特殊成员函数。这五个函数共同构成了 C 资源管理的基础&… · 2026/9/24 20:49:58

东莞GEO优化服务商筛选指南:深度测评与避坑框架
东莞GEO优化服务商筛选指南:深度测评与避坑框架

东莞GEO优化服务商怎么选:一份讲实话的深度测评与筛选框架这两年“GEO优化”这个词在东莞的老板圈子里越来越火,尤其是做外贸、做本地生活服务、做B2B工业品的朋友,几乎都被客户问过一句:“你们公司在AI里怎么搜不到?”… · 2026/9/24 20:49:58

shadcn-vue Context Menu 组件完整指南:从安装到源码级解析
shadcn-vue Context Menu 组件完整指南:从安装到源码级解析

shadcn-vue Context Menu 组件完整指南:从安装到源码级解析 【免费下载链接】shadcn-vue Vue port of shadcn-ui 项目地址: https://gitcode.com/gh_mirrors/sh/shadcn-vue 本文围绕 shadcn-vue(Vue 版 shadcn-ui)中的 Context Menu&a… · 2026/9/24 20:49:52

kernfs_create_root 函数
kernfs_create_root 函数

kernfs_create_root 创建并初始化kernfs_root结构体返回新创建并初始化的kernfs_root结构体(如 sysfs_root) · 2026/9/24 21:27:29

ChatGPT for Word免费版能用吗?安装方法、额度消耗和6个限制一次说清
ChatGPT for Word免费版能用吗?安装方法、额度消耗和6个限制一次说清

ChatGPT已经可以直接在Microsoft Word中使用,而且Free免费版也能安装。本文根据OpenAI最新官方说明,讲清安装入口、适用套餐、额度如何计算,以及当前必须注意的6个限制:它只能直接处理正在打开的文档,无法读取其他本地… · 2026/9/24 21:27:22

基于机器学习的入侵检测系统毕设实战:从NSL-KDD到XGBoost
基于机器学习的入侵检测系统毕设实战:从NSL-KDD到XGBoost

简介:这份资源是面向计算机、软件工程、人工智能、通信工程等专业学生的高分毕业设计参考包,主题为基于Python机器学习的入侵检测系统,适合用作毕设、课程设计、作业或项目初期立项演示,也便于初学者进阶学习。压缩包共23个文件&a… · 2026/9/24 21:27:16

光互联技术演进:OIO、OBO、NPO、CPO四种方案对比与选型指南
光互联技术演进:OIO、OBO、NPO、CPO四种方案对比与选型指南

1. 光互联技术演进的底层逻辑数据中心和AI算力集群的带宽需求,大概每两年就要翻一番。这个增速远超传统可插拔光模块的迭代节奏。我最早接触400G光模块的时候,觉得这已经是天花板了,结果不到三年,800G、1.6T的方案就铺天盖地地来了… · 2026/9/24 21:27:16

AI辅助Linux存储排查实战:从inode耗尽到MinIO部署
AI辅助Linux存储排查实战:从inode耗尽到MinIO部署

1. 项目概述:就当是请了个随叫随到的存储老工程师前阵子公司一台跑批任务的Linux服务器突然告警,/data分区使用率飙到97%,业务日志疯狂报错“No space left on device”。我按老套路登录上去先df -h看一眼,结果发现/data明明还剩1… · 2026/9/24 21:27:16

综合能源系统热电优化调度:阶梯碳交易与电制氢协同的Matlab实现
综合能源系统热电优化调度:阶梯碳交易与电制氢协同的Matlab实现

最近在做一个综合能源系统的热电优化调度项目,核心是研究阶梯式碳交易机制与电制氢(Power-to-Hydrogen,P2H)设备如何协同影响系统运行。这个方向在目前的能源系统优化里确实算一个研究热点,但很多论文讲模型讲得比较理… · 2026/9/24 21:27:16

基于YOLOv8的渔船作业监控系统:从环境搭建到边缘部署全流程
基于YOLOv8的渔船作业监控系统:从环境搭建到边缘部署全流程

简介:这是一套面向计算机、人工智能、自动化等专业学生与教师的毕业设计级项目资源,围绕YOLOv8实现渔船作业监控系统,可用于毕设、课程设计、大作业或项目立项演示。压缩包共97个文件,约24.21MB,以70个Python源码文件为… · 2026/9/24 0:00:13

1D-CNN时间序列建模实战:从Conv1d原理到工业落地
1D-CNN时间序列建模实战:从Conv1d原理到工业落地

简介:面向时间序列数据建模的一维卷积神经网络完整实现,适合深度学习入门者及需要快速验证时序模型的研究者,能够从音频、文本、传感器或股价等序列中挖掘局部特征与时间依赖。压缩包体积很小,只有3KB,内含3个Python脚… · 2026/9/24 0:00:26

柔软的L:汉语语流中被忽视的舌肌张力控制
柔软的L:汉语语流中被忽视的舌肌张力控制

1. 这个“L”不是字母表里的L,而是舌尖上的L最近在几个方言群和语音教学社群里,反复看到有人发一句:“也说字母L:柔软的长舌”。初看以为是英语发音课笔记,点开才发现全是方言爱好者、播音系学生、语言康复师甚至戏曲演… · 2026/9/24 0:00:44

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码