AzerothCore 编译与更新:从源码到运行的完整流程 原创

温馨提示:
本文最后更新于 2026-04-01,已超过 0 天没有更新。 若文章内的图片失效(无法正常加载),请留言反馈或直接 联系我

AzerothCore 作为一个开源的魔兽世界模拟器,经常会有版本更新和功能改进。很多新手在编译和更新时会遇到各种问题。本文将详细讲解从源码编译到更新的完整流程。

一、编译前准备

1.1 系统要求

推荐配置:

  • CPU: 4 核心或更多
  • 内存:8GB 或更多
  • 硬盘:100GB SSD
  • 系统:Ubuntu 22.04 LTS

1.2 安装依赖

# 更新系统
sudo apt-get update && sudo apt-get upgrade -y

# 安装编译工具
sudo apt-get install -y build-essential cmake git curl wget

# 安装 MySQL/MariaDB
sudo apt-get install -y mariadb-server mariadb-client libmariadb-dev

# 安装其他依赖
sudo apt-get install -y libssl-dev libreadline-dev zlib1g-dev libboost-all-dev

二、下载源码

# 创建目录
mkdir -p ~/azerothcore
cd ~/azerothcore

# 克隆仓库
git clone https://github.com/AzerothCore/azerothcore-wotlk.git --recursive

# 进入目录
cd azerothcore-wotlk

# 切换到稳定分支
git checkout master

三、编译 AzerothCore

3.1 创建编译目录

mkdir build
cd build

3.2 配置编译选项

cmake ../ \
  -DCMAKE_INSTALL_PREFIX=../dist \
  -DTOOLS=1 \
  -DWITH_WARNINGS=1 \
  -DCMAKE_BUILD_TYPE=Release

3.3 开始编译

# 使用所有 CPU 核心编译
make -j$(nproc)

# 编译时间参考:
# 2 核心:约 60-90 分钟
# 4 核心:约 30-45 分钟
# 8 核心:约 15-25 分钟

四、数据库配置

# 导入数据库
mysql -u root -p < create_databases.sql

# 导入 auth 数据库
mysql -u root -p auth < auth_db.sql

# 导入 characters 数据库
mysql -u root -p characters < characters_db.sql

# 导入 world 数据库(这个最大,需要较长时间)
mysql -u root -p world < world_db.sql

五、运行服务器

# 启动认证服务器
./authserver &

# 等待 3 秒
sleep 3

# 启动世界服务器
./worldserver &

六、更新 AzerothCore

# 停止服务器
kill $(cat authserver.pid)
kill $(cat worldserver.pid)

# 拉取最新代码
git pull origin master

# 重新编译
cd build
make -j$(nproc)
make install

# 更新数据库
cd ../dist/etc/db/updates/
for file in $(ls -v *.sql); do
    mysql -u root -p world < $file
done

# 重启服务器
./start.sh

总结

编译和更新 AzerothCore 的完整流程:

  1. 准备环境:安装依赖,创建用户
  2. 下载源码:克隆仓库,更新子模块
  3. 编译安装:CMake 配置,make 编译
  4. 数据库配置:导入数据,应用更新
  5. 运行服务器:创建脚本,启动服务
  6. 定期更新:备份,拉取,重编译

温馨提示: 编译过程需要较长时间,请确保服务器稳定运行。