VS2010编译FileZilla Server源代码

编译FileZilla Server过程,希望其他人不要走弯路
首先下载相关的文件:
1、FileZilla_Server-0_9_41.exe
2、 zlib-1.2.5.rar
3、tinyxml_2_6_2.zip(这个不用下了,0.9.41里面有)
安装FileZilla_Server-0_9_41.exe时,选择Source Code,如下图(转载的图,版本不对,参考下,不影响):

将相应的文件解压缩,放置在E:\FileZilla目录下:


使用VS2010编译Boost库:(注:0.9.41已经移除了对Boost库的依赖,可以不用编译了)

cd E:\FileZilla\boost_1_47_0\tools\build\v2
bootstrap.bat
copy bjam.exe E:\FileZilla\boost_1_47_0\
cd E:\FileZilla\boost_1_47_0\
bjam --prefix=E:\FileZilla\boost  --build-type=minimal  toolset=msvc  install
会在E:\FileZilla\boost 目录下生成Boost库文件。

使用VS2010编译zilb和FileZilla的源码,由于官方是用的VS2008,都会提示转换的,装转换就行了

使用VS2010编译Zib库: 
用vs2010 打开E:\FileZilla\zlib-1.2.5\old\visualc6目录下的zlib.dsp
项目属性-配置属性-C/C++-代码生成-运行库  设置成/MT(很重要)
分别生成,选择LIB Debug 和 LIB Release,会在E:\FileZilla\zlib-1.2.5\old\visualc6目录下生成相应的文件 

现在可以用VS2010打开 FileZilla server.sln 项目文件了,打开时会提示找不到GFTP项目,可以忽略。

 将Service设为启动项目;

项目属性-配置属性-C/C++-常规-附加包含目录:"E:\FileZilla\zlib-1.2.5"False
通常属性-框架和引用-Copy Local 设置成false

将E:\FileZilla\zlib-1.2.5\old\visualc6\Win32_LIB_Debug\zlibd.lib 拷贝到根目录(E:\FileZilla\source)下
将E:\FileZilla\zlib-1.2.5\old\visualc6\Win32_LIB_Release\zlib.lib 拷贝到根目录(E:\FileZilla\source)下

设置 项目属性-配置属性-链接器-输入-附加依赖项:atlsd.lib
在release模式下 查看项目属性-配置属性-链接器-输入-附加依赖项 中是否有zlibd.lib,有的话删除并添加zlib.lib

现在应该可以编译运行了。

编译时如果有提示 libcmtd.lib定义冲突 设置:项目属性-配置属性-链接器-输入-忽略特定的库:libcmtd.lib

编译过的源码 下载


你可能感兴趣的:(c/c++)