Author Topic: не могу собрать пропатченную dclib для dc-клиента  (Read 5736 times)

0 Members and 1 Guest are viewing this topic.

Offline vukor

  • Jr. Member
  • **
  • Posts: 99
  • Karma: +0/-0
    • http://vukor.tomsk.ru
Приветствую !

Задача - нужен работающий p2p клиент (поддерживающий DC), который правильно понимает кириллицу, т.е. поддерживает поиск по русским ключевым словам. Система - FreeBSD 6.0.
Что сделал - тут мне посоветовали посмотреть ссылку ftp://slackware.tomsk.ru/soft/network/p2p/. Взял следующие файлы - dcgui-qt-0.3.1.tar.bz2, и патчи к ним - dclib-0.3.1-russian.patch.gz, dcgui-qt-0.3.1-russian.patch.gz. Дальнейшие действия:
1) перемещаюсь в каталог с выкачанными архивами, делаю так:
#tar -xjf dcgui-qt-0.3.1.tar.bz2
Появляются каталоги dclib-0.3.1 и dcgui-qt-0.3.1. Дальше делаю:
#zcat dclib-0.3.1-russian.patch.gz > dclib-0.3.1-russian.patch
#zcat dcgui-qt-0.3.1-russian.patch.gz > dcgui-qt-0.3.1-russian.patch
#patch -p0 <dclib-0.3.1-russian.patch
#patch -p0 <dcgui-qt-0.3.1-russian.patch
2) захожу в каталог dclib-0.3.1/, запускаю confgiure, потом make
через некоторое время получаю ошибку:
...........................
In file included from cconfig.cpp:191:
charset.h: In function `CString cstring_recode(const CString&, int)':
charset.h:51: error: invalid conversion from `char**' to `const char**'
charset.h:51: error:   initializing argument 2 of `size_t libiconv(void*, const char**, size_t*, char**, size_t*)'
*** Error code 1

Stop in /usr/temp/dclib-0.3.1/dclib.
*** Error code 1

Stop in /usr/temp/dclib-0.3.1/dclib.
*** Error code 1

Stop in /usr/temp/dclib-0.3.1.
*** Error code 1

Stop in /usr/temp/dclib-0.3.1.

Кто-нть встречался с этой проблемой? Пожалуйста поделитесь решением. А то исходники править неохота. :(



Offline deepwalker

  • Hero Member
  • *****
  • Posts: 766
  • Karma: +8/-6
Примени патчи к правильной версии, для которой они собственно и предназначены. У меня было именно это : )) Спутал случайно, патчи то к предыдущей версии шли, потом парился : ))

Offline vukor

  • Jr. Member
  • **
  • Posts: 99
  • Karma: +0/-0
    • http://vukor.tomsk.ru
Quote
Примени патчи к правильной версии, для которой они собственно и предназначены. У меня было именно это : )) Спутал случайно, патчи то к предыдущей версии шли, потом парился : ))
[snapback]6464[/snapback]

Я тебя не понял.
Патчи такие - dclib-0.3.1-russian.patch.gz и dcgui-qt-0.3.1-russian.patch.gz для
dclib-0.3.1 и dcgui-qt-0.3.1 соответственно. Исходники этой либы и клиента извлечены из архива dcgui-qt-0.3.1.tar.bz2. Или я что-то не так делаю? Объясни поподробнее, пожалуйста.

Offline mars

  • Sr. Member
  • ****
  • Posts: 302
  • Karma: +0/-0
а перед тем как патчи прикладывать ты заходишь в нужный каталог?
т.е.
Code: [Select]
#cd dclib-0.3.1
#patch -p0 <dclib-0.3.1-russian.patch

может вот такой клиент стоит попробовать /usr/ports/net/dctc-gui-qt ?
« Last Edit: December 23, 2005, 01:23:31 by mars »

Offline deepwalker

  • Hero Member
  • *****
  • Posts: 766
  • Karma: +8/-6
Извини, не внимательно читал : ((
Просто у меня ошибка точка в точку такая же была - пропатчил потом заново и все заработало. Только у меня слака, но в данном случае по моему не принципиально.
DC брал на slackware.tomsk.ru
И патчил я по одному файлику - вследствие неопытности
« Last Edit: December 23, 2005, 01:28:51 by deepwalker »

Offline vukor

  • Jr. Member
  • **
  • Posts: 99
  • Karma: +0/-0
    • http://vukor.tomsk.ru
Quote
а перед тем как патчи прикладывать ты заходишь в нужный каталог?
т.е.
Code: [Select]
#cd dclib-0.3.1
#patch -p0 <dclib-0.3.1-russian.patch

может вот такой клиент стоит попробовать /usr/ports/net/dctc-gui-qt ?
[snapback]6468[/snapback]

Насколько я понял, для того, чтобы пропатчить библиотеку (и клиент тоже), нужно находиться не в каталоге dclib-0.3.1/ (dcgui-qt-0.3.1/), а на уровень выше - т.е. в ../dclib-0.3.1/.
Вот так:

/usr/temp|# ls -l
total 1636
drwxr-xr-x  4 root   wheel     1024 28 май  2004 dcgui-qt-0.3.1
-rw-r--r--  1 bugor  bugor    27241 22 дек 15:55 dcgui-qt-0.3.1-russian.patch
-rw-r--r--  1 bugor  bugor  1611392 19 дек 01:05 dcgui-qt-0.3.1.tar.bz2
drwxr-xr-x  4 root   wheel      512 28 май  2004 dclib-0.3.1
-rw-r--r--  1 bugor  bugor     2865 22 дек 15:55 dclib-0.3.1-russian.patch
/usr/temp|# patch -p0 <dclib-0.3.1-russian.patch
Hmm...  Looks like a unified diff to me...
The text leading up to this was:
--------------------------
|diff -Naur dclib-0.3.1/dclib/cconfig.cpp dclib-0.3.1-new/dclib/cconfig.cpp
|--- dclib-0.3.1/dclib/cconfig.cpp      2004-05-25 01:38:44.000000000 +0700
|+++ dclib-0.3.1-new/dclib/cconfig.cpp  2004-06-03 10:41:03.000000000 +0700
--------------------------
Patching file dclib-0.3.1/dclib/cconfig.cpp using Plan A...
Hunk #1 succeeded at 188.
Hunk #2 succeeded at 2697.
Hmm...  The next patch looks like a unified diff to me...
The text leading up to this was:
--------------------------
|diff -Naur dclib-0.3.1/dclib/cfilemanager.cpp dclib-0.3.1-new/dclib/cfilemanager.cpp
|--- dclib-0.3.1/dclib/cfilemanager.cpp 2004-05-25 01:38:45.000000000 +0700
|+++ dclib-0.3.1-new/dclib/cfilemanager.cpp     2004-06-03 10:39:40.000000000 +0700
--------------------------
Patching file dclib-0.3.1/dclib/cfilemanager.cpp using Plan A...
Hunk #1 succeeded at 41.
Hunk #2 succeeded at 538.
Hmm...  The next patch looks like a unified diff to me...
The text leading up to this was:
--------------------------
|diff -Naur dclib-0.3.1/dclib/charset.h dclib-0.3.1-new/dclib/charset.h
|--- dclib-0.3.1/dclib/charset.h        1970-01-01 07:00:00.000000000 +0700
|+++ dclib-0.3.1-new/dclib/charset.h    2004-06-03 16:25:02.000000000 +0700
--------------------------
(Creating file dclib-0.3.1/dclib/charset.h...)
Patching file dclib-0.3.1/dclib/charset.h using Plan A...
Hunk #1 succeeded at 1.
done
/usr/temp|#

Так, насчет dctc-gui-qt. Cтавил я этот клиент, не знаю почему, но он виснет у меня. И еще оставляет после себя кучку процессов dctc. Приходиться убивать их потом. Да и к тому же предполагаю, что поиск по ключевым словам на русском он не поддерживает. Или я не прав?
Если есть какие идеи по теме, поделись.

Offline Krueger

  • Full Member
  • ***
  • Posts: 195
  • Karma: +0/-0
    • http://www.zaonsv.ru
Quote
а перед тем как патчи прикладывать ты заходишь в нужный каталог?
т.е.
Code: [Select]
#cd dclib-0.3.1
#patch -p0 <dclib-0.3.1-russian.patch

может вот такой клиент стоит попробовать /usr/ports/net/dctc-gui-qt ?
[snapback]6468[/snapback]
пытался поставить dctc-gui и dctc-gui-qt
ни один из них не соединяется с сервером, хотя выглядят красиво. но похоже за всё надо платить ;)

Offline Krueger

  • Full Member
  • ***
  • Posts: 195
  • Karma: +0/-0
    • http://www.zaonsv.ru
Quote
пытался поставить dctc-gui и dctc-gui-qt
ни один из них не соединяется с сервером, хотя выглядят красиво. но похоже за всё надо платить ;)
[snapback]6477[/snapback]
сделал, чтобы заработало dctc-gui, проблем с русским языком нету никаких. собственно, как и русского языка, как такового:-) ни ввод, ни вывод кирилицы не поддерживается, радует отсутствие кракозябер, но это пожалуй единственное (кроме интерфейса) что радует. забил, снёс. dc-gui-qt не могу постаивить ругается:
dctc-gui-qt-0.0.6 is marked as broken: Build fails.
кто-нибудь знает как пофиксить?

Offline vukor

  • Jr. Member
  • **
  • Posts: 99
  • Karma: +0/-0
    • http://vukor.tomsk.ru

Offline anonymous

  • Newbie
  • *
  • Posts: 23
  • Karma: +0/-0
ftp://ftp.slackware.tomsk.ru/soft/network...t-0.3.7.tar.bz2

Можешь этот клиент ещё попробовать.

Offline Dimmus

  • Sr. Member
  • ****
  • Posts: 438
  • Karma: +0/-0
    • http://dimmus.com
он все равно базед на dclib... :) так что русских буковок не видать.
залил туда свеженький.

Offline Terminator

  • Jr. Member
  • **
  • Posts: 80
  • Karma: +0/-0
    • Motor-club
Всё там видать. Единственная его проблема он по русски искать не умеет.
Александр.

Offline Dimmus

  • Sr. Member
  • ****
  • Posts: 438
  • Karma: +0/-0
    • http://dimmus.com
Я именно про это и имел ввиду. :unsure: