天天看点

windows下vs 2015 libtorrent库的配置,vs2015下-boost-openssl-libtorrent的配置

libtorrent依赖OpenSSL和boost库,首先要编译Openssl和boost库。

 1、安装ActivePerl,下载地址:网上找。

   安装完后配置环境变量(一般安装成功后,环境变量就已经配置好了,如果没有配置自己配置环境变量):

   我的perl路径是G:/perl;配置的环境变量是G:/Perl/bin。

 2、编译openssl:

  我下载的是openssl-1.0.1c版本,安装路径是:G:/openssl-1.0.1c

  打开 Visual Studio 2015->Visual Studio tools ->VS2015 开发人员命令提示,进到  openssl的目录下,一次运行以下命令:

  (1) perl configure VC-WIN32  --prefix=G:/openssllib(32位系统,根据环境需要自己改变)  -> 完成后查看是否有ms/do_ms文件夹;

  (2)Makefile 文件 ms\do_nasm

         如果不是使用nasm汇编器,这一步使用其他的命令代代替(如ms\do_ms)

       => 完成后查看ms文件夹下是否有ntdll.mak和nt.mak两个文件; 

       这里可以提前修改ms目录下的ntdll.mak文件,把-w3修改为-w0:

            CFLAG= /MD /Ox -DOPENSSL_THREADS  -DDSO_WIN32 -W3 -Gs0 -Gy -nologo 

      不修改有时候会出现error,有时候没有错误,可能和版本有关系,这个不是特别了解。

  (3)nmake -f ms/ntdll.mak(编译静态版本的执行nmake -f ms/nt.mak,静态库会出无法解析外部符号的错误,需要给指定lib库的位置,我使用的是动态库) 。

    编译完成后会在G:openssl-1.0.1c下生成:动态库文件夹out32dll(静态库生成的是:out32文件夹)。

        out32dll下成的有用文件:openssl.exe,libeay32.dll,ssleay32.dll。

另外还有几个可能会用到:

  测试OpenSSL动态库:nmake -f ms\ntdll.mak test

  测试OpenSSL静态库:nmake -f ms\nt.mak test

  安装OpenSSL动态库:nmake -f ms\ntdll.mak install

  安装OpenSSL静态库:nmake -f ms\nt.mak install

  清除上次OpenSSL动态库的编译,以便重新编译:nmake -f ms\ntdll.mak clean

  清除上次OpenSSL静态库的编译,以便重新编译:nmake -f ms\nt.mak clean

       G:\openssllib文件夹下生成所需要的动静态库

   注:遇到问题可以在网上找方法,这个只是我编译时见到的情况,特意拿来和大家分享。

 3、编译Boost库:

   下载网址:https://sourceforge.net/projects/boost/files/boost/1.36.0/。

  (1)解压(例解压到:G:/)。

  (2)打开 Visual Studio 2015->Visual Studio tools ->VS2015 开发人员命令提示,cd 到boost解压后的根目录(例:G:/boost_1_62_0);

            执行G:/boost_1_62_0下的booststrap.bat。完成后会在boost根目录(G:/boost_1_62_0)生成:b2.exe,bjam.exe,project-config.jam。

  (3)使用bjam命令:

        bjam --without-python --toolset=msvc-14.0 link=static runtime-link=shared  threading=multi debug release;

      (在这之前如果之前有生成记录,可以使用:bjam  --clean 清除下记录)。

      运行完成后会提示(意思是这样):

                  Compiler include: G:/boost_1_62_0

                  Linker library: G:/boost_1_62_0/stage/lib

           详细的每个参数的含义,可以参考 全速前行 的博客里的《BOOST库在Windows下的配置》,

            网址链接:http://blog.csdn.net/lincyang/article/details/5969518?locationNum=5&fps=1  谢谢博主)。在此我就不详细介绍了,如果想知道,可以回帖,欢迎询问。

 (4)设置环境变量BOOST_BUILD_PATH:

    set BOOST_BUILD_PATH=G:/boost_1_62_0/;

 (5)修改 G:/boost_1_62_0/tools/build/example/user-config.jam文件,在里面添加:#using msvc :4.0;

 (6)设置b2.exe的环境变量(如果使用bjam就设置bjam的环境变量)。在计算机的path里设置: G:/boost_1_62_0/。

编译好的boost_1_68_0的最新版本下载链接:https://download.csdn.net/download/huijielic/10829943

 4、libtorrent库

   下载地址:https://sourceforge.net/projects/libtorrent/  或者:https://github.com/arvidn/libtorrent

 (1)安装路径:G:/(下载的是第二个网址里的所有文件,文件夹名是:libtorrent-master)。

 (2)设置头文件和依赖库:

    打开 Visual Studio 2015->Visual Studio tools ->VS2015 开发人员命令提示,cd到libtorrent的目录

(例:G:/libtorrent-master)

    set BOOST_ROOT=G:/boost_1_62_0/;

    set INCLUDE= G:/libtorrent-master/include/;G:/openssl-1.0.1c/include/;G:/boost_1_62_0/boost/;

    set LIB=G:/openssl_1.0.1c/out32dll/;G:boost_1_62_0/stage/lib/;

    运行b2.exe,生成在G:/libtorrent-master/ 下生成bin目录,bin/msvc-14.0/debug/asserts-on/threading-multi/ 下生成torrent.lib和torrent.dll文件。

     可以把这两个文件(torrent.lib和torrent.dll)拷贝到bin目录下,方便使用。

例子可以使用:G:/libtorrent-master/examples下的程序测试。使用的配置欢迎回帖。

参考:http://libtorrent.org/building.html  该网站介绍的很详细。