然后,regexp用到了boost第三方包,这里面有很多公用的C++组件,下载地址:
http://internap.dl.sourceforge.net/sourceforge/boost/boost_1_33_1.zip
解开后,在cmd下,
第一步:需要编译bjm,这是编译boost的编译器,晕
cd boost_1_33_1\tools\build\jam_src
build.bat
在当前的bin.ntx86目录下,生成了bjam.exe文件。
第二步:编译boost
cd boost_1_33_1
将刚才生成的bjam.exe拷过来
set VC7_ROOT="C:\Program Files\Microsoft Visual Studio.NET 2003\Vc7"
bjam "-sTOOLS=vc7" install
这个步骤需要很久时间,其时我们只用了里面的regexp包,应该可以只编译这个包,但我没细研究。
编译完成后即在C盘根目录下生成了boost目录,这个目录下面.net工程要用到。
在.net工程里,工具|选项|项目|VC++目录,添加
可执行文件:zlib123\projects\visualc6\Win32_DLL_Release
包含文件:zlib123目录以及c:\Boost\include\boost-1_33_1
库文件:zlib123\projects\visualc6\Win32_DLL_Release以及c:\Boost\lib
这时FZS Interface工程应该可以编译成功了,编译完成后会在Debug目录生成FileZilla Server Interface.exe。
生成Service工程时,需要调整一下工程设置:
语言设置:打开工程属性页,配置属性|常规,选择字符集为“使用 Unicode 字符集”,否则编译时会出错unicode必须使用;
链接设置:打开工程属性页,配置属性|链接器,将输入zlib.lib改成zlib1.lib(因为zlib123工程生成的是zlib1.lib)
下面生成一下,应该可以了。在生成Service工程完成时已经自动安装了"FileZilla Server FTP server"服务,也可以手工安装服务:
cd FileZilla_Server\Debug
"FileZilla server.exe" install auto
可以试一下这个FTP服务器了,运行FileZilla_Server\interface\Debug\FileZilla Server Interface.exe,这是FTP服务器的配置监控程序,试着加几个user,设置home dir,再用FTP客户端连接一下试试,应该可以了。
编译boost.regex的另一种办法
1.执行.net的Visual Studio .NET 2003 命令提示,即运行vcvars32.bat,可以帮助设置好.net命令行环境
2.cd boost_1_33_1\libs\regex\build
3.nmake -fvc71.mak
这种方式可以只编译regex
这时会在当前目录下生成vc71目录,里面有已编译好的lib和dll文件, 这样以后的步骤中可以设置regex库时指向这里, 包含文件需要设置到boost_1_33_1目录
另修正补充:
1、用bjam编译regex时,选项-sTOOLS=vc7中vc7改成vc71,否则下面最终生成工程时需要改个文件名(
libboost_regex-vc7-mt-sgd-1_33_1.lib ->
libboost_regex-vc71-mt-sgd-1_33_1.lib)
2、在.net工程里,可以不用设置:
可执行文件:zlib123\projects\visualc6\Win32_DLL_Release
不过运行时需要设置相应的PATH,以包含zlib1.dll以及regex的dll