翻译:如何编译 Gunz 源代码
如何编译 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 源代码的更多相关文章
- 使用 IntelliJ IDEA 导入 Spark源码及编译 Spark 源代码
1. 准备工作 首先你的系统中需要安装了 JDK 1.6+,并且安装了 Scala.之后下载最新版的 IntelliJ IDEA 后,首先安装(第一次打开会推荐你安装)Scala 插件,相关方法就不多 ...
- Mac OS X上尝试编译CoreCLR源代码
CoreCLR登陆GitHub之后,体验CoreCLR首当其冲的方式就是在自己的电脑上编译它,昨天分别在Windows与Linux上成功编译了CoreCLR,详见: 1)Windows上成功编译Cor ...
- 编译Android源代码与内核总结
这些天花了些时间自己下载了android源代码来编译,当中走了一些弯路导致耗了些时间,如今又一次梳理总结下,让有同样想法的人自己编译的时候能少走些弯路,官方指导文档在http://source.and ...
- Linux 编译安装 源代码
编译安装 源代码包的安装一般为下载软件源代码,然后编译安装. 常见的C程序软件的安装步骤是 configure, make, make install三部曲,大致是下面这样操作: 首先得安装gcc.m ...
- CSDN开源夏令营 基于Compiz的switcher插件设计与实现之编译compiz源代码
在開始介绍之前先吐个嘈:上周我们暑期ACM集训開始了.平均下来基本上是一天一赛.有时还不止.又是多校联赛,又是CodeForces,又是TopCoder.又是BestCoder,又是AcDream.还 ...
- 编译JDK源代码【转】
用Eclipse Debug,当跟踪进jdk api里时(比如javax.swing包里的类),无法查看某些local filed的值.这是因为jdk里的代码在打包时删除了一些用于调试的信息,以减小安 ...
- cygwin下编译zlib源代码
本文介绍在cygwin下编译zlib源代码的方法步骤,这个过程尽管简单,但还是有一些须要注意的地方. zlib源代码下载地址: http://www.zlib.net/ 下载后.解压就会生成zlib- ...
- 2.2开源的魅力:编译opencv源代码
1.下载安装CMake 要在Windows平台下生成opencv的解决方案,需要一个名为CMake的开源软件.CMake的全称是crossplatform make.它是一个跨平台的安装(编译)工具, ...
- C语言学习013:通过make编译C源代码
编译多个C源代码文件 当程序文件越来越多,修改了其中的一部分代码文件,我们并不需要全部重新编译,只需要编译其中一部分就可以,下面我们创建了一个launch程序,除了主程序,我们创建了3个功能代码文件r ...
随机推荐
- 2015南阳CCPC C - The Battle of Chibi DP
C - The Battle of Chibi Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 无 Description Cao Cao made up a ...
- delphi 18 屏蔽和替换 右键菜单
//屏蔽右键菜单procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG; var Handled: Boolean);begin wi ...
- session销毁
session.invalidate(),session.invalidate的销毁是把这个session所带的用户彻底的销毁,这个session跟用户已经紧密联合在一起,所以就一起销毁了,这样就算换 ...
- c语言函数传递数组
1.传递数组,打印不出来 #include <stdio.h> void solve() { printf(]); } int main() { int i; ;i<n;i++) { ...
- oracle数据库元数据SQL查询
oracle数据库经典SQL查询 .查看表空间的名称及大小 select t.tablespace_name, round(sum(bytes/(1024*1024)),0) ts_size from ...
- Fliptile
开关题 尺度法 Fliptile Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 3394 Accepted: ...
- 前端必会html知识整理
1.浏览器内核: 1.ie:trident(三叉戟)内核 2.firefox:gecko(壁虎)内核 3.safari:webkit(浏览器核心)内核 ...
- javascript oop深入学习笔记(一)
一.定义和实例化一个类: 在OOP的思想中,类是一个很重要的元素,一个类表示了具有相似的一类事物的抽象,通过实例化一个类,可以获得属于该类的一个实例,我们也可以称之为对象. 在javascript中, ...
- android一些基础知识
android应用基于JAVA, 支持SQL,由于底层是LINUX,所以支持C/C++ 目前有两种编程:基于ADT的JAVA编程,基于NDK的C编程 Android编程环境需要哪些:官方推荐用JDK+ ...
- mysql由于外键关联无法删除数据
在mysql中删除一张表时候,出现 Error No. 1451 Cannot delete or update a parent row: a foreign key constraint fail ...