zoukankan      html  css  js  c++  java
  • visual studio 2008 编译 filezilla

    http://filezilla-project.org/download.php?type=client

    这里可以下到一个3.4.0的源码

    解压后里面会有一个src/interface文件夹,里面有interface工程,使用此工程进行编译。注意这里直接编译的话是编译不过的,会有很多错误,因为filezilla工程依赖其他一些项目:

    可以用记事本打开build文件看一下

    FileZilla depends on the following libraries:

    - wxWidgets 2.8.9 or greater

    - libidn

    - GnuTLS 2.8.3 or greater

    - libdbus on *nix

    windows下编译,必须先准备好前面三个东东。

    1.下载wxWidgets 的一个windows版本

    比如:http://sourceforge.net/projects/wxwindows/files/2.8.12/wxMSW-2.8.12-Setup.exe/download

    解压后window工程在E:/workspace/wxMSW-2.8.12/build/msw

    注意编译的时候选择unicode的配置,因为filezilla是要在unicode下编译的。我选择的是编译静态库版本。

    编译时遇到错误:Cannot open include file: 'wx/setup.h': No such file or directory

    E:/workspace/wxMSW-2.8.12/include/wx/msw/setup.h

    拷贝至上一级目录

    E:/workspace/wxMSW-2.8.12/include/wx/setup.h

    即可解决

    编译的工程有20个,会生成很多个lib,通通加到filezilla的工程链接依赖中。

    2.下载GnuTLS

    这里可以下到:http://josefsson.org/gnutls4win/

    我下载的版本是gnutls-2.10.1.exe

    下载后要去生成一个visual studio可以使用的lib文件

    cmd下切换到安装后的bin目录

    C:/Program Files/GnuTLS/bin>lib /def:libgnutls-26.def
    使用上面的命令会在bin目录下生成libgnutls-26.lib,这个编译的时候用。
    同时还有运行时需要的dll文件libgnutls-26.dlllibgcrypt-11.dlllibgpg-error-0.dlllibtasn1-3.dll
    参考:http://josefsson.org/gnutls4win/
    Using the GnuTLS DLL from your Visual Studio program这一节
    3.下载GNU IDN Library - Libidn

    这里可以下到:http://devlinux.net/software/gnu/libidn/

    我下载的版本是libidn-1.9.tar.gz

    这个文件解压之后会有一个win32目录,用里面的工程编译可以获得一个lib文件libidn.lib

     

    注意要把这些库的include路径加到vc++include路径中。lib路径加到lib路径中。

    最终我编译通过的依赖库列表是:

    libgnutls-26.lib

    libidn.lib

    odbc32.lib

    odbccp32.lib

    comctl32.lib

    wxbase28u.lib

    rpcrt4.lib

    wsock32.lib

    ../lib/engine_unicode.lib

    Netapi32.lib

    Winmm.lib

    Ws2_32.lib

    mpr.lib

    wxmsw28u_core.lib

    wxbase28u_xml.lib

    wxmsw28u_xrc.lib

    wxmsw28u_adv.lib

    wxmsw28u_aui.lib

    wxbase28u_net.lib

    wxpng.lib

    wxzlib.lib

    wxregexu.lib

    wxtiff.lib

    wxmsw28u_dbgrid.lib

    wxmsw28u_gl.lib

    wxmsw28u_html.lib

    wxmsw28u_media.lib

    wxmsw28u_qa.lib

    wxbase28u_odbc.lib

    wxmsw28u_richtext.lib

    wxexpat.lib

    wxjpeg.lib

     

    注意编译的时候一定看好code generation是不是选的/MD

    这时候编译链接就过了。

    接下来运行

    还要注意把GnuTLS生成的dll拷贝到filezilla.exe目录下。

  • 相关阅读:
    面试后的一些思考
    NEW关键字的三种用法
    关于反射的初步介绍
    REF和OUT关键字的介绍
    关于WPF中TextBox行的选择与显示的问题
    资源字典——程序集之间的资源共享
    rsync 实现断点续传
    CentOS 7 安装 Git
    使用 docker 拉取镜像和创建容器-nginx
    docker安装 之 ---CentOS 7 系统脚本自动安装
  • 原文地址:https://www.cnblogs.com/oyjj/p/2132875.html
Copyright © 2011-2022 走看看