-
Notifications
You must be signed in to change notification settings - Fork 596
Windows上编译
-
YGOPro发行版
用以获取卡片数据库和卡图,其中数据库是必备的
-
VS2015及以上版本理论上可以用,安装时选中使用 C++ 的桌面开发
-
并且拥有github账号和SSH的key
-
项目有两种描述文件premake和cmake,但cmake近期无人维护
依赖库的安装目前在windows上没有成熟的解决方案,所以建议手工下载源代码并静态编译
-
只有这个版本被测试过,新的版本可能可以用
-
只有这个版本被测试过,暂时不建议使用新的版本
-
只有这个版本被测试过,而且需要打中文支持的补丁才能用
-
不支持5.2及更早的版本
-
非开源,下载32位版,可在premake5.lua中修改
USE_IRRKLANG
来禁用,结果就是没有声音
使用git clone
即可,clone时加--recursive
来同时克隆子模块,或者完成后运行git submodule update --init
clone完成后需要分别进入ocgcore
和script
两个子模块文件夹checkout到master分支
具体命令:
git clone git@github.com:Fluorohydride/ygopro.git
cd ygopro
git submodule update --init
cd ocgcore/
git checkout master
cd ..
cd script/
git checkout master
cd ..
-
将下载的libevent解压到项目文件夹,重命名为
event
-
将下载的freetype解压到项目文件夹,重命名为
freetype
-
将下载的irrlicht解压到项目文件夹,重命名为
irrlicht
-
将下载的irrKlang解压到项目文件夹,重命名为
irrKlang
-
将下载的lua解压到项目文件夹,重命名为
lua
-
将下载的sqlite解压到项目文件夹,重命名为
sqlite3
(注意有个3) -
将premake文件夹内所有文件夹复制到项目文件夹,其中包含了各个依赖库的premake描述文件,可以自行修改完善
原版irrlicht不支持中文复制粘贴,不支持输入法,需要打补丁,进入irrlicht文件夹运行
patch -p1 < irrlicht.patch
也可以直接使用修改好的版本
安装premake5.exe并添加到PATH,或者直接放到项目文件夹,然后运行
premake5 vs2022
就可以用VS打开build文件夹里的YGOPro.sln解决方案并编译了
此时目录结构省略多余文件后应该看起来是这样:
├─bin
├─build
├─cmake
├─event
│ └─include
├─freetype
│ ├─include
│ └─src
├─gframe
├─irrKlang
│ ├─bin
│ ├─include
│ └─lib
├─irrlicht
│ ├─include
│ └─source
│ └─Irrlicht
├─lua
│ └─src
├─ocgcore
├─premake
├─script
├─sound
├─sqlite3
└─textures
从发行版里把cards.cdb
和pics
文件夹和deck
文件夹和replay
文件夹复制到项目根目录
把irrklang的3个dll从irrklang\bin\win32-visualStudio
复制到项目根目录
然后将bin\release
或bin\debug
里生成的ygopro.exe
复制到项目根目录即可运行
也可以在VS中指定工作目录为你正在使用的YGOPro目录以便直接调试
irrKlang是商业软件,但其所有功能都是免费的,只是免费版发布的时候必须带dll不能静态编译,所以没必要使用它的pro版
如果一定要用pro版,购买后可以把plugins里的ikpMP3一起编译了,具体过程略
但在VS中调试时要用免费版的lib,pro版的lib不支持调试