EbitenCookBook中文教程 第一课:安装 Ebiten
本文实时更新原址:https://ebitencookbook.vercel.app/docs/CookBook_Start/class1
第一课 安装 Ebiten
欢迎大家来到 Ebiten 中文教程.
今天我们正式开始学习Ebiten的开发.
安装开发环境
也可以参照官方教程(中文文档): https://ebiten-zh.vercel.app/documents/install.html
1. 安装操作系统
没有的话建议remake.
2. 安装依赖
使用Windows系统的朋友请直接跳到下一步.
FreeBSD 比较特殊,需要先安装桌面环境,详情见官方教程.
C编译器
macOS,Linux,FreeBSD需要先安装C编译器(基本上使用gcc)
macOS
据说在最新的MacOS上,在命令行输入clang后,如果没有C编译器,系统会引导您安装.
其他版本的MacOS还可以通过brew install gcc安装.
:::important
如果在安装时报出以下错误:
xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun
可以通过运行 xcode-select --install 来安装.
:::
Linux
以Linux发行版Ubuntu为例,运行:
sudo apt install gcc
其他发行版请使用各自的包管理器或源码安装gcc.
FreeBSD
如果使用pkg作为包管理器,就运行:
pkg install clang
当然也可以源码安装.
安装其他依赖
Linux 发行版
Debian/Ubuntu
sudo apt install libc6-dev libglu1-mesa-dev libgl1-mesa-dev libxcursor-dev libxi-dev libxinerama-dev libxrandr-dev libxxf86vm-dev libasound2-dev pkg-config
Fedora
sudo dnf install mesa-libGLU-devel mesa-libGLES-devel libXrandr-devel libXcursor-devel libXinerama-devel libXi-devel libXxf86vm-devel alsa-lib-devel pkg-config
Solus
sudo eopkg install libglu-devel libx11-devel libxrandr-devel libxinerama-devel libxcursor-devel libxi-devel libxxf86vm-devel alsa-lib-devel pkg-config
Arch
sudo pacman -S mesa libxrandr libxcursor libxinerama libxi pkg-config
Alpine
sudo apk add alsa-lib-dev libx11-dev libxrandr-dev libxcursor-dev libxinerama-dev libxi-dev mesa-dev pkgconf
FreeBSD
pkg install alsa-lib libxcursor libxi libxinerama libxrandr mesa-libs pkgconf
3. 安装Golang
没有的话还是建议remake.
如果还没安装的话,可以到golang.google.cn/dl(国内镜像)或go.dev/dl(全球)下载.
建议直接装最新版本,因为 Ebiten 向上兼容.
:::important
Ebiten v2.2.5 要求最低Go版本: 1.15.
:::
如果您在控制台(CMD或bash等)输入 go version 后,命令行输出类似以下的内容,证明Golang安装成功.
$ go version
go version go1.17.5 windows/amd64
4. 下载Ebiten库
:::important
如果您在中国大陆地区,可以使用goproxy.cn提供的国内代理加速.
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct
:::
运行以下指令:
go get github.com/hajimehoshi/ebiten/v2
:::note
这里一定不要漏掉最后的v2,否则会安装Ebiten v1.12.
:::
5. 测试安装
运行以下指令,测试安装是否成功.
go run -tags=example github.com/hajimehoshi/ebiten/v2/examples/rotate
当你的屏幕上出现了一个窗口,并显示下面这幅图片,证明Ebiten安装成功并可以成功编译运行example/rotate.

!end time: 2022-04-03 23:50
EbitenCookBook中文教程 第一课:安装 Ebiten的更多相关文章
- OpenCV 第一课(安装与配置)
OpenCV 第一课(安装与配置) win10,opencv-2.4.13, 安装, vs2013, 配置 下载安装软件 官网OpenCV下载地址下载最新版本,我下载的是opencv.2.4.13,然 ...
- [原创]零基础R语言教程---第一课---认识R语言
教程的录制的确是折腾了一番,一连录了二十多遍,有时候激动的说错了字,有时候不知道下一句说啥.. 不过好在第一课已经搞定了,哈哈. 虽然内容现在看起来还有点简单, 不过牛b也是一个过程嘛. 我会坚持下去 ...
- C++自学教程第一课——你好世界,我是柠檬鲸。
C++系列教程现在在自己学校的一个博客平台发布,几个朋友一起搭建的 [C++基础教程系列](https://blog.ytmaxoj.org/cpp_basic_liuary-0/) 下面是原来的正文 ...
- Nehe OpenGL教程第一课-创建一个OpenGL窗口(Win32)
原文英文地址为:Creating an OpenGL Window (Win32),翻译的chm中文格式文档下载地址为:OpenGL教程电子书(chm格式)中文版,源代码在官网上也可以下载到,每 ...
- CodeIgniter框架入门教程——第一课 Hello World!
本文转载自:http://www.softeng.cn/?p=45 今天开始,我将在这里连载由我自己编写的<CodeIgniter框架入门教程>,首先,这篇教程的读着应该是有PHP基础的编 ...
- NeHe OpenGL教程 第一课:OpenGL窗口
转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...
- Android OpenGL教程-第一课【转】
第一课 快速的开始一个Android OpenGL项目 首先,读懂我们的教程,需要有android的初步基础,我们这里只是通过android提供的SDK,来进行OpenGL的学习,所以你必须先学习如何 ...
- [nRF51822 AK II 教程]第一课,开发环境的配置及背景介绍【转】
低功耗蓝牙4.0是全新的技术,并不向下兼容,也就是说它和蓝牙3.0.2.0什么的都不能通信的.另外,蓝牙4.0目前的规范只能做外设和主机(智能手机,电脑等)通讯,也就是说你想用一个单模的蓝牙4.0开发 ...
- 第一课 安装wamp环境
1.准备 怎样选择PHP的版本 IIS 如果想使用IIS配置PHP的话,那么需要选择Non-Thread Safe(NTS)版本的PHP Apache 如果你是用的Apache的版本来自Apache ...
随机推荐
- think php 修改页面
表单页面 <a href="/examtest/test/edit/id/{$v['id']}">修改</a> <a href="/exam ...
- VUE npm run build的项目出现跨域请求的问题npm run dev没有这个问题
报错信息 Access to XMLHttpRequest at 'http://platformapi-test.lih-elearning.cn/api/v1/login' from origin ...
- 手写 Vue 系列 之 从 Vue1 升级到 Vue2
前言 上一篇文章 手写 Vue 系列 之 Vue1.x 带大家从零开始实现了 Vue1 的核心原理,包括如下功能: 数据响应式拦截 普通对象 数组 数据响应式更新 依赖收集 Dep Watcher 编 ...
- C++中如何可以修改const函数内的成员变量的值?
呵呵,你使用mutable关键字来定义变量就可以了.下面举例说明 C++关键字mutable Mutable (1)mutable的意思是"可变的,易变的",跟C++中的const ...
- Dapr 官方文档中文翻译 v1.5 版本正式发布
作者:敖小剑 - Dapr Approver 经过 Dapr 中国社区十余位贡献者一个多月的努力,Dapr 官方文档中文翻译 v1.5 版本完成翻译和审校,正式发布并上线 Dapr 官网. 访问方式 ...
- 通过blacklist来禁用驱动
blacklist黑名单 我们在linux中安装驱动,有时会遇到受限或冲突,通常解决方式都是要修改blacklist.conf.对内核模块来说,黑名单是指禁止某个模块装入的机制 在 /etc/modp ...
- python练习册 每天一个小程序 第0011题
1 # -*-coding:utf-8-*- 2 3 4 def test(content): 5 flag = 0 6 with open('filtered_words.txt') as fp: ...
- sql注入mysql注入
#跨库查询及应用思路 information_schema表特性,记录数据库名.表名.列名对应表 information_schema.schemata:存储所有数据库名 schema_name:数据 ...
- netcore后台任务注意事项
开局一张图,故事慢慢编!这是一个后台任务打印时间的德莫,代码如下: using BackGroundTask; var builder = WebApplication.CreateBuilder() ...
- React优点?
声明式, 组件化, 一次学习, 随处编写. 灵活, 丰富, 轻巧, 高效