如何构建 Dora SSR 引擎本页总览如何构建 Dora SSR 引擎 1. 获取项目源码 GitHubGiteeGitCodegit clone https://github.com/ippclub/Dora-SSR.gitgit clone https://gitee.com/ippclub/Dora-SSR.gitgit clone https://gitcode.com/ippclub/Dora-SSR.git 2. 构建游戏引擎运行时 请选择你想要构建的目标平台。 WindowsmacOSiOSAndroidLinux 安装 Rust、xmake,以及带有 MSBuild 工具的 Visual Studio Community 2022。 先构建 bgfx 依赖库,这一步与 GitHub Actions 保持一致。 Tools\build-scripts\build_lib_bgfx_windows.bat 构建 Windows 运行时与解决方案。 Tools\build-scripts\build_windows.bat 如果需要本地调试,可在 Visual Studio 中打开 Projects/Windows/Dora.sln,运行 Debug 配置。 安装 Rust、xmake 和最新版 Xcode。 先构建 bgfx 依赖库,与 CI 流程保持一致。 Tools/build-scripts/build_lib_bgfx.sh macos 生成 Lua 绑定。 cd Tools/tolua++./build.sh 为 macOS 构建 Rust 运行时并复制静态库。 cd Source/Rustrustup target add x86_64-apple-darwincargo build --target x86_64-apple-darwincp target/x86_64-apple-darwin/debug/libdora_runtime.a lib/macOS/libdora_runtime.a 本地构建并运行应用。 xcodebuild ARCHS=x86_64 ONLY_ACTIVE_ARCH=NO -project Projects/macOS/Dora.xcodeproj -target Dora -configuration Debug 如果需要 IDE 调试,可在 Xcode 中打开 Projects/macOS/Dora.xcodeproj,运行 Dora target。 安装 Rust、xmake 和最新版 Xcode。 先构建 bgfx 依赖库。 Tools/build-scripts/build_lib_bgfx.sh ios 生成 Lua 绑定。 cd Tools/tolua++./build.sh 为 iOS 模拟器构建 Rust 运行时。 cd Source/Rustrustup target add aarch64-apple-ios-simcargo build --target aarch64-apple-ios-simcp target/aarch64-apple-ios-sim/debug/libdora_runtime.a lib/iOS-Simulator/libdora_runtime.a 构建模拟器目标。 xcodebuild ARCHS=arm64 ONLY_ACTIVE_ARCH=NO -project Projects/iOS/Dora.xcodeproj -configuration Debug -target Simulator -sdk iphonesimulator 如果需要 IDE 调试,可在 Xcode 中打开 Projects/iOS/Dora.xcodeproj,运行 Simulator target。 提示Android 本地构建除了 Android Studio 外,还需要 JDK 17。 安装 Rust、xmake 和最新版 Android Studio。 先手动生成 Lua 绑定。 # 在 Ubuntu 系统上构建sudo apt-get install lua5.1sudo apt-get install -y luarockssudo luarocks install luafilesystemcd Tools/tolua++lua tolua++.lua# 在 macOS 系统上构建cd Tools/tolua++./build.sh# 在 Windows 系统上构建cd Tools\tolua++build.bat 构建 Android 平台的 bgfx 依赖库。 Tools/build-scripts/build_lib_bgfx.sh android 构建 Android 各 ABI 对应的 Rust 运行时。 Tools/build-scripts/build_lib_android.sh 本地构建 Android 应用。 cd Projects/Android/Dora./gradlew assembleDebug 如果需要 IDE 调试,可在 Android Studio 中打开 Projects/Android/Dora,运行 app 模块。 提示Linux 本地构建还会用到 pkg-config 以及 dbus-1 的开发包;通常桌面版 Linux 环境已经安装好它们,一般不需要额外处理。 安装 Rust 和 xmake。 Ubuntu/DebianArch Linux 安装依赖包。 sudo apt-get updatesudo apt-get install -y libsdl2-dev libgl1-mesa-dev libssl-dev libx11-dev lua5.1 luarocks 手动生成 Lua 绑定。 sudo luarocks install luafilesystemcd Tools/tolua++lua tolua++.lua 安装依赖包。 sudo pacman -S lua51 luarocks sdl2 openssl gcc make cmake --needed# 因为lua的版本必须是5.1,你需要使用lua5.1而不是最新的lua# 最简单的方法是用ln创建一个软链接sudo ln -s /usr/bin/lua5.1 /usr/local/bin/lua 手动生成 Lua 绑定。 sudo luarocks --lua-version 5.1 install luafilesystemcd Tools/tolua++lua5.1 tolua++.lua 构建 bgfx 依赖库,这一步与 Linux GitHub Action 保持一致。 cd Source/3rdParty/bgfxxmake f -p linux -a x86_64 -m release -yxmake -v 构建 Rust 运行时。 在 x86_64 架构上Tools/build-scripts/build_lib_linux_x86_64.sh 在 ARM64 架构上Tools/build-scripts/build_lib_linux_aarch64.sh 运行编译脚本。 进行首次编译 在 ARM 架构上cd Projects/Linuxmake arm 在 x86_64 架构上cd Projects/Linuxmake x86_64 进行后续增量编译 cd Projects/Linuxmake 运行生成的软件。 cd Assets../Projects/Linux/build/dora-ssr# 或者用命令行参数指定资源目录./Projects/Linux/build/dora-ssr --asset Assets 3. 构建 Web IDE 编译并运行 Dora SSR 引擎。 安装最新版的 Node.js 和 pnpm。 初始化项目并进入 Dora Dora 编辑器开发模式。 请选择你在进行 Web IDE 开发的平台。 macOSLinuxWindowscd Tools/dora-dora && pnpm installpnpm build-yarn-editorpnpm start 或者你可以直接生成完整 Dora SSR 项目的 Web IDE 发布文件。pnpm build 现在会自动完成 YarnEditor 的构建与复制,并将最终 Web IDE 构建结果同步到 Assets/www。# `pnpm build` 还会自动把最终构建结果同步到 Assets/wwwcd Tools/dora-dorapnpm buildcd Tools/dora-dora && pnpm installpnpm build-yarn-editorpnpm start 或者你可以直接生成完整 Dora SSR 项目的 Web IDE 发布文件。pnpm build 现在会自动完成 YarnEditor 的构建与复制,并将最终 Web IDE 构建结果同步到项目下的 Assets/www 目录。cd Tools/dora-dorapnpm buildcd Tools\dora-dora && pnpm installpnpm build-yarn-editorpnpm start 或者你可以直接生成完整 Dora SSR 项目的 Web IDE 发布文件。pnpm build 现在会自动完成 YarnEditor 的构建与复制,并将最终 Web IDE 构建结果同步到 Assets/www。# `pnpm build` 还会自动把最终构建结果同步到 Assets/wwwcd Tools\dora-dorapnpm build