首页 | 乐园 | 淘宝店 | 社区 | 电驴 | 网页游戏 | 网址大全

VeryCD / 社区 / 微软爱好者

资源管理小组

相关主题

正在读取……

主题: 应用软件 visual 2003下如何编译emule(非verycd版)0.49a版

相关分类: 应用软件

wusun_008 (楼主) 2008/07/29 09:54:19 顶楼 举报

电驴资源

[资源名称]---
[资源类型]---
[资源语言]---
[杀毒状况]---
[共享时间]---
[安装测试]---如,在WindowsXP SP2中文版安装测试通过
[版权声明]---软件版权归原作者及原软件公司所有,如果你喜欢,请购买正版软件
[相关图片]
[资源介绍]


编译0.49a成功,与编译0.47a基本相同,四个开源的库也是一致的,所以在配置工程连接输入路径时一定要正确配置,还有就是所有工程全部用/MTD方式编译,都要用相应的DEBUG模式,因为是为了学习和研究,所以不提供relase的配置了。
先下载下面4个库:
Crypto++ 5.2.1
http://www.eskimo.com/~weidai/cryptopp521.zip (http://www.eskimo.com/~weidai/cryptopp521.zip)
zlib123.zip
http://www.zlib.net/zlib123.zip (http://www.zlib.net/zlib123.zip)
ResizableLib 1.3
http://prdownloads.sourceforge.net/resizab...download
lpng128
http://download.sourceforge.net/libpng/lpng128.zip
eMule v0.49a的源代码:
http://prdownloads.sourceforge.net/emule/e...rces.zip

1.eMule0.49a-Sources.zip解压到 eMule0.49a-Sources ->把下载的东东都放进去->打开eMule0.49a-Sources文件夹,所有的附加包都按照下述命名要求放入sources文件夹中,和srchybrid同级。
所有的工程都用Multi-threaded(/MT) 编译模式
2.cryptopp521.zip解压到 cryptopp521 ->重命名为crypto51
打开 crypto51\cryptest.dsw
点生成 -> 生成解决方案
编译模式:Debug模式
3.zlib123.zip解压到 zlib123 ->重命名为zlib
打开 zlib\projects\visualc6\zlib.dsw
点生成 -> 配置管理器 ->活动的解决方案配置 ->LIB Debug
解决方案资源管理器 -> 右击 "zlib" ->属性 ->配置属性->C/C++->代码生成->运行时库->多线程调试(/MTd)
点生成 -> 生成解决方案
编译模式: LIB_DEBUG模式
4.ResizableLib_1_3.zip解压到当前文件夹
打开 ResizableLib\ResizableLib.dsw
点项目->属性 ->配置属性 ->常规->MFC的使用->在静态库中使用 MFC
点项目->属性 ->配置属性 ->常规->字符集->使用 Unicode 字符集
点项目->属性 ->配置属性 ->C/C++->代码生成->运行时库->多线程调试(/MTd)
点项目->属性 ->配置属性 ->C/C++->语言->将 wchar_t 视为内置类型->是(/Zc:wchar_t)
点生成 -> 生成解决方案
编译模式: DEBUG Static模式
5.lpng128.zip解压到当前文件夹->重命名为png
打开 png\projects\visualc6\libpng.sln
点生成 -> 配置管理器 ->活动的解决方案配置 ->LIB Debug
解决方案资源管理器 -> 右击 "libpng" ->属性 ->配置属性->C/C++->代码生成->运行时库->多线程调试(/MTd)
点生成 -> 生成解决方案
编译模式: LIB_DEBUG模式
6.打开 id3lib\libprj\id3lib.sln
点生成 -> 生成解决方案
编译模式:Debug模式
7.打开 srchybrid\lang\lang.sln
点生成 -> 生成解决方案 /*可能会出现‘ 非法操作‘ 不管它*/
8.打开 srchybrid\CxImage\cximage.sln
点生成 -> 生成解决方案
编译模式:Debug模式
9.打开 srchybrid\emule_vc71.sln
点项目->属性 ->配置属性 ->链接器 ->输入->附加依赖项->
version.lib
winmm.lib
ws2_32.lib
gdiplus.lib
ADSIId.lib
crypt32.lib
..\zlib\projects\visualc6\Win32_LIB_Debug\zlibd.lib
..\crypto51\debug\cryptlib.lib
..\id3lib\prj\debug\id3lib.lib
.\CxImage\debug\cximage.lib
..\png\projects\visualc71\Win32_LIB_Debug\libpngd.lib
..\ResizableLib\Debug_Static\ResizableLib.lib
(注意上面的路径和自己编译出来的库名可能会有一部分不相符,要注意哦!自己好好核对,把附加库的路径和名字都写对了!)
编译模式:Debug模式

到这里应该是可以编译成功的,但是我碰到过这种情况
MSVCRTD.lib(MSVCR71D.dll) : error LNK2005: _malloc 已经在 libcmtd.lib(dbgheap.obj) 中定义
。。。。
。。。
。。

这种情况下
点项目->属性 ->配置属性 ->链接器 ->输入->忽略指定库->msvcrtd。
再次编译,可以完成

参看
http://blog.csdn.net/supperman_009/archive...934.aspx (http://blog.csdn.net/supperman_009/archive/2006/09/06/1185934.aspx)
2008-07-28



patrike

分享到开心网  分享到校内  收藏到QQ书签    订阅本主題RSS更新  美味书签

2008/08/18 18:58:59wwwpc119 最后编辑 | 查看全部

wwwpc119 (组长) 2008/07/30 11:30:57 2楼 举报

谢谢分享 幸苦了 没事常来玩哦


[0] [0] [回复]


返回组首页


您可能需要登录以后才能回复!

关于我们 | 诚聘英才 | 著作权声明 | 合作信息 | 广告事务
沪ICP备05001009号
©2003 - 2009 VeryCD.com Some Rights Reserved.