如何编译YGOPRO THC
本帖最后由 Firce777 于 2017-12-29 20:07 编辑恋恋日后发现,APPVEYOR每次编译都要重新跑整个过程,这样的话真的不如直接在本地跑YGOPRO THC的编译。这里恋恋教大家怎么在自己的电脑上编译YGOPRO THC~
首先呢,我们需要找齐编译所需要的软件,总共有2个是必须装的。
1. Visual Studio 2015或者Microsoft Build Tools 2015(推荐前面),理论上2017也可以,但是恋恋没有尝试过。专业版:http://download.microsoft.com/download/B/8/9/B898E46E-CBAE-4045-A8E2-2D33DD36F3C4/vs2015.pro_chs.iso激活密钥:HMGNV-WCYXV-X7G9W-YCX63-B98R2
企业版:http://download.microsoft.com/download/B/8/F/B8F1470D-2396-4E7A-83F5-AC09154EB925/vs2015.ent_chs.iso激活密钥:HM6NR-QXX7C-DFW2Y-8B82K-WTYJV
Build Tools下载:https://download.microsoft.com/download/E/E/D/EEDF18A8-4AED-4CE0-BEBE-70A83094FC5A/BuildTools_Full.exe
2. DirectX SDK
https://download.microsoft.com/download/A/E/7/AE743F1F-632B-4809-87A9-AA1BB3458E31/DXSDK_Jun10.exe
选装的软件就是Git了,会用Git的话获取以后的THC的更新会容易一些,THC所有的数据全部挂在GitHub上面托管的。不需要Git其实也能完成编译,只是版本有点麻烦而已。
需要装的软件就这么多,接下来是正文~~
①:下载THC的源码。
https://github.com/purerosefallen/ygopro-222DIY/archive/local-thc.zip如果之前会用Git的也可以直接clone这个repo的local-thc分支。
②:安装一些YGOPRO THC的依赖。
https://github.com/premake/premake-core/releases/download/v5.0.0-alpha12/premake-5.0.0-alpha12-windows.zip解压之后获得一个premake5.exe,扔进源码的文件夹里面备用。
https://github.com/libevent/libevent/releases/download/release-2.0.22-stable/libevent-2.0.22-stable.tar.gz使用7-zip等工具来解压,解压之后把解压出来的libevent-2.0.22-stable目录重命名为event,然后把里面的WIN32-Code复制一份变成include。
http://downloads.sourceforge.net/freetype/freetype-2.8.1.tar.bz2把解压出来的目录重命名为freetype即可。
http://downloads.sourceforge.net/irrlicht/irrlicht-1.8.4.zip这一包比前几包麻烦一点,解压之后,在源码目录里面创建一个新的文件夹irrlicht,然后把irrlicht-1.8.4\source\Irrlicht复制到irrlicht里面,重命名为src。然后把irrlicht-1.8.4\include复制到irrlicht里面。(还没完,下面还有)
https://www.lua.org/ftp/lua-5.3.4.tar.gz解压之后把src文件夹复制到源码目录,然后重命名为lua。
这里恋恋有必要说明一下。YGOPRO THC的源码的一部分遵循恋恋的YGOPRO体系,使用的lua库和原版不同(原版是5.2.4),并且不通用。如果后面编译出错要检查下lua库有没有下错。用之前编译别的YGOPRO的材料编译THC是不可以的。
https://www.sqlite.org/2017/sqlite-amalgamation-3210000.zip把解压出来的目录重命名为sqlite3即可。
http://www.ambiera.at/downloads/irrKlang-32bit-1.5.0.zip把解压出来的目录重命名为irrklang即可。然后把这个目录下面的bin目录里面的irrKlang.dll和ilpMP3.dll复制出来以后运行THC的时候要用到。
③:编译之前的准备。
把上面的包搞完之后,差不多就可以完成了,但是还需要几步准备。
把源码目录的premake目录的所有内容复制到上一个目录,也就是源码目录下面。(别问irrKlang.7z这个带密码的压缩包是干什么的,那是恋恋的小秘密~~)
然后呢,irrlicht的文件夹里面有一点点小问题,需要更正一下。使用patch程序(Git里面会自带,没有的话去网上找一个扔进去也可以)修改一下irrlicht的源码。具体方法是,打开命令提示符或者Bash,运行以下命令。
patch -p0 < irrlicht\irrlicht.patch之后呢,刚刚看到的premake5就有用了。在命令提示符运行以下命令。
premake5 vs2015编译的准备工作就到此为止了。顺便如果想修改编译出来的程序的图标,可以替换gframe里面的ygopro.ico文件。
④:编译YGOPRO THC
如果①②③已经完成了,那么接下来应该会很顺利。
使用Visual Studio 2015的,直接打开build的ygo.sln生成ygopro项目即可,别忘了把屏幕最上面的Debug改成Release。
使用Build Tools的,输入以下命令即可。
msbuild build/ygo.sln /m /property:Configuration=Release如果感觉哪里不对劲,觉得需要完全重新编译的话,可以使用下面这个命令。
msbuild build/ygo.sln /m /property:Configuration=Release /t:Rebuild如果编译成功的话,就去bin/release/ygopro.exe收货自己做的THC。
(第1名做好的可以截图,来THC群找恋恋。恋恋会告诉你那个7z文件到底是什么,肯定是好东西啦。)
如果编译出问题,分以下几种情况。
1. 在OCGCORE部分报错的,注意检查一下lua的版本,以及是否包含LUA_COMPAT_5_2这个宏,恋恋之前在premake5.lua里面写了的。如果发现不在,那么自己加上去。
2. 在LINK的时候报错的,把irrKlang目录删掉重新做一遍(看上面)。
3. 在irrlicht部分报错提示缺少d3dx......h的,检查下DirectX SDK安装好了没,并重启下电脑试试。
4. 其他报错的,来THC群里问恋恋吧,恋恋也不知道大家可能会遇到什么问题。
好完整.....辛苦了 ·。·先咕为敬
页:
[1]