libtorrent在windows下編譯過程

來源:互聯網
上載者:User

http://blog.sina.com.cn/s/blog_53dc3f1a0100095x.html

 

 

 編譯boost:
1.下載boost source
到http://www.boost.org下載最新版本的boost,我目前下載的是1.33.1,將之解壓縮到c:/boost_1_33_1/下
2.編譯bjam
利用Visual Studio 2005 Command Prompt開啟DOS視窗,將目錄cd到C:/boost_1_33_1/tools/build/jam_src下,執行build.bat,然後會在C:/boost_1_33_1/tools/build/jam_src/bin.ntx86/產生bjam.exe,將bjam.exe複製到c: /boost_1_33_1/下

3.編譯boost
將目錄移至c:/boost_1_33_1/下執行bjam "-sTOOLS=vs-8_0" "-sPYTHON_ROOT=c:/Python25"
"--prefix=c:/boost" install

參數說明
-sTOOLS : 使用compiler,Visual Studio 2005為vs-8_0

-sPYTHON_ROOT:boost 1.33.1預設支援python 2.4,但最新版本為python 2.5,若要同時編譯支援Python的boost,須加上"-sPYTHON_ROOT"參數指定Python目錄

--prefix:指定編譯後library的安裝目錄

--sVC80_ROOT:若你的Visual Studio 2005不是安裝在預設目錄,就必須自己指定,如"-sVC80_ROOT=D:/Program Files/Microsoft Visual Studio 8/VC"

4.開始編譯
需要一段時間編譯,出現不少warning訊息,但不用擔心,主要是Visual C++ 8.0支援新的C++標準,但boost用了一些deprecated的寫法,以及code page的警告。

5.設定Visual Studio 2005環境
Tools -> Options -> Projects and Solutions -> VC++ Directories
在Library files加上c:/boost/lib
在Include files加上c:/Boost/include/boost-1_33_1

----------------------------------------------------------------
setting up and compiling libtorrent with vs.net 2005
1. create a new vs.net 2005 MFC project and solution file
2.  include the files contained in the src folder, excluding the makefiles.
    only include either file.cpp or file_win.cpp
3. include all .c files in the zlib folder
4. add the following additional include header files:
     "libtorrent/include"
    "c:/boost/include/boost-1_33_1"
    "libtorrent/zlib"
    "libtorrent/include/libtorrent"
5. add the following preprocessor definitions:
WIN32
WIN32_LEAN_AND_MEAN
_WIN32_WINNT=0x0500
BOOST_ALL_NO_LIB
_FILE_OFFSET_BITS=64
BOOST_THREAD_USE_LIB
TORRENT_BUILDING_SHARED
TORRENT_LINKING_SHARED
UNICODE

6. add c:/boost/lib to additional library directories
7. add the following additional dependencies: under project property pages->configuration properties-->linker->Input->Addtional Dependencies

wsock32.lib
libboost_thread-vc80-mt.lib
libboost_filesystem-vc80-mt.lib
libboost_date_time-vc80-mt.lib
8. set the runtime library to Multi-threaded Debug Dll(/MDd) under the code generation section.
-----------------------------------------------------------------

libtorrent provides some examples : dump_torrent.cpp (parse torrent file)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.