如何编译 Gunz 源代码

本文翻译自:How to build Gunz source code

各位好,近期 Dawson 发布了 Gunz 的源代码,所以我就来做个简单的教程,来说明如何编译 Gunz 项目。

前提条件:
- XP 专业版 SP3
- Microsoft Visual Studio 2003, 带有C++编译功能

编译过程:
1 下载 源代码
2 创建一个名为 Gunz 的文件夹。
3 在此文件夹中,解压 Gunz 的源码包,然后你会看到 Gunz下有一个名为 Stable 的文件夹。
4 在 Gunz 下创建一个名为 sdk 的文件夹。
5 在 sdk 中创建一个名为 crypto 的文件夹,这时,文件夹目录看起来是这样的:
./Gunz/Stable
./Gunz/sdk/crypto
6 下载 Crypto++ 5.2.3 Win32, SourceForge.Net
7 解压 crypto++ 到 文件夹 Cryptopp 中(在 Gunz 的外面)
8 拷贝 Cryptopp/Include 中的内容到这两个文件夹中:
Cryptopp/Source
GUnz/sdk/crypto
9 打开 Cryptopp 的项目文件:Crytopp/Source/cryptlib.vcproj
10 分别以 Debug 与 Release 模式,构建(Buid)工程。
11 重命名 Cryptopp/Source/Debug/cryptlib.lib 为 cryptlib2003d.lib
12 重命名 Cryptopp/Sourc/Release/cryptlib.lib 为 cryptlib2003.lib
13 拷贝 cryptlib2003d.lib 与 cryptopp.lib 到这两个目录下:
Gunz/Stable/cml/lib
Gunz/Stable/Gunz/LIB

注意:你可能会需要拷贝这个 .lib 文件到其他的目录中,如果你希望 编译/构建 (Build) MatchServer, Locator 等其他解决方案。
14 打开 Gunz 解决方案:Gunz/Stable/Gunz/Gunz.sln
15 在 Gunz 项目中,打开这个文件: Gunz/Game/ZGlobal.cpp ,将此行注释掉:
#include "SVNRevision/SVNRevision.cpp"
结果为: //#include "SVNRevision/SVNRevision.cpp";
再把这一行: return GlobalGetSVNRevision(); 替换为: return 0;
16 编辑资源文件: Gunz/Stable/Gunz/Gunz.rc, 找到这一行:
MANIFEST_RESOURCE_ID RT_MANIFEST "Runtime/Gunz.exe.manifest"
把它替换为(注释掉):
// MANIFEST_RESOURCE_ID RT_MANIFEST "Runtime/Gunz.exe.manifest"
然后保存文件。
17 现在,你应该可以 在 Debug 与 Release 模式下编译 Gunz 了,编译后的文件都在这个目录中:Gunz/Stable/Gunz/runtime

如果你在编译过程中遇到了什么问题, 不要哭着喊着来找我,自己搞定吧。

翻译:如何编译 Gunz 源代码的更多相关文章

  1. 使用 IntelliJ IDEA 导入 Spark源码及编译 Spark 源代码

    1. 准备工作 首先你的系统中需要安装了 JDK 1.6+,并且安装了 Scala.之后下载最新版的 IntelliJ IDEA 后,首先安装(第一次打开会推荐你安装)Scala 插件,相关方法就不多 ...

  2. Mac OS X上尝试编译CoreCLR源代码

    CoreCLR登陆GitHub之后,体验CoreCLR首当其冲的方式就是在自己的电脑上编译它,昨天分别在Windows与Linux上成功编译了CoreCLR,详见: 1)Windows上成功编译Cor ...

  3. 编译Android源代码与内核总结

    这些天花了些时间自己下载了android源代码来编译,当中走了一些弯路导致耗了些时间,如今又一次梳理总结下,让有同样想法的人自己编译的时候能少走些弯路,官方指导文档在http://source.and ...

  4. Linux 编译安装 源代码

    编译安装 源代码包的安装一般为下载软件源代码,然后编译安装. 常见的C程序软件的安装步骤是 configure, make, make install三部曲,大致是下面这样操作: 首先得安装gcc.m ...

  5. CSDN开源夏令营 基于Compiz的switcher插件设计与实现之编译compiz源代码

    在開始介绍之前先吐个嘈:上周我们暑期ACM集训開始了.平均下来基本上是一天一赛.有时还不止.又是多校联赛,又是CodeForces,又是TopCoder.又是BestCoder,又是AcDream.还 ...

  6. 编译JDK源代码【转】

    用Eclipse Debug,当跟踪进jdk api里时(比如javax.swing包里的类),无法查看某些local filed的值.这是因为jdk里的代码在打包时删除了一些用于调试的信息,以减小安 ...

  7. cygwin下编译zlib源代码

    本文介绍在cygwin下编译zlib源代码的方法步骤,这个过程尽管简单,但还是有一些须要注意的地方. zlib源代码下载地址: http://www.zlib.net/ 下载后.解压就会生成zlib- ...

  8. 2.2开源的魅力:编译opencv源代码

    1.下载安装CMake 要在Windows平台下生成opencv的解决方案,需要一个名为CMake的开源软件.CMake的全称是crossplatform make.它是一个跨平台的安装(编译)工具, ...

  9. C语言学习013:通过make编译C源代码

    编译多个C源代码文件 当程序文件越来越多,修改了其中的一部分代码文件,我们并不需要全部重新编译,只需要编译其中一部分就可以,下面我们创建了一个launch程序,除了主程序,我们创建了3个功能代码文件r ...

随机推荐

  1. Java中Scanner的使用方法

      Scanner是SDK1.5新增的一个类,但是使用该类创建一个对象.Scanner reader=new Scanner(System.in); 然后reader对象调用下列方法(函数),读取用户 ...

  2. Delphi 多文件拖放获取路径示例

    unit Unit1;interfaceuses  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, ...

  3. CreateProcess的使用方法

    使用编译器vs2008. 第一.第二个參数的使用方法: 样例: 使用ie打开指定的网页. 注意第二个參数是 可运行文件+命令行參数 #include "stdafx.h" #inc ...

  4. 空间的配置和释放 std::alloc

    看完了对象的构造行为和内存释放前的对象的析构行为,我们现在来看看内存的配置和释放. 对象构造前的空间分配和析构后的空间释放,定义在头文件<stl_alloc.h>中.其设计思想是: 向sy ...

  5. sql server where、group by、order by 执行顺序

    2012-02-07 19:39 先where 条件1,再 group by 条件2再 order by 条件3 如果声明了 GROUP BY 子句,输出就分成匹配一个或多个数值的不同组里. 如果出现 ...

  6. IE7下position:relative的问题

    如果在IE7中使用position:relative属性,需要在该元素的容器上,同时给予position:relative属性.

  7. SQL Server 之 在数据库之间进行数据导入导出

    1.同一服务器上数据库之间进行数据导入导出 (1).使用 SELECT INTO 导出数据 在SQL Server中使用最广泛的就是通过SELECT INTO语句导出数据,SELECT INTO语句同 ...

  8. Android 自学之网格试图(GridView)和图片切换器(ImageSwitcher)功能和用法

    网格试图(GridView)用于在界面上按行,列分布的方式来显示多个组件. GridView和ListView有共同的父类:AbsListView,因此GridView和ListView具有一定的相似 ...

  9. MSP430常见问题之AD转换类

    Q1:MSP430F149 AD 的输入阻抗有多大?A1:RC<2000欧*30PF Q2:MSP430 ADC12 模块的速度?A2: ADC12 的转换速率是转换所需的ADC12CLK 以及 ...

  10. 【简单dp+模拟】hdu-5375(2015多校#7-1007)

    给你一个二进制数,,每一位有一个权值,让你转格雷码,求所对应格雷码位为1的权值的和:二进制位中的某些位为?,你需要给这些问号赋值使得到的和最大. 首先你得知道二进制转格雷码的规则,即格雷码位为[二进制 ...