gentoo.ru
Официальная конференция Direct Connect клиента EiskaltDC++
eiskaltdc@conference.gentoo.ru
Воскресенье, 22 февраля 2015< ^ >
dhamp установил(а) тему: Конференция разработчиков EiskaltDC++ | Conference of EiskaltDC++ developers
Site: https://code.google.com/p/eiskaltdc/
Logs: http://gentoo.ru/jabber/logs/eiskaltdc@conference.gentoo.ru/2014/
Bug tracker: https://code.google.com/p/eiskaltdc/issues/list
Notes for developers: https://code.google.com/p/eiskaltdc/wiki/notes_for_developers
How To Ask Questions The Smart Way: http://catb.org/%7Eesr/faqs/smart-questions.html
Как правильно задавать вопросы: http://parallel.ru/cluster/smart-questions-ru.html
Last stable release: 2.2.9 (2013-08-29)
Release schedule:
* 2015-xx-xx Release EiskaltDC++ 2.3.0
Конфигурация комнаты
Участники комнаты

GMT+3
[00:01:28] <pavelvat> dhamp_ :а смысл, ведь тут и так стоит ${ICONV_LIBRARIES} а за этим как раз содержимое переменной ${APPLE_LIBS}: https://github.com/eiskaltdcpp/eiskaltdcpp/blob/2.3.x/dcpp/CMakeLists.txt#L86
так что это будет просто дублированием.
[00:01:53] <pavelvat> т.е. использование ${APPLE_LIBS} бессмысленно
[00:02:25] <dhamp_ > pavelvat, make VERBOSE=1 поможет тебе понять есть ли -liconv вообще, вполне возможно он есть но не в том месте, или его нет вообще
[00:07:03] <dhamp_ > > [23:48:26] <pavelvat> dhamp_ : не знаю насколько часто, да наверное можно заменить на 1 GB, такое изменение на что-то вообще влияет в плане потребления памяти клиентом?
большой лист после парсинга просто по любому отъест больше оперативки, во время парсинга разницы быть не должно
[00:08:15] <pavelvat> dhamp_ : в чём тогда смысл этого ограничения? Может из-за того что на старых машинах оперативная память исчерпается прежде чем весь лист распарсится?
[00:09:12] <dhamp_ > я когда свой рабочий проект пробовал собрать через mxe в статике, много либ не линковалось, ибо либы все статичные и cmake их эскалирует вплоть до бинаря
[00:09:49] <pavelvat> dhamp_ : хочешь 2 GB поставьпо умолчанию, да хоть 4, какой там вообще предел максимальный?
[00:10:28] <dhamp_ > > [23:59:04] <pavelvat> dhamp_ : в чём тогда смысл этого ограничения? Может из-за того что на старых машинах оперативная память исчерпается прежде чем весь лист распарсится?
парсинг память не ест, ест уже отпарсенный лист, но вот как соотносится(соотношение) эта переменная с тем что будет взято под распарсенный лист, я не могу сказать
[00:13:01] <pavelvat> dhamp_ : http://pastebin.com/SgJfefZ6
-liconv и -lintl там есть, так что дело не в этом, хотя может от порядка и места этих флагов тоже есть зависимость.
[00:14:54] <dhamp_ > -liconv должен быть поckt -lintl
[00:15:00] <dhamp_ > после*
[00:15:04] <dhamp_ > pavelvat, ^^
[00:15:52] <pavelvat> dhamp_ : -liconv там кстати два раза стоит, но оба раза перед -lintl
[00:16:27] <dhamp_ > pavelvat, у тебя там и -lboost_system-mt 2 раза
[00:25:19] <pavelvat> dhamp_ : да, -liconv после -lintl решило проблему, теперь линкуется.
[00:33:54] <pavelvat> dhamp_ : там теперь другие ошибки такого же рода вываливаются, сейчас тогда все отловлю и сделаю коммит.
[00:34:32] <pavelvat> dhamp_ : это касается я так понимаю не только статической сборки под Windows, но и вообще любой статической сборки?
[00:47:29] <dhamp_ > pavelvat, вполне возможно
[00:55:21] nixtrian|home вошёл(а) в комнату
[01:00:50] GitHub_bot вошёл(а) в комнату
[01:00:50] <GitHub_bot> [eiskaltdcpp] @dhamp pushed 1 new commit to dcppsyncv4: https://github.com/eiskaltdcpp/eiskaltdcpp/commit/6ce3dfa3b705da32d242935c42a591313dc86681
[01:00:51] <GitHub_bot> [eiskaltdcpp/dcppsyncv4] add cppchecktargets - Eugene Petrov
[01:01:00] GitHub_bot вышел(а) из комнаты
[01:01:33] GitHub_bot вошёл(а) в комнату
[01:01:33] <GitHub_bot> [eiskaltdcpp] @tka4ev commented on commit cbc3ae5: А нафига тут регистро-зависимость? https://github.com/eiskaltdcpp/eiskaltdcpp/commit/cbc3ae53a1259b5c7a1549e7c824e0b6bc497b6d#commitcomment-9857404
[01:01:43] GitHub_bot вышел(а) из комнаты
[01:19:01] dhamp_ вышел(а) из комнаты: Вышел из Vacuum-IM
[01:20:32] nixtrian|home вышел(а) из комнаты
[01:22:10] nixtrian|home вошёл(а) в комнату
[01:23:11] pavelvat вышел(а) из комнаты
[01:55:56] GitHub_bot вошёл(а) в комнату
[01:55:56] <GitHub_bot> [eiskaltdcpp] @pavelvat pushed 1 new commit to 2.3.x: https://github.com/eiskaltdcpp/eiskaltdcpp/commit/84e3df68d03956d76bd6c2e8159c7304bb75187c
[01:55:57] <GitHub_bot> [eiskaltdcpp/2.3.x] some fixes for static build - Pavel Vatagin
[01:56:06] GitHub_bot вышел(а) из комнаты
[02:20:32] nixtrian|home вышел(а) из комнаты
[02:23:23] nixtrian|home вошёл(а) в комнату
[03:20:05] nixtrian|home вышел(а) из комнаты
[03:23:34] nixtrian|home вошёл(а) в комнату
[04:20:18] nixtrian|home вышел(а) из комнаты
[04:23:02] nixtrian|home вошёл(а) в комнату
[05:19:56] nixtrian|home вышел(а) из комнаты
[05:23:54] nixtrian|home вошёл(а) в комнату
[12:38:47] Tehnick вошёл(а) в комнату
[12:40:40] <Tehnick> > ты не вв курсе есть ли где-то собранные словари для hunspell
В hunspell вроде бы используются текстовые файлы словарей, а не бинарные. Но я не помню наверняка.
[12:42:25] <Tehnick> > К тому же в psi+ вроде как именно hunspell используется
Нет, в Psi+ есть возможность собрать с aspell или с enchant. Но у enchant много зависимостей, поэтому в дебиане и в виндовых сборках для Psi+ используется aspell.
[12:43:35] <Tehnick> > это позволяет проверять орфографию сразу для нескольких языков одновременно, что довольно востребовано - один язык ихз ситсемной локали и второй язык английский, Aspell это не умеет.
Из коробки может и не умеет, но запилить поддержку нескольких языков возможно. dhamp даже что-то делал в этом направлении, насколько я помню.
[12:44:33] <Tehnick> > 64-bit сборка не запускается для обоих и Qt4, и Qt5. К тому же я писал что не запускается и для eiskaltdcpp-daemon.
А вот это уже странно. Возможно, проблема где-то в ядре.
[12:45:25] <Tehnick> > кстати как там насчёт релиза? когда?
Не знаю.
[12:49:21] <Tehnick> > но почему то никто из индийцев до сих пор не сделал перевод на индийский язык
Продвинутая часть населения у них вполне себе владеет английским. Тем не менее на днях какой-то пользователь запросил создание перевода айскальта на хинди. Посмотрим, какой будет прогресс...
[13:26:21] <Tehnick> > со временем согласно стабильности работы надо будет перейти на GTK3 и Qt5 причём не обязательно одновременно
Gtk3 все больше скатывается в г... Я не уверен, что будет иметь смысл его поддержка.
А вот Qt 5.4.x уже почти "торт". Осталось буквально два-три бага исправить, чтобы во всех DE на линуксе оно нормально работало (сейчас, например, есть проблемы с системным треем в GNOME Shell, XFCE и Unity). В винде и макоси таких проблем нет. Хотя что-то там с хоткеями под виндой еще не дофиксили, судя по QTBUG-43596.
[13:38:45] <Tehnick> > айскальт - это единственная программа которая развела такой зоопарк в официальных репах.
Ну, не единственная. В дебиане, например, сейчас много пакетов, собранных под питон 2.7.x и под 3.4.x.
А теми прогами, которые уже собраны в репах дебиана и убунты с Qt5 < 5.4.0, очень неудобно пользоваться из-за некоторых багов в тулките. Например:
* сломанные хоткеи
* игнорирование fontconfig, из-за чего шрифты в программах на Qt5 выглядят иначе, чем во всех других программах и никак не настраиваются
* сломанный системный трей (даже в KDE)
[13:39:00] <Tehnick> Проверить можно, запустив qtcreator, например.
[13:42:56] <Tehnick> > так что гораздо разумнее сделать из них один пакет eiskaltdcpp-data
Изначальный посыл: не всем нужны звуки, смайлики или скрипты. То, что реально необходимо программе для работы, лежит в пакете eiskaltdcpp-common. Но я подумаю об объединении.
[13:49:56] <Tehnick> > экономить пару мегабайт разбивая общий пакет eiskaltdcpp-data на множество подпакетов довольно странно
Это не только для экономии, но и для гибкости. В бинарных дистрибутивах она достигается именно таким образом.
[13:50:27] <Tehnick> > учитывая специфику EiskaltDC++ которая предполагает выкачивание многих гигабайт
Преимущественно из локальной сети, да.
[13:56:33] <Tehnick> > например пакет eiskaltdcpp-gtk3 имеет в центре приложений ubuntu оценку в одну звезду (из пяти), зачем в официальные репы совать багнутые сборки?
Согласен, сборку с Gtk3 можно выбросить нафиг. Тем более, что пользуется ей очень небольшое количество пользователей, судя по popcon:
http://tehnick.punklan.net/deb-packages/popcon-stat.html
[13:57:45] <Tehnick> На сборку с Qt5 можно перейти уже со следующих релизов убунты и дебиана.
[13:58:44] <Tehnick> [22:00:16] <dhamp> проблемы с gtk3 нельзя исправить by design, проще перерисать gtk версию практически с нуля
Переписать Gtk-версию айскальта или библиотеку Gtk?..
[14:01:47] <Tehnick> [22:05:46] <pavelvat> dhamp: иконка в трее в ubuntu при сборке с Qt5 находится в крайнем левом углу, в то время как там в Ubuntu расположены кнопки управления окном, а трей находится с правой стороны, эта проблема наблюдается только в убунтовской Unity
Не только, см.: https://bugreports.qt.io/browse/QTBUG-31762
[14:03:53] <Tehnick> [22:14:01] <pavelvat> dhamp: я никакой плагин не ставил в Qt4 сборке иконка в трее работает в убунтовском unity.
В убунту Qt4 пропатченная. Там есть специальный костыль для поддержки области уведомлений Unity. Для Qt5 они аналогичного патча не подготовили.
[14:12:12] <Tehnick> [20:16:20] <pavelvat> tehnick: статическая сборка не хочет линковать итоговый бинарник, вот лог http://pastebin.com/pzM6XNS3
Из лога видно, что проблема с линковкой libiconv. Одна из возможных причин: неправильно указан порядок библиотек для линковки, т.к. при статической линковке он имеет большое значение. Предлагаю попробовать -liconv переместить относительно других линкуемых библиотек.
[14:13:18] nixtrian|home вышел(а) из комнаты
[14:13:59] <Tehnick> [20:18:26] <pavelvat> это минимальная сборка, без Qt, я всё лишнее отключил, если полную делать то там очень много подобных ошибок линковки
Видимо, действительно проблема в последовательности линкуемых библиотек.
[14:15:03] nixtrian|home вошёл(а) в комнату
[14:17:25] GitHub_bot вошёл(а) в комнату
[14:17:25] <GitHub_bot> [eiskaltdcpp] @tehnick commented on commit c5f6f05: У нас всего два живых хаб-листа остались?... https://github.com/eiskaltdcpp/eiskaltdcpp/commit/c5f6f0518c868e6292f49e1dbe9a12ddc65a3eed#commitcomment-9859622
[14:17:35] GitHub_bot вышел(а) из комнаты
[14:19:49] <Tehnick> [00:34:32] <pavelvat> dhamp_ : это касается я так понимаю не только статической сборки под Windows, но и вообще любой статической сборки?
Именно. Я в первый раз в никсах с таким столкнулся.
[14:22:48] Tehnick вышел(а) из комнаты
[14:27:16] EiskaltDC++ вошёл(а) в комнату
[15:01:31] pavelvat вошёл(а) в комнату
[15:05:42] <pavelvat> tehnick: насчёт хаб-листов, больше нет нормальных, есть какой то польский .cz но он не распознаётся если добавить, а тот что я удалил я хотел ещё года два назад удалить, он уже тогда не работал.
[15:12:04] nixtrian|home вышел(а) из комнаты
[15:12:14] nixtrian|home вошёл(а) в комнату
[15:27:08] <pavelvat> сейчас пытаюсь статически собрать qt, там целый ворох бесполезных зависимостей от плагинов qt для баз данных, вот с такой строкой в CMakeList.txt для Qt:
  target_link_libraries (${PROJECT_NAME} ${LIBS} dcpp -Wl,-Bstatic -ltiff -llzma -llcms2 -lsqlite3 -ltdsodbc -lsybdb -lodbc32 -lodbccp32 -lgnutls -lcrypt32 -lnettle -lhogweed -lgmp -lpq -lschannel)
свелось к одной единственной не разрешённой ссылке: undefined reference to `hinstFreeTDS'
http://pastebin.com/gtV42Y2U
но поиск по содержимому /home/pavel/builds/mxe/usr/x86_64-w64-mingw32.static/lib файлов содержащих строку hinstFreeTDS выдаёт только файл libtdsodbc.a но эта библиотека уже включена флагом -ltdsodbc, я пробовал включать её несколько раз в конец, в начало, не помогает.
[15:27:45] <pavelvat> *статически собрать qt версию айскальта
[15:32:35] pavelvat вышел(а) из комнаты
[18:13:29] dhamp вошёл(а) в комнату
[18:15:08] <dhamp> >[13:58:44] <Tehnick> [22:00:16] <dhamp> проблемы с gtk3 нельзя исправить by design, проще перерисать gtk версию практически с нуля
>Переписать Gtk-версию айскальта или библиотеку Gtk?..
Gtk-версию айскальта - причём поддержка одновременно gtk2 и gtk3 станет проблемной
[18:20:03] nixtrian|home вышел(а) из комнаты
[18:23:57] nixtrian|home вошёл(а) в комнату
[18:25:41] GitHub_bot вошёл(а) в комнату
[18:25:41] <GitHub_bot> [eiskaltdcpp] @dhamp pushed 1 new commit to dcppsyncv4: https://github.com/eiskaltdcpp/eiskaltdcpp/commit/9a8ef2caba851d644d90ab8ac4be76dea134dffc
[18:25:41] <GitHub_bot> [eiskaltdcpp/dcppsyncv4] Core: increase max file list size from 512 MB to 4*1024 MB - Eugene Petrov
[18:25:51] GitHub_bot вышел(а) из комнаты
[18:26:15] GitHub_bot вошёл(а) в комнату
[18:26:15] <GitHub_bot> [eiskaltdcpp] @dhamp pushed 1 new commit to 2.3.x: https://github.com/eiskaltdcpp/eiskaltdcpp/commit/5309fd03f05cf83f08c570a44056ce2ba0b6a076
[18:26:16] <GitHub_bot> [eiskaltdcpp/2.3.x] Core: increase max file list size from 512 MB to 4*1024 MB - Eugene Petrov
[18:26:25] GitHub_bot вышел(а) из комнаты
[19:20:00] nixtrian|home вышел(а) из комнаты
[19:23:04] loooser вошёл(а) в комнату
[19:23:16] nixtrian|home вошёл(а) в комнату
[20:07:51] pavelvat вошёл(а) в комнату
[20:14:01] <pavelvat> вообщем собрал я полностью статический бинарник eiskaltdcpp-qt.exe он получился размером 30 MB, но для этого пришлось пересобрать Qt в MXE, с отключёнными флагами поддержки всех баз данных кроме sqlite, после этого линковка успешно проходит. Но собранный бинарник как и shared версия запускается в Windows только из под gdb.exe, если просто запускать то появляется на 5 секунд в процессах и молча оттуда исчезает.
[20:14:40] <pavelvat> в wine и shared и static версии тоже почему то запускаются.
[20:19:20] <pavelvat> 64-bit eiskaltdcpp-daemon.exe тоже как и Qt версия молча самозавершается без уведомлений, и тоже успешно запускается из под gdb.exe
[20:19:59] <pavelvat> Dependency Walker вот что пишет: http://postimg.org/image/y2kfjqxjn/full/
[20:22:11] pavelvat вышел(а) из комнаты
Powered by ejabberd Powered by Erlang Valid XHTML 1.0 Transitional Valid CSS!