Libtorrent編譯安裝
安裝環境:
Windows 7
Visual Studio 2010
ActivePerl 5.16.1.1601
openssl 1.0.1c
boost 1.46.1
libtorrent rasterbar 0.15.6
安裝目錄:
D:\work\
Visual Studio工程目錄:
E:\Visual Studio\Projects\
1. 安裝ActivePerl
http://www.activestate.com/activeperl/downloads
下載下傳ActivePerl Community Edition版本
ActivePerl-5.16.1.1601-MSWin32-x86-296175.msi
安裝到D:\work\perl\目錄,安裝時注意選擇增加至path環境變量。
2. 編譯openssl
http://www.openssl.org/source/
下載下傳openssl-1.0.1c.tar.gz (latest)
解壓到D:\work\openssl-1.0.1c\
打開Visual Studio指令提示視窗
cd D:\work\openssl*
perl Configure VC-WIN32
ms\do_ms
nmake -f ms\nt.mak
這裡生成靜态連結庫,若要生成動态連結庫,最後一步使用nmake -f ms\ntdll.mak指令;
輸出到\out32\目錄下(若動态庫則生成到\out32dll\目錄下),其中包括:
可執行檔案openssl.exe、
兩個lib檔案(ssleay32.lib,libeay32.dll)、
(若動态連結庫還包括兩個dll檔案ssleay32.dll,libeay32.dll)。
3. 編譯boost
http://sourceforge.net/projects/boost/files/boost/1.46.1/boost_1_46_1.7z/download
解壓到D:\work\boost_1_46_1\
打開Visual Studio指令提示視窗
cd D:\work\boost*
bootstrap
bjam link=static runtime-link=static threading=multi stage > build.txt
編譯完成後,相應的庫檔案生成到\stage\lib\目錄中;
這裡生成了debug和release的全部靜态庫,可以看到,所有的庫結尾都帶上了s,表示靜态庫,debug版本的庫後面還帶有gd标志。
4. 編譯libtorrent
http://code.google.com/p/libtorrent/downloads/list
下載下傳libtorrent-rasterbar-0.15.6.tar.gz
解壓到D:\work\libtorrent-rasterbar-0.15.6\
複制boost*\目錄下bjam.exe到libtorrent*\目錄
修改boost*\tools\build\v2\user-config.jam檔案,取消注釋using msvc : 10.0 ;
打開Visual Studio指令提示視窗
cd D:\work\libtorrent*
set BOOST_ROOT=D:\work\boost_1_46_1
set INCLUDE=%INCLUDE%;D:\work\openssl-1.0.1c\inc32
set LIB=%LIB%;D:\work\openssl-1.0.1c\out32
bjam --toolset=msvc boost=source link=static runtime-link=static variant=debug character-set=unicode --without-python > builddebug.txt
bjam --toolset=msvc boost=source link=static runtime-link=static variant=release character-set=unicode --without-python > buildrelease.txt
在libtorrent*\下建立lib目錄
将\bin\msvc-10.0\debug\boost-source\link-static\threading-multi下的libtorrent.lib 複制到 lib下命名為libtorrent-debug.lib;
将\bin\..\release\..下的libtorrent.lib複制到lib下命名為libtorrent-release.lib。
5. 調試libtorrent
打開Visual Stuido 2010,建立項目 - Visual C++ - win32項目 - 控制台應用程式 - 空項目,如項目名稱為testlt;
将D:\work\libtorrent-rasterbar-0.15.6\examples下的simple_client.cpp複制到E:\Visual Studio\Projects\testlt\testlt下
在解決方案資料總管右鍵工程名,添加 - 現有項,選擇simple_client.cpp
右鍵工程名,屬性
配置屬性 - VC++目錄 - 包含目錄 - 編輯,添加:
D:\work\libtorrent-rasterbar-0.15.6\zlib
D:\work\libtorrent-rasterbar-0.15.6\include
D:\work\boost_1_46_1
D:\work\openssl-1.0.1c\inc32
C/C++ - 代碼生成 - 運作庫,設定為多線程程式設計(/MTD)
連結器 - 正常 - 附加庫目錄 - 編輯,添加:
D:\work\libtorrent-rasterbar-0.15.6\lib
D:\work\boost_1_46_1\stage\lib
D:\work\openssl-1.0.1c\out32
連結器 - 輸入 - 附加依賴項,填寫:
libtorrent-debug.lib
libeay32.lib
ssleay32.lib
打來simple_client.cpp,在開頭添加:
#define BOOST_FILESYSTEM_VERSION 2
編譯。
轉載于:https://www.cnblogs.com/bloodmage/archive/2012/10/15/2724266.html