PDA

Bekijk de volledige versie : DCGET: консольная утилита для скачивания файлов в DC++ сетях



angel_il
27-02-2008, 16:48
Я тут на досуге выложил релиз консольного клиента для сетей DC++. Cерверная часть является форком shakespeer, относитльно шекспира доработана мультитредовая закачка с разных источников и убраны некоторые баги, плюс добавлены новые :).
Делал именно под нашу коробочку, но и на нормальном PC работает.
Клиент позволяет:
* посылать сообщения в чат
* искать по TTH
* искать по имени
* скачивать по TTH
* скачивать по маске
* что то еще :)

Клиент не интерактивный, т.е. по использованию похож на wget

качать сырцы так (нужен svn)
создаем директорию например в /home/ projects
заходим туда
выполняем


svn co https://dcget.svn.sourceforge.net/svnroot/dcget dcget
затем в поддиректории shakespeer выполняем
make
должно собраться
потом в корне dcget тоже делаем

make
получим файл dcget

использовать так
./dcget --search "text"
./dcget --download "TTH:cумма"

MobyDick
27-02-2008, 17:47
А можешь выложить собранную?

angel_il
27-02-2008, 18:24
выложу но мне интересно было бы если бы кто то попробовал бы собрать у себя.

nightrus
27-02-2008, 19:15
1. shakespeer
...
linking sphubd
/opt/bin/ld: cannot find -liconv

angel_il
27-02-2008, 19:27
можно поставить пакет iconv я тут на днях его выкладывал в теме про svn

nightrus
27-02-2008, 19:33
да, так и сделал, shakrspeer собрался..

2. сборка dcget


rm -f libspclient.a
ar cru libspclient.a hublist.o spclient.o spclient_cmd.o spclient_send.o country_map.o cfg.o filelist.o filelist_xml.o filelist_dclst.o dcget.o
ranlib libspclient.a
make: *** No rule to make target `lib/splib/libsplib.a', needed by `dcget'. Stop.

angel_il
27-02-2008, 19:40
да, так и сделал, shakrspeer собрался..

2. сборка dcget


rm -f libspclient.a
ar cru libspclient.a hublist.o spclient.o spclient_cmd.o spclient_send.o country_map.o cfg.o filelist.o filelist_xml.o filelist_dclst.o dcget.o
ranlib libspclient.a
make: *** No rule to make target `lib/splib/libsplib.a', needed by `dcget'. Stop.


подправлю
пока можно скомпилить так
cd lib/splib
make

nightrus
27-02-2008, 19:44
так и сделал ;) собралась либа

3. сборка dcget далее

linking dcget
/opt/bin/ld: cannot find -lconfuse

где взять?

angel_il
27-02-2008, 19:47
confuse я выкладывал в теме про shakespeer :) сейчас ссылку найду

angel_il
27-02-2008, 20:06
не нашел, щас выложу.
пробуй.

angel_il
27-02-2008, 20:43
надо еще напильником поработать

angel_il
27-02-2008, 21:12
заменил библиотеку libconfuse, в первый раз как то криво собралась.

nightrus
27-02-2008, 21:55
не видит функцию


linking dcget
/opt/lib/gcc/mipsel-linux-uclibc/4.1.1/../../../libconfuse.a(confuse.o): In function `cfg_include':
/home/makesub/confuse-2.6/src/confuse.c:1231: undefined reference to `dcgettext'
/opt/lib/gcc/mipsel-linux-uclibc/4.1.1/../../../libconfuse.a(confuse.o): In function `cfg_getopt':
/home/makesub/confuse-2.6/src/confuse.c:176: undefined reference to `dcgettext'
/home/makesub/confuse-2.6/src/confuse.c:154: undefined reference to `dcgettext'
/opt/lib/gcc/mipsel-linux-uclibc/4.1.1/../../../libconfuse.a(confuse.o): In function `cfg_parse_internal':
/home/makesub/confuse-2.6/src/confuse.c:984: undefined reference to `dcgettext'
/home/makesub/confuse-2.6/src/confuse.c:802: undefined reference to `dcgettext'
/opt/lib/gcc/mipsel-linux-uclibc/4.1.1/../../../libconfuse.a(confuse.o):/home/makesub/confuse-2.6/src/confuse.c:914: more undefined references to `dcgettext' follow
/opt/lib/gcc/mipsel-linux-uclibc/4.1.1/../../../libconfuse.a(confuse.o): In function `cfg_init':
/home/makesub/confuse-2.6/src/confuse.c:1114: undefined reference to `bindtextdomain'
/opt/lib/gcc/mipsel-linux-uclibc/4.1.1/../../../libconfuse.a(confuse.o): In function `cfg_setopt':
/home/makesub/confuse-2.6/src/confuse.c:621: undefined reference to `dcgettext'
/home/makesub/confuse-2.6/src/confuse.c:648: undefined reference to `dcgettext'
/home/makesub/confuse-2.6/src/confuse.c:615: undefined reference to `dcgettext'
/home/makesub/confuse-2.6/src/confuse.c:641: undefined reference to `dcgettext'
/home/makesub/confuse-2.6/src/confuse.c:698: undefined reference to `dcgettext'
/opt/lib/gcc/mipsel-linux-uclibc/4.1.1/../../../libconfuse.a(confuse.o):/home/makesub/confuse-2.6/src/confuse.c:590: more undefined references to `dcgettext' follow
collect2: ld returned 1 exit status


пакет gettext поставил, libintl.h в /opt/include присутствует.. что подкрутить?

angel_il
27-02-2008, 22:02
только что нашел крайне неприятный баг, обнови версию dcget

svn up

angel_il
27-02-2008, 22:05
не видит функцию


linking dcget
/opt/lib/gcc/mipsel-linux-uclibc/4.1.1/../../../libconfuse.a(confuse.o): In function `cfg_include':
/home/makesub/confuse-2.6/src/confuse.c:1231: undefined reference to `dcgettext'
/opt/lib/gcc/mipsel-linux-uclibc/4.1.1/../../../libconfuse.a(confuse.o): In function `cfg_getopt':
/home/makesub/confuse-2.6/src/confuse.c:176: undefined reference to `dcgettext'
/home/makesub/confuse-2.6/src/confuse.c:154: undefined reference to `dcgettext'
/opt/lib/gcc/mipsel-linux-uclibc/4.1.1/../../../libconfuse.a(confuse.o): In function `cfg_parse_internal':
/home/makesub/confuse-2.6/src/confuse.c:984: undefined reference to `dcgettext'
/home/makesub/confuse-2.6/src/confuse.c:802: undefined reference to `dcgettext'
/opt/lib/gcc/mipsel-linux-uclibc/4.1.1/../../../libconfuse.a(confuse.o):/home/makesub/confuse-2.6/src/confuse.c:914: more undefined references to `dcgettext' follow
/opt/lib/gcc/mipsel-linux-uclibc/4.1.1/../../../libconfuse.a(confuse.o): In function `cfg_init':
/home/makesub/confuse-2.6/src/confuse.c:1114: undefined reference to `bindtextdomain'
/opt/lib/gcc/mipsel-linux-uclibc/4.1.1/../../../libconfuse.a(confuse.o): In function `cfg_setopt':
/home/makesub/confuse-2.6/src/confuse.c:621: undefined reference to `dcgettext'
/home/makesub/confuse-2.6/src/confuse.c:648: undefined reference to `dcgettext'
/home/makesub/confuse-2.6/src/confuse.c:615: undefined reference to `dcgettext'
/home/makesub/confuse-2.6/src/confuse.c:641: undefined reference to `dcgettext'
/home/makesub/confuse-2.6/src/confuse.c:698: undefined reference to `dcgettext'
/opt/lib/gcc/mipsel-linux-uclibc/4.1.1/../../../libconfuse.a(confuse.o):/home/makesub/confuse-2.6/src/confuse.c:590: more undefined references to `dcgettext' follow
collect2: ld returned 1 exit status


пакет gettext поставил, libintl.h в /opt/include присутствует.. что подкрутить?
что то я таки накосячил со сборкой видимо confuse, поковыряюсь завтра...

angel_il
28-02-2008, 06:14
на работе посмотрел у меня dcget собран с confuse статически

$ldd dcget
linux-gate.so.1 => (0xffffe000)
libiconv.so.2 => /usr/lib/libiconv.so.2 (0xb7e14000)
libbz2.so.1 => /lib/libbz2.so.1 (0xb7e04000)
libexpat.so.0 => /usr/lib/libexpat.so.0 (0xb7de4000)
libevent-1.3a.so.1 => /usr/lib/libevent-1.3a.so.1 (0xb7dcf000)
libresolv.so.2 => /lib/libresolv.so.2 (0xb7dbb000)
libc.so.6 => /lib/libc.so.6 (0xb7c8d000)
/lib/ld-linux.so.2 (0xb7efd000)

наверное я его положу в проект.

angel_il
28-02-2008, 11:46
вобщем поправил Makefile, добавил проверок.
теперь должно все само собираться

nightrus
28-02-2008, 13:05
обновил, + пришлось еще поставить пакет flex, в ручную прописать альтернативу

/opt/bin/update-alternatives --install /opt/bin/lex lex /opt/bin/flex 80

и все равно ошибки (может как альтернатива, эта тулза не подходит?)

make[1]: Entering directory `/opt/tmp/dcget/dcget/lib/confuse'
lex -Pcfg_yy -olexer.c lexer.l
lexer.l:72: bad character: /
lexer.l:72: bad character: *
lexer.l:72: unknown error processing section 1
lexer.l:72: unknown error processing section 1
lexer.l:72: unknown error processing section 1
lexer.l:73: bad character: *
lexer.l:73: bad character: /
make[1]: *** [lexer.c] Error 1

angel_il
28-02-2008, 13:38
>и все равно ошибки (может как альтернатива, эта тулза не подходит?)
весьма вероятно, по идее flex он ставится с buildroot? сейчас гляну как я шекспира собирал.

ABATAPA
28-02-2008, 15:59
Я тут на досуге выложил релиз консольного клиента для сетей DC++. Cерверная часть является форком shakespeer, относитльно шекспира доработана мультитредовая закачка с разных источников и убраны некоторые баги, плюс добавлены новые :).
Делал именно под нашу коробочку, но и на нормальном PC работает.


Ваш анонс?
http://www.linux.org.ru/view-message.jsp?msgid=2540822

sergicus
28-02-2008, 16:07
любопытная идея. Вы не бросайте проект

sergicus
28-02-2008, 16:21
Попробовал собрать
выбрасывает с такой ошибкой


log.c: В функции ‘sp_log_reinit’
log.c:219: предупреждение: implicit declaration of function ‘event_set_log_callback’
command was: cc -Wp,-MD,.deps/log.d -c -o log.o log.c -g -O2 -Wall -DVERSION="0.9.5" -DPACKAGE="shakespeer" -I../splib -I../spclient -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DMISSING_FGETLN -DCOREDUMPS_ENABLED=1
make[1]: *** [log.o] Ошибка 1
make[1]: Leaving directory `/home/sergei/dcget/shakespeer/splib'
make: *** [all] Ошибка 1
sergei@sergei-dom:~/dcget/shakespeer$


собираю не на роутере (пока) а на обычном компе.
Какие данные Вам нужны что бы исправить эту ошибку
Стоиn у меня UBUNTU 7.10 со всеми обновлениями
Вот вывод lspci


lspci
00:00.0 Host bridge: Intel Corporation 82G33/G31/P35/P31 Express DRAM Controller (rev 02)
00:01.0 PCI bridge: Intel Corporation 82G33/G31/P35/P31 Express PCI Express Root Port (rev 02)
00:03.0 Communication controller: Intel Corporation 82G33/G31/P35/P31 Express MEI Controller (rev 02)
00:19.0 Ethernet controller: Intel Corporation 82801I (ICH9 Family) Gigabit Ethernet Controller (rev 02)
00:1a.0 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #4 (rev 02)
00:1a.1 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #5 (rev 02)
00:1a.2 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #6 (rev 02)
00:1a.7 USB Controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #2 (rev 02)
00:1c.0 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 1 (rev 02)
00:1c.1 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 2 (rev 02)
00:1c.2 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 3 (rev 02)
00:1c.3 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 4 (rev 02)
00:1c.4 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 5 (rev 02)
00:1d.0 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #1 (rev 02)
00:1d.1 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #2 (rev 02)
00:1d.2 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #3 (rev 02)
00:1d.7 USB Controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #1 (rev 02)
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 92)
00:1f.0 ISA bridge: Intel Corporation 82801IH (ICH9DH) LPC Interface Controller (rev 02)
00:1f.2 IDE interface: Intel Corporation 82801IR/IO/IH (ICH9R/DO/DH) 4 port SATA IDE Controller (rev 02)
00:1f.3 SMBus: Intel Corporation 82801I (ICH9 Family) SMBus Controller (rev 02)
00:1f.5 IDE interface: Intel Corporation 82801I (ICH9 Family) 2 port SATA IDE Controller (rev 02)
01:00.0 VGA compatible controller: nVidia Corporation Unknown device 0611 (rev a2)
03:00.0 IDE interface: Marvell Technology Group Ltd. 88SE6101 single-port PATA133 interface (rev b2)
07:02.0 Multimedia audio controller: Creative Labs SB Audigy LS
07:03.0 FireWire (IEEE 1394): Texas Instruments TSB43AB22/A IEEE-1394a-2000 Controller (PHY/Link)

angel_il
28-02-2008, 16:46
вообще нужны
libevent, libiconv, libresolv, expat

angel_il
28-02-2008, 16:50
Попробовал собрать
выбрасывает с такой ошибкой


log.c: В функции ‘sp_log_reinit’
log.c:219: предупреждение: implicit declaration of function ‘event_set_log_callback’
command was: cc -Wp,-MD,.deps/log.d -c -o log.o log.c -g -O2 -Wall -DVERSION="0.9.5" -DPACKAGE="shakespeer" -I../splib -I../spclient -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DMISSING_FGETLN -DCOREDUMPS_ENABLED=1
make[1]: *** [log.o] Ошибка 1
make[1]: Leaving directory `/home/sergei/dcget/shakespeer/splib'
make: *** [all] Ошибка 1
sergei@sergei-dom:~/dcget/shakespeer$




можно еще несколько строк предшествующих этому сообщению

angel_il
28-02-2008, 17:32
Ваш анонс?
http://www.linux.org.ru/view-message.jsp?msgid=2540822

угу, хочется найти кого то кто поможет.

al37919
28-02-2008, 18:22
root@wl500g,/opt/home/src> svn co https://dcget.svn.sourceforge.net/svnroot/dcget dcget
Error validating server certificate for 'https://dcget.svn.sourceforge.net:443':
- The certificate is not issued by a trusted authority. Use the
fingerprint to validate the certificate manually!
Certificate information:
- Hostname: *.svn.sourceforge.net
- Valid: from Oct 9 14:15:07 2007 GMT until Dec 8 15:15:07 2008 GMT
- Issuer: Equifax Secure Certificate Authority, Equifax, US
- Fingerprint: fb:75:6c:40:58:ae:21:8c:63:dd:1b:7b:6a:7d:bb:8c:74 :36:e7:8a
(R)eject, accept (t)emporarily or accept (p)ermanently? t
svn: PROPFIND request failed on '/svnroot/dcget'
svn: PROPFIND of '/svnroot/dcget': Could not read status line: connection was closed by server. (https://dcget.svn.sourceforge.net)

что не так?

angel_il
28-02-2008, 19:02
make[1]: Entering directory `/opt/tmp/dcget/dcget/lib/confuse'
lex -Pcfg_yy -olexer.c lexer.l
lexer.l:72: bad character: /
lexer.l:72: bad character: *
lexer.l:72: unknown error processing section 1
lexer.l:72: unknown error processing section 1
lexer.l:72: unknown error processing section 1
lexer.l:73: bad character: *
lexer.l:73: bad character: /
make[1]: *** [lexer.c] Error 1


разобрался проблема с flex в нашей коробке он не понимает пробела в первой позиции, надо в 72 строке убрать пробел перед /

angel_il
28-02-2008, 19:04
что не так?

может попробовать "p"

al37919
28-02-2008, 19:20
потрясающе :confused: помогло :)

angel_il
28-02-2008, 19:35
потрясающе :confused: помогло :)

парадокс :) по идее t тоже должно пускать но времеено.

nightrus
28-02-2008, 22:23
разобрался проблема с flex в нашей коробке он не понимает пробела в первой позиции, надо в 72 строке убрать пробел перед /

все, собралсо, ура! :)
делай правило для make install

angel_il
29-02-2008, 06:55
все, собралсо, ура! :)
делай правило для make install

можешь просто скопировать исполняемые в /opt/bin
dcget
shakespeer/sphubd/sphubd
shakespeer/sphubd/sphashd
shakespeer/sphubd/share_tool
shakespeer/sphubd/queue_tool

я сейчас пока работаю над configure

al37919
29-02-2008, 07:14
вот что выдает optware при попытке сделать make libiconv:

Use of libiconv is deprecated. Use gconv-modules instead
Здесь проапгрейдить до gconv-modules не получится?

angel_il
29-02-2008, 10:13
вот что выдает optware при попытке сделать make libiconv:

Use of libiconv is deprecated. Use gconv-modules instead
Здесь проапгрейдить до gconv-modules не получится?

Знать бы как.

sergicus
01-03-2008, 07:02
можно поставить пакет iconv я тут на днях его выкладывал в теме про svn

а где это

и где его найти в репозитариях ubuntu

а то у меня выводит только
sudo apt-cache search liconv


gpgp - gnome front-end to GnuPG - a free PGP replacement

angel_il
01-03-2008, 11:53
тут
http://wl500g.info/showpost.php?p=85065&postcount=13

MobyDick
01-03-2008, 14:31
Ребята выложите пожалуйста собранную версию!

angel_il
01-03-2008, 15:20
выложил пакет.

angel_il
03-03-2008, 15:29
добавил опцию
--get-filelist

angel_il
03-03-2008, 15:31
Может кто то поможет сделать простенький веб-интерфейс для урпавления утилитой?

angel_il
05-03-2008, 12:23
ну что ж, добавил еще немного функционала
пару опций
--get-userlist
--get-filelist

PS: у кого то хоть что то получилось?

BearIp
30-03-2008, 16:40
PS: у кого то хоть что то получилось?

у меня не получаеться. пробывал скачать исходники- падает при make
в папке shakespeer.
вот так:
make[1]: Entering directory `/opt/projects/dcget/shakespeer/splib'
compiling args.c
/bin/sh: cc: not found

пробывал доставить пакеты но cc не появился.

а где можно последний откомпилированый ipk взять?? чтоб не заморачиваться со сборкой.

angel_il
31-03-2008, 18:48
выложу на неделе, сейчас добавляю sqlite. И вообще в марте не до того было...

BearIp
31-03-2008, 19:52
выложу на неделе, сейчас добавляю sqlite. И вообще в марте не до того было...

заранее спасиб. ждем с нетерпеньем. и если можно немно текста как всем этим пользоваться.

Mr-Jack
03-04-2008, 19:21
ну что ж, добавил еще немного функционала
пару опций
--get-userlist
--get-filelist

PS: у кого то хоть что то получилось?
собрал... не ищет, не качает, вываливается с ошибкой:

[jack@rampant ~]$ /usr/local/bin/dcget --search "Апостол"
Read hublist: [172.24.197.200], [172.24.167.195], [172.24.146.147], [172.24.16.67], [172.24.16.38],
wait for connection...connected
start search [Апостол] .................................................. .................................................. .................... ok
aborted sig = 15, sphubd(7555)

в sphubd.log пишет:

Thu 3 19:43:58 [6534] (util.c print_command:170) -> (fd 14) user-update$172.24.16.38$Nayada$[0]$<FlylinkDC++ V:(r312),M:A,H:7/0/0,S:15>$0.005 $nayada@lipet
sk.ru$88157954106$0$0|
Thu 3 19:43:58 [6534] (util.c print_command:170) <- (fd 20) <AquGen> :..::.16:... . .. ... .....:.16::..:
Thu 3 19:43:58 [6534] (util.c print_command:170) -> (fd 14) public-message$172.24.16.38$AquGen$:АК::М16:Кто в кс без лагов:М16::АК:|
Thu 3 19:43:58 ***** [6534] (ui.c ui_err_event:232) why = 0x21 *****
Thu 3 19:43:58 [6534] (ui.c ui_close_connection:238) closing down ui 0x9fa8c40

куда копать?

BearIp
08-04-2008, 12:48
Ну может кто нибуть выложит последнюю сборку.

korotetsky
08-04-2008, 15:37
Я тут на досуге выложил релиз консольного клиента для сетей DC++
...
Делал именно под нашу коробочку, но и на нормальном PC работает.
о какой коробочке идет речь? как я понял о 500хх? обьясните кто-нибудь для тугих в этом деле как это работает :) меня интересует сможет ли это либо что-то подобное работать на wl-700ge и что для этого нужно. вопрос где-то уже задавал, сорри за дубль, ответов не нашел

angel_il
11-04-2008, 17:52
я не забыл... просто на работе завал...

BearIp
21-04-2008, 20:58
я не забыл... просто на работе завал...

:( все ждемс.

nikita1234
24-04-2008, 21:57
Установил из пакета, при запуске выдает ошибку.
aborted sig = 11, sphubd(-1) Как исправить?

Также пробовал компилировать по инструкции. Также выводит ошибку:
making all in splib
make[1]: Entering directory `/mnt/dcc/dcget/shakespeer/splib'
compiling args.c
/bin/sh: cc: not found
command was: cc -Wp,-MD,.deps/args.d -c -o args.o args.c -g -O2 -Wall -DVERSION="0.9.5" -DPACKAGE="shakespeer" -I../splib -I../spclient -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DMISSING_FGETLN -DCOREDUMPS_ENABLED=1
make[1]: *** [args.o] Error 1
make[1]: Leaving directory `/mnt/dcc/dcget/shakespeer/splib'
make: *** [all] Error 1
Что тут можно сделать?

nikita1234
28-04-2008, 20:17
Скачал отдельно buildroot, устанавливаю следующим образом:
[admin@Test /mnt]$ ipkg install buildroot_4.1.1-13_mipsel.ipk
Содержимое директории mnt:
[admin@Test /mnt]$ ls -al
drwxr-xr-x 7 admin root 4096 Jan 1 03:30 .
drwxr-xr-x 1 admin root 118 Mar 14 2008 ..
-rwxr--r-- 1 admin root 44216595 Apr 27 2008 buildroot_4.1.1-13_mipsel.ipk
Выдает ошибку:
Nothing to be done
An error ocurred, return value: 4.
Collected errors:
Cannot find package buildroot_4.1.1-13_mipsel.ipk.
Check the spelling or perhaps run 'ipkg update'
Почему пакет не находится системой?

Reyter
29-04-2008, 19:17
Скачал отдельно buildrootВыдает ошибку:
Почему пакет не находится системой?
Попробуйте так:

ipkg install /mnt/buildroot_4.1.1-13_mipsel.ipk

nikita1234
30-04-2008, 07:22
В процессе компиляции возникают ошибки, первая из них:
Unicode data from unicode-spec/UnicodeData-3.2.0.txt
make[2]: *** [gunichartables.h] Terminated
make[2]: Leaving directory `/mnt/dcc/dcget/shakespeer/splib'
make[1]: *** [all] Error 1
make[1]: Leaving directory `/mnt/dcc/dcget/shakespeer'

Когда запускаешь из каталога dcget, то компиляция выполняется дальше, но потом пишет:
ar cru libspclient.a hublist.o spclient.o spclient_cmd.o spclient_send.o country_map.o cfg.o filelist.o filelist_xml.o filelist_dclst.o dcget.o
ranlib libspclient.a
make: *** No rule to make target `lib/splib/libsplib.a', needed by `dcget'. Stop.

Полный лог компиляции во вложении.

Reyter
30-04-2008, 08:10
В процессе компиляции возникают ошибки.
На первой же странице топика есть решение проблемы

nikita1234
04-05-2008, 21:10
Не заметил, но все равно библиотека не собирается, вроде ошибок не выдает, а файл libsplib.a не появляется. Лог:


[admin@Test splib]$ make
make: Warning: File `/opt/include/assert.h' has modification time 1,1e+09 s in the future
compiling args.c
compiling mkpath.c
compiling util.c
compiling bz2.c
compiling bloom.c
compiling tiger.c
compiling sboxes.c
compiling he3.c
compiling base32.c
compiling log.c
compiling tigertree.c
compiling io.c
compiling notification_center.c
compiling encoding.c
compiling rx.c
compiling test_connection.c
compiling dstring.c
compiling dstring_url.c
compiling cmd_table.c
compiling quote.c
compiling nmdc.c
compiling base64.c
compiling xerr.c
compiling xstr.c
perl -w gen-unicode-tables.pl -both 3.2.0 unicode-spec
Creating decomp table
Creating property table
Composition exlusions from unicode-spec/CompositionExclusions-3.2.0.txt
Unicode data from unicode-spec/UnicodeData-3.2.0.txt
make: *** [gunibreak.h] Terminated

MoD
13-05-2008, 15:06
There is a bug in Shakespeer that prevents Revconnect (and probably other clients) to retrieve filelist. The bug is in client_cmd.c file, function cc_cmd_UGetBlock. The problem is because that DC command UGetBlock second parameter can be negative number. The function cant handle that situation.


The correct function is:


static int cc_cmd_UGetBlock(void *data, int argc, char **argv)
{
cc_t *cc = data;

rx_subs_t *subs = rx_search(argv[0], "([0-9]+) (-?[0-9]+) (.*)");
if(subs == NULL || subs->nsubs != 3)
{
INFO("invalid UGetBlock request");
rx_free_subs(subs);
return cc_send_command(cc, "$Error Invalid request|");
}

/* UGetBlock send filenames in UTF-8 already */
char *filename_utf8 = subs->subs[2];
if(filename_utf8 == NULL)
{
WARNING("Invalid filename encoding in UGetBlock request:"
" [%s] (ignored command)", argv[0]);
rx_free_subs(subs);
return cc_send_command(cc, "$Error File Not Available|");
}

uint64_t offset = strtoull(subs->subs[0], 0, 10);
uint64_t bytes_to_transfer = strtoull(subs->subs[1], 0, 10);
if(bytes_to_transfer == -1LL)
{
bytes_to_transfer = 0;
}

xerr_t *err = 0;
int rc = cc_upload_prepare(cc, filename_utf8, offset, bytes_to_transfer, &err);
rx_free_subs(subs);
if(rc != 0)
{
rc = cc_send_command(cc, "$Error %s|", xerr_msg(err));
xerr_free(err);
return rc;
}

cc->slot_state = hub_request_upload_slot(cc->hub, cc->nick,
cc->local_filename, cc->filesize);
if(cc->slot_state == SLOT_NONE)
{
return cc_send_command(cc, "$MaxedOut|");
}

return_val_if_fail(cc_send_command(cc, "$Sending %"PRIu64"|",
cc->bytes_to_transfer) == 0, -1);

cc->state = CC_STATE_REQUEST;

return_val_if_fail(cc_start_upload(cc) == 0, -1);
return 1;
}

smiak
14-05-2008, 22:13
Итак я тут начитался но поставил вот так
Сначало установил
ipkg install optware-devel
Потом
ipkg install http://ipkg.nslu2-linux.org/feeds/optware/oleg/cross/stable/buildroot_4.1.1-13_mipsel.ipk
Сделал make в корне dchubб но заматерилось пришлось

ipkg install http://ipkg.nslu2-linux.org/feeds/unslung/wl500g/libiconv_1.11-2_mipsel.ipk
потом make install там же. Чтото получилось дальше никаких ошыбок.

ldd dcget
libiconv.so.2 => /opt/lib/libiconv.so.2 (0x2ab03000)
libbz2.so.1.0 => /opt/lib/libbz2.so.1.0 (0x2aad7000)
libexpat.so.1 => /opt/lib/libexpat.so.1 (0x2ac2d000)
libevent-1.3d.so.1 => /opt/lib/libevent-1.3d.so.1 (0x2ac63000)
libresolv.so.0 => /opt/lib/libresolv.so.0 (0x2aaaa000)
libc.so.0 => /opt/lib/libc.so.0 (0x2ac8c000)
libgcc_s.so.1 => /opt/lib/libgcc_s.so.1 (0x2ad41000)
librt.so.0 => /opt/lib/librt.so.0 (0x2ad60000)
ld-uClibc.so.0 => /opt/lib/ld-uClibc.so.0 (0x2aac0000)
Но теперь когда ввожу например
dcget --search
юзерлист пофиг, выскакивает
Can't run /usr/local/bin/sphubd: No such file or directory

aborted sig = 9, sphubd(-1)
Оказалось в /usr/local нету папки bin даже.
Тут у меня варианты коньчелись и я сосдал папку /usr/local/bin/sphubd
Сейчас долго думает и
dcget --search "Апостол"
----------------------------------------------
dcget.c:1241: test FAILED:
Failed test: sp_connect(sp, working_directory, incomplete_directory, download_directory, client_tag, sphub_daemon) == 0
----------------------------------------------

Я так понимаю не туда заинсталировалось? :rolleyes: или вопше чтото не понятное.

angel_il
17-05-2008, 20:17
в понедельник выйду на работу постараюсь помочь с проблемами.

BearIp
30-05-2008, 19:41
в понедельник выйду на работу постараюсь помочь с проблемами.

Ждемс понедельника :)

Drastic
19-08-2008, 17:01
Я так понял, что понедельника еще небыло?..

In4m
26-09-2008, 12:54
Я так понял, что понедельника еще небыло?..

КАК ВАРИАНТ http://wl500g.info/showthread.php?t=14168
Только надо попросить данного товарища выложить package

angel_il
26-09-2008, 20:06
КАК ВАРИАНТ http://wl500g.info/showthread.php?t=14168
Только надо попросить данного товарища выложить package

да мне стыдно, но лялька требует очень много внимания, так что интернет стал для меня редким явлением, а на работе 1 проект на внедрении и сопровождение... так что банально нет ни капли времени, но пока не забросил, переводил базу с текстовых файлов на sqlite и запоролся :) надо много чего там переписывать...

BlackKovu
11-04-2009, 15:54
Странная штука просходит. Через раз (в среднем) dcget вылетает при отсылке команты connect sphubd. (последняя команда evbuffer_write в sp_send_sting) Причем ни в одном логе ничего подозрительного.
А на рутете я так полагаю core dump выключены? А как включить?