Александр Рыжов писал(а):alllexx88, у нас с
Zyxmon'ом «попробовать Deluge» уже стало местным мемом. После очередного обновления boost/deluge/rblibtorrent/uclibc-ng я проверяю его на mipsel, но результат всегда неизменный:
Код: Выделить всё
admin@RT-N66U:/tmp/home/root# deluged --do-not-daemonize --loglevel=debug
[INFO ] 12:15:31 daemon:124 Deluge daemon 1.3.12
[DEBUG ] 12:15:31 daemon:125 options: {'profile': False, 'loglevel': 'debug', 'quiet': False, 'ui_interface': None, 'listen_interface': None, 'logfile': None, 'config': None, 'port': None, 'pidfile': None, 'donot': True}
[DEBUG ] 12:15:31 daemon:126 args: []
Segmentation fault
При работе над Optware-ng не раз сталкивался с подобными проблемами, и пока их удавалось решить. В подавляющем большинстве случаев (или во всех, т.к. других не помню) проблема оказывалась в том, что подгружались при работе не те либы, которые использовались при компиляции. Первым делом, стоит посмотреть, не видно ли при помощи strace, подгружаются ли "левые" либы:
Код: Выделить всё
strace deluged --do-not-daemonize --loglevel=debug 2>&1 | grep /lib
Если там будут видны подгруженные либы прошивки (не из /opt/lib, ясное дело), стоит сохранить вывод strace в файл и изучить подробнее:
Код: Выделить всё
strace deluged --do-not-daemonize --loglevel=debug > /opt/log.txt 2>&1
Если ничего информативного найти не удаётся, дальше стоит использовать gdb. Перед этим желательно установить deluge и все зависимости с debugging символами (то есть, не стрипнутые).
(формат: gdb <бинарник>)
Потом
Код: Выделить всё
run /opt/bin/deluged --do-not-daemonize --loglevel=debug
(формат: run <параметры запуска бинарника>)
После этого deluged вылетит с segfault, можно глянуть backtrace (без debugging символов вывод будет нечитаемым):
а также подгруженные либы (вот честно, не помню, имеет ли смысл это делать после вылета, или список будет после вылета пуст):
Пока где-то так. Возможно, стоит создать отдельную тему, чтобы не засорять эту.
P.S. Не сообразил, как вставить ссылку на пользователя, потому цитирую
