*** empty log message ***
This commit is contained in:
parent
5c074c457e
commit
205a6e2496
5
Jamfile
5
Jamfile
|
@ -9,6 +9,7 @@ use-project /boost/thread : $(BOOST_ROOT)/libs/thread/build ;
|
||||||
use-project /boost/filesystem : $(BOOST_ROOT)/libs/filesystem/build ;
|
use-project /boost/filesystem : $(BOOST_ROOT)/libs/filesystem/build ;
|
||||||
use-project /boost/date_time : $(BOOST_ROOT)/libs/date_time/build ;
|
use-project /boost/date_time : $(BOOST_ROOT)/libs/date_time/build ;
|
||||||
|
|
||||||
|
lib winsock : : <name>wsock32.lib ;
|
||||||
|
|
||||||
project torrent
|
project torrent
|
||||||
: requirements
|
: requirements
|
||||||
|
@ -33,6 +34,8 @@ project torrent
|
||||||
;
|
;
|
||||||
|
|
||||||
|
|
||||||
|
LIBS = ;
|
||||||
|
|
||||||
SOURCES =
|
SOURCES =
|
||||||
allocate_resources.cpp
|
allocate_resources.cpp
|
||||||
alert.cpp
|
alert.cpp
|
||||||
|
@ -60,6 +63,7 @@ SOURCES =
|
||||||
if [ modules.peek : NT ] && toolset != msvc-6
|
if [ modules.peek : NT ] && toolset != msvc-6
|
||||||
{
|
{
|
||||||
SOURCES += file_win.cpp ;
|
SOURCES += file_win.cpp ;
|
||||||
|
LIBS += winsock ;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -74,6 +78,7 @@ lib torrent
|
||||||
/boost/thread//boost_thread/<link>shared
|
/boost/thread//boost_thread/<link>shared
|
||||||
/boost/date_time//boost_date_time/<link>static
|
/boost/date_time//boost_date_time/<link>static
|
||||||
/boost/filesystem//boost_filesystem/<link>static
|
/boost/filesystem//boost_filesystem/<link>static
|
||||||
|
$(LIBS)
|
||||||
:
|
:
|
||||||
<include>./include
|
<include>./include
|
||||||
<threading>multi
|
<threading>multi
|
||||||
|
|
107
docs/manual.html
107
docs/manual.html
|
@ -15,61 +15,62 @@
|
||||||
<ul class="simple">
|
<ul class="simple">
|
||||||
<li><a class="reference" href="#introduction" id="id13" name="id13">introduction</a></li>
|
<li><a class="reference" href="#introduction" id="id13" name="id13">introduction</a></li>
|
||||||
<li><a class="reference" href="#downloading-and-building" id="id14" name="id14">downloading and building</a><ul>
|
<li><a class="reference" href="#downloading-and-building" id="id14" name="id14">downloading and building</a><ul>
|
||||||
<li><a class="reference" href="#release-and-debug-builds" id="id15" name="id15">release and debug builds</a></li>
|
<li><a class="reference" href="#cygwin-and-msvc" id="id15" name="id15">cygwin and msvc</a></li>
|
||||||
|
<li><a class="reference" href="#release-and-debug-builds" id="id16" name="id16">release and debug builds</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li><a class="reference" href="#using" id="id16" name="id16">using</a></li>
|
<li><a class="reference" href="#using" id="id17" name="id17">using</a></li>
|
||||||
<li><a class="reference" href="#session" id="id17" name="id17">session</a></li>
|
<li><a class="reference" href="#session" id="id18" name="id18">session</a></li>
|
||||||
<li><a class="reference" href="#parsing-torrent-files" id="id18" name="id18">parsing torrent files</a></li>
|
<li><a class="reference" href="#parsing-torrent-files" id="id19" name="id19">parsing torrent files</a></li>
|
||||||
<li><a class="reference" href="#entry" id="id19" name="id19">entry</a></li>
|
<li><a class="reference" href="#entry" id="id20" name="id20">entry</a></li>
|
||||||
<li><a class="reference" href="#torrent-info" id="id20" name="id20">torrent_info</a></li>
|
<li><a class="reference" href="#torrent-info" id="id21" name="id21">torrent_info</a></li>
|
||||||
<li><a class="reference" href="#torrent-handle" id="id21" name="id21">torrent_handle</a><ul>
|
<li><a class="reference" href="#torrent-handle" id="id22" name="id22">torrent_handle</a><ul>
|
||||||
<li><a class="reference" href="#status" id="id22" name="id22">status()</a></li>
|
<li><a class="reference" href="#status" id="id23" name="id23">status()</a></li>
|
||||||
<li><a class="reference" href="#get-download-queue" id="id23" name="id23">get_download_queue()</a></li>
|
<li><a class="reference" href="#get-download-queue" id="id24" name="id24">get_download_queue()</a></li>
|
||||||
<li><a class="reference" href="#get-peer-info" id="id24" name="id24">get_peer_info()</a></li>
|
<li><a class="reference" href="#get-peer-info" id="id25" name="id25">get_peer_info()</a></li>
|
||||||
<li><a class="reference" href="#get-torrent-info" id="id25" name="id25">get_torrent_info()</a></li>
|
<li><a class="reference" href="#get-torrent-info" id="id26" name="id26">get_torrent_info()</a></li>
|
||||||
<li><a class="reference" href="#is-valid" id="id26" name="id26">is_valid()</a></li>
|
<li><a class="reference" href="#is-valid" id="id27" name="id27">is_valid()</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li><a class="reference" href="#address" id="id27" name="id27">address</a></li>
|
<li><a class="reference" href="#address" id="id28" name="id28">address</a></li>
|
||||||
<li><a class="reference" href="#http-settings" id="id28" name="id28">http_settings</a></li>
|
<li><a class="reference" href="#http-settings" id="id29" name="id29">http_settings</a></li>
|
||||||
<li><a class="reference" href="#big-number" id="id29" name="id29">big_number</a></li>
|
<li><a class="reference" href="#big-number" id="id30" name="id30">big_number</a></li>
|
||||||
<li><a class="reference" href="#hasher" id="id30" name="id30">hasher</a></li>
|
<li><a class="reference" href="#hasher" id="id31" name="id31">hasher</a></li>
|
||||||
<li><a class="reference" href="#fingerprint" id="id31" name="id31">fingerprint</a><ul>
|
<li><a class="reference" href="#fingerprint" id="id32" name="id32">fingerprint</a><ul>
|
||||||
<li><a class="reference" href="#identify-client" id="id32" name="id32">identify_client</a></li>
|
<li><a class="reference" href="#identify-client" id="id33" name="id33">identify_client</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li><a class="reference" href="#alerts" id="id33" name="id33">alerts</a><ul>
|
<li><a class="reference" href="#alerts" id="id34" name="id34">alerts</a><ul>
|
||||||
<li><a class="reference" href="#listen-failed-alert" id="id34" name="id34">listen_failed_alert</a></li>
|
<li><a class="reference" href="#listen-failed-alert" id="id35" name="id35">listen_failed_alert</a></li>
|
||||||
<li><a class="reference" href="#file-error-alert" id="id35" name="id35">file_error_alert</a></li>
|
<li><a class="reference" href="#file-error-alert" id="id36" name="id36">file_error_alert</a></li>
|
||||||
<li><a class="reference" href="#tracker-alert" id="id36" name="id36">tracker_alert</a></li>
|
<li><a class="reference" href="#tracker-alert" id="id37" name="id37">tracker_alert</a></li>
|
||||||
<li><a class="reference" href="#hash-failed-alert" id="id37" name="id37">hash_failed_alert</a></li>
|
<li><a class="reference" href="#hash-failed-alert" id="id38" name="id38">hash_failed_alert</a></li>
|
||||||
<li><a class="reference" href="#peer-error-alert" id="id38" name="id38">peer_error_alert</a></li>
|
<li><a class="reference" href="#peer-error-alert" id="id39" name="id39">peer_error_alert</a></li>
|
||||||
<li><a class="reference" href="#invalid-request-alert" id="id39" name="id39">invalid_request_alert</a></li>
|
<li><a class="reference" href="#invalid-request-alert" id="id40" name="id40">invalid_request_alert</a></li>
|
||||||
<li><a class="reference" href="#torrent-finished-alert" id="id40" name="id40">torrent_finished_alert</a></li>
|
<li><a class="reference" href="#torrent-finished-alert" id="id41" name="id41">torrent_finished_alert</a></li>
|
||||||
<li><a class="reference" href="#dispatcher" id="id41" name="id41">dispatcher</a></li>
|
<li><a class="reference" href="#dispatcher" id="id42" name="id42">dispatcher</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li><a class="reference" href="#exceptions" id="id42" name="id42">exceptions</a><ul>
|
<li><a class="reference" href="#exceptions" id="id43" name="id43">exceptions</a><ul>
|
||||||
<li><a class="reference" href="#invalid-handle" id="id43" name="id43">invalid_handle</a></li>
|
<li><a class="reference" href="#invalid-handle" id="id44" name="id44">invalid_handle</a></li>
|
||||||
<li><a class="reference" href="#duplicate-torrent" id="id44" name="id44">duplicate_torrent</a></li>
|
<li><a class="reference" href="#duplicate-torrent" id="id45" name="id45">duplicate_torrent</a></li>
|
||||||
<li><a class="reference" href="#invalid-encoding" id="id45" name="id45">invalid_encoding</a></li>
|
<li><a class="reference" href="#invalid-encoding" id="id46" name="id46">invalid_encoding</a></li>
|
||||||
<li><a class="reference" href="#type-error" id="id46" name="id46">type_error</a></li>
|
<li><a class="reference" href="#type-error" id="id47" name="id47">type_error</a></li>
|
||||||
<li><a class="reference" href="#invalid-torrent-file" id="id47" name="id47">invalid_torrent_file</a></li>
|
<li><a class="reference" href="#invalid-torrent-file" id="id48" name="id48">invalid_torrent_file</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li><a class="reference" href="#examples" id="id48" name="id48">examples</a><ul>
|
<li><a class="reference" href="#examples" id="id49" name="id49">examples</a><ul>
|
||||||
<li><a class="reference" href="#dump-torrent" id="id49" name="id49">dump_torrent</a></li>
|
<li><a class="reference" href="#dump-torrent" id="id50" name="id50">dump_torrent</a></li>
|
||||||
<li><a class="reference" href="#simple-client" id="id50" name="id50">simple client</a></li>
|
<li><a class="reference" href="#simple-client" id="id51" name="id51">simple client</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li><a class="reference" href="#fast-resume" id="id51" name="id51">fast resume</a><ul>
|
<li><a class="reference" href="#fast-resume" id="id52" name="id52">fast resume</a><ul>
|
||||||
<li><a class="reference" href="#file-format" id="id52" name="id52">file format</a></li>
|
<li><a class="reference" href="#file-format" id="id53" name="id53">file format</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li><a class="reference" href="#extensions" id="id53" name="id53">extensions</a></li>
|
<li><a class="reference" href="#extensions" id="id54" name="id54">extensions</a></li>
|
||||||
<li><a class="reference" href="#filenames-checks" id="id54" name="id54">filenames checks</a></li>
|
<li><a class="reference" href="#filenames-checks" id="id55" name="id55">filenames checks</a></li>
|
||||||
<li><a class="reference" href="#aknowledgements" id="id55" name="id55">aknowledgements</a></li>
|
<li><a class="reference" href="#aknowledgements" id="id56" name="id56">aknowledgements</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<div class="section" id="introduction">
|
<div class="section" id="introduction">
|
||||||
|
@ -164,15 +165,27 @@ bjam <toolset> link=static
|
||||||
<p>in the libtorrent directory.</p>
|
<p>in the libtorrent directory.</p>
|
||||||
<p>If you're building on a platform where dlls share the same heap, you can build libtorrent
|
<p>If you're building on a platform where dlls share the same heap, you can build libtorrent
|
||||||
as a dll too, by typing <tt class="literal"><span class="pre">link=shared</span></tt> instead of <tt class="literal"><span class="pre">link=static</span></tt>.</p>
|
as a dll too, by typing <tt class="literal"><span class="pre">link=shared</span></tt> instead of <tt class="literal"><span class="pre">link=static</span></tt>.</p>
|
||||||
|
<p>If you're making your own project file, note that there are two versions of the file
|
||||||
|
abstraction. There's one <tt class="literal"><span class="pre">file_win.cpp</span></tt> which relies on windows file API that supports
|
||||||
|
files larger than 2 Gigabytes. This does not work in vc6 for some reason, possibly because
|
||||||
|
it may require windows NT and above. The other file, <tt class="literal"><span class="pre">file.cpp</span></tt> is the default
|
||||||
|
implementation that simply relies on the standard library's fstream, and as a result does
|
||||||
|
not support files larger than 2 Gigabytes.</p>
|
||||||
|
<div class="section" id="cygwin-and-msvc">
|
||||||
|
<h2><a name="cygwin-and-msvc">cygwin and msvc</a></h2>
|
||||||
|
<p>Note that if you're building on windows using the <tt class="literal"><span class="pre">msvc</span></tt> toolset, you cannot run it
|
||||||
|
from a cygwin terminal, you'll have to run it from a cmd terminal. The same goes for
|
||||||
|
cygwin, if you're building with gcc (mingw) you'll have to run it from a cygwin terminal.
|
||||||
|
Also, make sure the paths are correct in the different environments. In cygwin, the paths
|
||||||
|
(<tt class="literal"><span class="pre">BOOST_BUILD_PATH</span></tt> and <tt class="literal"><span class="pre">BOOST_ROOT</span></tt>) should be in the typical unix-format (e.g.
|
||||||
|
<tt class="literal"><span class="pre">/cygdrive/c/boost_1_31_0</span></tt>). In the windows environment, they should have the typical
|
||||||
|
windows format (<tt class="literal"><span class="pre">c:/boost_1_31_0</span></tt>).</p>
|
||||||
<p>If you're building in developer studio, you may have to set the compiler options
|
<p>If you're building in developer studio, you may have to set the compiler options
|
||||||
"force conformance in for loop scope" and "treat wchar_t as built-in type" to Yes.</p>
|
"force conformance in for loop scope" and "treat wchar_t as built-in type" to Yes.</p>
|
||||||
<p>If you're building in developer studio 6, you will probably have to use the previous
|
<p>If you're building in developer studio 6, you will probably have to use the previous
|
||||||
version of boost, <a class="reference" href="http://sourceforge.net/project/showfiles.php?group_id=7586&package_id=8041&release_id=178835">boost 1.30.2</a>.</p>
|
version of boost, <a class="reference" href="http://sourceforge.net/project/showfiles.php?group_id=7586&package_id=8041&release_id=178835">boost 1.30.2</a>. And you'll definately have to use the latest service
|
||||||
<p>There are two versions of the file abstraction. There's one <tt class="literal"><span class="pre">file_win.cpp</span></tt> which
|
pack (sp5).</p>
|
||||||
relies on windows file API that supports files larger than 2 Gigabytes. This does not work
|
</div>
|
||||||
in vc6 for some reason, possibly because it may require windows NT and above. The other file,
|
|
||||||
<tt class="literal"><span class="pre">file.cpp</span></tt> is the default implementation that simply relies on the standard library's fstream,
|
|
||||||
and as a result does not support files larger than 2 Gigabytes.</p>
|
|
||||||
<div class="section" id="release-and-debug-builds">
|
<div class="section" id="release-and-debug-builds">
|
||||||
<h2><a name="release-and-debug-builds">release and debug builds</a></h2>
|
<h2><a name="release-and-debug-builds">release and debug builds</a></h2>
|
||||||
<p>The <tt class="literal"><span class="pre">Jamfile</span></tt> can build both a release and debug version of libtorrent. In debug mode,
|
<p>The <tt class="literal"><span class="pre">Jamfile</span></tt> can build both a release and debug version of libtorrent. In debug mode,
|
||||||
|
|
|
@ -111,19 +111,35 @@ in the libtorrent directory.
|
||||||
If you're building on a platform where dlls share the same heap, you can build libtorrent
|
If you're building on a platform where dlls share the same heap, you can build libtorrent
|
||||||
as a dll too, by typing ``link=shared`` instead of ``link=static``.
|
as a dll too, by typing ``link=shared`` instead of ``link=static``.
|
||||||
|
|
||||||
|
|
||||||
|
If you're making your own project file, note that there are two versions of the file
|
||||||
|
abstraction. There's one ``file_win.cpp`` which relies on windows file API that supports
|
||||||
|
files larger than 2 Gigabytes. This does not work in vc6 for some reason, possibly because
|
||||||
|
it may require windows NT and above. The other file, ``file.cpp`` is the default
|
||||||
|
implementation that simply relies on the standard library's fstream, and as a result does
|
||||||
|
not support files larger than 2 Gigabytes.
|
||||||
|
|
||||||
|
|
||||||
|
cygwin and msvc
|
||||||
|
---------------
|
||||||
|
|
||||||
|
Note that if you're building on windows using the ``msvc`` toolset, you cannot run it
|
||||||
|
from a cygwin terminal, you'll have to run it from a cmd terminal. The same goes for
|
||||||
|
cygwin, if you're building with gcc (mingw) you'll have to run it from a cygwin terminal.
|
||||||
|
Also, make sure the paths are correct in the different environments. In cygwin, the paths
|
||||||
|
(``BOOST_BUILD_PATH`` and ``BOOST_ROOT``) should be in the typical unix-format (e.g.
|
||||||
|
``/cygdrive/c/boost_1_31_0``). In the windows environment, they should have the typical
|
||||||
|
windows format (``c:/boost_1_31_0``).
|
||||||
|
|
||||||
If you're building in developer studio, you may have to set the compiler options
|
If you're building in developer studio, you may have to set the compiler options
|
||||||
"force conformance in for loop scope" and "treat wchar_t as built-in type" to Yes.
|
"force conformance in for loop scope" and "treat wchar_t as built-in type" to Yes.
|
||||||
|
|
||||||
If you're building in developer studio 6, you will probably have to use the previous
|
If you're building in developer studio 6, you will probably have to use the previous
|
||||||
version of boost, `boost 1.30.2`__.
|
version of boost, `boost 1.30.2`__. And you'll definately have to use the latest service
|
||||||
|
pack (sp5).
|
||||||
|
|
||||||
__ http://sourceforge.net/project/showfiles.php?group_id=7586&package_id=8041&release_id=178835
|
__ http://sourceforge.net/project/showfiles.php?group_id=7586&package_id=8041&release_id=178835
|
||||||
|
|
||||||
There are two versions of the file abstraction. There's one ``file_win.cpp`` which
|
|
||||||
relies on windows file API that supports files larger than 2 Gigabytes. This does not work
|
|
||||||
in vc6 for some reason, possibly because it may require windows NT and above. The other file,
|
|
||||||
``file.cpp`` is the default implementation that simply relies on the standard library's fstream,
|
|
||||||
and as a result does not support files larger than 2 Gigabytes.
|
|
||||||
|
|
||||||
release and debug builds
|
release and debug builds
|
||||||
------------------------
|
------------------------
|
||||||
|
|
Loading…
Reference in New Issue