Qt + MinGW + libtorrent, Помогите прикрутить библиотеку под windows |
Здравствуйте, гость ( Вход | Регистрация )
Qt + MinGW + libtorrent, Помогите прикрутить библиотеку под windows |
XpycT |
4.8.2009, 10:03
Сообщение
#1
|
Студент Группа: Участник Сообщений: 43 Регистрация: 7.7.2009 Пользователь №: 883 Спасибо сказали: 0 раз(а) Репутация: 0 |
Бьюсь уже второй день, но никак не могу подцепить эту библиотеку к проекту под виндой. Пробовал по гайду на их сайте, boost собирается нормально, а вот libtorrent никак не хочет Уже и пробовал просто добавить в INCLUDEPATH путь к бусту и либторренту, но вкончается ошибками компиляции
Раскрывающийся текст Выполняется сборка проекта style_button... Запускается: C:/DevTools/Qt/4.5.2/qt/bin/qmake.exe D:/Qt4_tutorial/my/style_button/style_button.pro -spec win32-g++ -r Завершено с кодом возврата 0. Запускается: C:/DevTools/Qt/4.5.2/mingw/bin/mingw32-make.exe -w mingw32-make: Entering directory `D:/Qt4_tutorial/my/style_button' C:/DevTools/Qt/4.5.2/mingw/bin/mingw32-make -f Makefile.Debug mingw32-make[1]: Entering directory `D:/Qt4_tutorial/my/style_button' g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN -I"c:\DevTools\Qt\4.5.2\qt\include\QtCore" -I"c:\DevTools\Qt\4.5.2\qt\include\QtGui" -I"c:\DevTools\Qt\4.5.2\qt\include" -I"." -I"..\..\addin\libtorrent-rasterbar-0.14.4\include" -I"..\..\addin\libtorrent-rasterbar-0.14.4\zlib" -I"..\..\addin\boost_1_39_0" -I"c:\DevTools\Qt\4.5.2\qt\include\ActiveQt" -I"debug" -I"c:\DevTools\Qt\4.5.2\qt\mkspecs\win32-g++" -o debug\main.o main.cpp In file included from c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/windows.h:50, from c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/winsock2.h:22, from ../../addin/boost_1_39_0/boost/asio/detail/socket_types.hpp:79, from ../../addin/boost_1_39_0/boost/asio/detail/win_iocp_io_service_fwd.hpp:24, from ../../addin/boost_1_39_0/boost/asio/io_service.hpp:37, from ../../addin/boost_1_39_0/boost/asio/basic_io_object.hpp:20, from ../../addin/boost_1_39_0/boost/asio/basic_socket_acceptor.hpp:20, from ../../addin/boost_1_39_0/boost/asio/ip/tcp.hpp:20, from ../../addin/libtorrent-rasterbar-0.14.4/include/libtorrent/socket.hpp:60, from ../../addin/libtorrent-rasterbar-0.14.4/include/libtorrent/torrent_info.hpp:54, from main.cpp:7: c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/winbase.h:1058:47: operator '||' has no right operand c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/winbase.h:1466:47: operator '||' has no right operand c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/winbase.h:1787:49: operator '>=' has no left operand c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/winbase.h:1943:47: operator '||' has no right operand c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/winbase.h:2133:47: operator '||' has no right operand In file included from c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/windows.h:52, from c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/winsock2.h:22, from ../../addin/boost_1_39_0/boost/asio/detail/socket_types.hpp:79, from ../../addin/boost_1_39_0/boost/asio/detail/win_iocp_io_service_fwd.hpp:24, from ../../addin/boost_1_39_0/boost/asio/io_service.hpp:37, from ../../addin/boost_1_39_0/boost/asio/basic_io_object.hpp:20, from ../../addin/boost_1_39_0/boost/asio/basic_socket_acceptor.hpp:20, from ../../addin/boost_1_39_0/boost/asio/ip/tcp.hpp:20, from ../../addin/libtorrent-rasterbar-0.14.4/include/libtorrent/socket.hpp:60, from ../../addin/libtorrent-rasterbar-0.14.4/include/libtorrent/torrent_info.hpp:54, from main.cpp:7: c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/wingdi.h:2706:21: operator '>=' has no left operand In file included from c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/windows.h:55, from c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/winsock2.h:22, from ../../addin/boost_1_39_0/boost/asio/detail/socket_types.hpp:79, from ../../addin/boost_1_39_0/boost/asio/detail/win_iocp_io_service_fwd.hpp:24, from ../../addin/boost_1_39_0/boost/asio/io_service.hpp:37, from ../../addin/boost_1_39_0/boost/asio/basic_io_object.hpp:20, from ../../addin/boost_1_39_0/boost/asio/basic_socket_acceptor.hpp:20, from ../../addin/boost_1_39_0/boost/asio/ip/tcp.hpp:20, from ../../addin/libtorrent-rasterbar-0.14.4/include/libtorrent/socket.hpp:60, from ../../addin/libtorrent-rasterbar-0.14.4/include/libtorrent/torrent_info.hpp:54, from main.cpp:7: c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/winuser.h:401:21: operator '>=' has no left operand c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/winuser.h:2016:47: operator '||' has no right operand c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/winuser.h:2183:21: operator '>=' has no left operand c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/winuser.h:2370:47: operator '||' has no right operand c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/winuser.h:2385:47: operator '||' has no right operand c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/winuser.h:2401:47: operator '||' has no right operand c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/winuser.h:3128:21: operator '>=' has no left operand c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/winuser.h:3191:47: operator '||' has no right operand c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/winuser.h:3200:47: operator '||' has no right operand c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/winuser.h:3556:47: operator '||' has no right operand c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/winuser.h:3580:47: operator '||' has no right operand c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/winuser.h:3612:47: operator '||' has no right operand c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/winuser.h:3663:47: operator '||' has no right operand c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/winuser.h:3740:21: operator '>=' has no left operand c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/winuser.h:3754:47: operator '||' has no right operand c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/winuser.h:3840:47: operator '||' has no right operand c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/winuser.h:4037:21: operator '>=' has no left operand c:/DevTools/Qt/4.5.2/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../../include/winuser.h:4062:47: operator '||' has no right operand In file included from ../../addin/boost_1_39_0/boost/date_time/microsec_time_clock.hpp:23, from ../../addin/boost_1_39_0/boost/date_time/posix_time/posix_time_types.hpp:11, from ../../addin/boost_1_39_0/boost/asio/detail/select_reactor.hpp:25, from ../../addin/boost_1_39_0/boost/asio/impl/io_service.ipp:27, from ../../addin/boost_1_39_0/boost/asio/io_service.hpp:550, from ../../addin/boost_1_39_0/boost/asio/basic_io_object.hpp:20, from ../../addin/boost_1_39_0/boost/asio/basic_socket_acceptor.hpp:20, from ../../addin/boost_1_39_0/boost/asio/ip/tcp.hpp:20, from ../../addin/libtorrent-rasterbar-0.14.4/include/libtorrent/socket.hpp:60, from ../../addin/libtorrent-rasterbar-0.14.4/include/libtorrent/torrent_info.hpp:54, from main.cpp:7: ../../addin/boost_1_39_0/boost/date_time/filetime_functions.hpp: In function `uint64_t boost::date_time::winapi::file_time_to_microseconds(const FileTimeT&)': ../../addin/boost_1_39_0/boost/date_time/filetime_functions.hpp:101: warning: left shift count >= width of type mingw32-make[1]: Leaving directory `D:/Qt4_tutorial/my/style_button' mingw32-make: Leaving directory `D:/Qt4_tutorial/my/style_button' mingw32-make[1]: *** [debug/main.o] Error 1 mingw32-make: *** [debug] Error 2 Завершено с кодом возврата 2. Ошибка во время сборки проекта style_button Во время выполнения сборки на этапе 'Make' Хочется добавить к проекту возможность создания .torrent файлов, и как на зло - в примерах торрент клиента нет его создания и не получается прикрутить сторонюю библиотеку Сама библиотека тут Может кто сталкивался, или же знает альтернативные способы их создания? Сообщение отредактировал XpycT - 4.8.2009, 10:05 |
|
|
XpycT |
4.8.2009, 18:50
Сообщение
#2
|
Студент Группа: Участник Сообщений: 43 Регистрация: 7.7.2009 Пользователь №: 883 Спасибо сказали: 0 раз(а) Репутация: 0 |
Прикрутить так и не получилось, решил попробовать написать генерацию .torrent файла сам. Пришел к тому, что все, кроме последнего раздела получается нормально, а вот peaces никак не могу получить.
Ссылки на спецификацию формата: http://blog.bitcomet.com/bitcomet/post_413/ http://bittorrent.org/beps/bep_0003.html http://wiki.theory.org/BitTorrentSpecification То что у меня получилось testapp.h Раскрывающийся текст
testapp.cpp Раскрывающийся текст
Как я понял, надо прочитать весь файл, разбить его по 20 байт, и эти байты закриптовать в Sha1. Но как не пытаюсь сделать - созданный файл отличается от созданного в клиенте, и при его открытии выпадает сообщение о не битом формате |
|
|
Litkevich Yuriy |
5.8.2009, 5:31
Сообщение
#3
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
А в примере %QTDIR%\examples\network\torrent ответов нет?
|
|
|
XpycT |
5.8.2009, 8:30
Сообщение
#4
|
Студент Группа: Участник Сообщений: 43 Регистрация: 7.7.2009 Пользователь №: 883 Спасибо сказали: 0 раз(а) Репутация: 0 |
Я же написал, что в примере нет создания торрента
|
|
|
XpycT |
14.8.2009, 20:46
Сообщение
#5
|
Студент Группа: Участник Сообщений: 43 Регистрация: 7.7.2009 Пользователь №: 883 Спасибо сказали: 0 раз(а) Репутация: 0 |
Подниму тему. Библиотеку прикрутил нормально. Проблема в русских символах под виндой. Не создает файлы где в названии или пути присутствуют русские символы.. Уже вертел и кодировкой от Qt и от буста и от самого libtorrent'a, но никак не могу заставить их нормально восприниматься. Ради интереса выкачал qBittorrent под винду, но и там такая же проблема
Интересно то что в линуксе работает все нормально (если стоит локаль UTF-8 ), а тут фиг. Может кто уже сталкивался с таким да сможет подсказать как решить данную проблему? Сообщение отредактировал XpycT - 14.8.2009, 20:47 |
|
|
Текстовая версия | Сейчас: 12.12.2024, 12:45 |