LINUX.ORG.RU

[2 SlavaZ] Косячки в MC


0

1

Я тут заметил парочку косяков в Midnight Commander, но читать существующие тикеты, регистрироваться и заполнять новые мне сейчас более чем лениво. Просто тикетов много, и чтобы каждый оформить как надо, нужно дохрена времени. И собирать detailed info это тоже эпануться можно, а мне в ближайшие пару недель некогда.

Все косяки с MC из недавнишнего гита.

1) --with-regex-engine=pcre собирается, но сегфолтится. Я не знаю, как это оттрассировать, учитывая, что strace работает в том же терминале. Debian sid, amd64.

2) в Mac OS X компиляция отваливается при линковке то в libedit.la, то где-то еще. Очень смахивает по виду на #2576, но я не копал глубже. То есть пробовал копать очевидным путем, но так как я хреновый сишник, ничего у меня не вышло.

3) Опять же. У вас там синтаксис VFS поменялся, а вот mc.hints остались как были. Долго думал, почему на FTP не заходит.

4) При работе с sh:// после соединения возвращается на место только текущая панель. Вторую надо возвращать двойным нажатием Ctrl-O. Если это было сделано специально, то явно для нужд полутора сисадмина, у остальных рушится шаблон и ломается парадигма.

Если кому охота, оформьте это в трекер. Спасибо за внимание.

★★★★★

> читать существующие тикеты, регистрироваться и заполнять новые мне сейчас более чем лениво.

А кому не лениво? Ты думаешь, сейчас кто-то метнётся и вместо тебя оформит тикеты? Напрасно.

akk ★★★★★
()
Ответ на: комментарий от post-factum

Инфа о том, как собирать логи — отсутствует.
Кроме того, дайте же мне роскошь побыть просто пользователем системы, а не ее тестером с тремя сертификатами по QA.

shimon ★★★★★
() автор топика
Ответ на: комментарий от akk

> А кому не лениво? Ты думаешь, сейчас кто-то метнётся и вместо тебя оформит тикеты? Напрасно.

Тут водятся коммитеры и уже зарегистрированные на тамошнем траке пользователи.

shimon ★★★★★
() автор топика

1) --with-regex-engine=pcre собирается, но сегфолтится. Я не знаю, как это оттрассировать, учитывая, что strace работает в том же терминале. Debian sid, amd64.

Не могу повторить. Собирается и работает с pcre. Какие именно флаги configure были указаны ещё? версия libpcre?

Если есть возможность запустить gdb, то в идеале было бы собрать так:

git checkout master && git pull
mkdir build_dir
cd build_dir
../configure --prefix=$(pwd)/ROOT --enable-maintainer-mode --with-search-engine=pcre <ещё флаги>
make && make install
ulimit -c unlimited
ROOT/bin/mc
gdb ROOT/bin/mc core.*
 bt full
вывод «bt full» и нужен.

2) в Mac OS X компиляция отваливается при линковке то в libedit.la, то где-то еще. Очень смахивает по виду на #2576, но я не копал глубже. То есть пробовал копать очевидным путем, но так как я хреновый сишник, ничего у меня не вышло.

Ну https://www.midnight-commander.org/ticket/2576 был dhjlt решён полтора месяца назад. Репозиторий у тебя свежий? Есть возможность показать как именно оно ругается? И какой комилятор?

3) Опять же. У вас там синтаксис VFS поменялся, а вот mc.hints остались как были. Долго думал, почему на FTP не заходит.

У нас есть отдельный бранч DEV_release_cleanup, в котором правим все мелкие недочёты, идентация кода и прочее по мелочи. В этом бранче хинты уже подправлены. Перед следующим релизом бранч будет влит в master. На текущем мастере пока что старые хинты.

4) При работе с sh:// после соединения возвращается на место только текущая панель. Вторую надо возвращать двойным нажатием Ctrl-O. Если это было сделано специально, то явно для нужд полутора сисадмина, у остальных рушится шаблон и ломается парадигма.

Это не было специально задумано :). Это баг. Будем его ловить.

Slavaz ★★★★★
()
Ответ на: комментарий от Slavaz

> Ну https://www.midnight-commander.org/ticket/2576 был dhjlt решён полтора месяца назад. Репозиторий у тебя свежий? Есть возможность показать как именно оно ругается? И какой комилятор?

ld: duplicate symbol _record_macro_buf in editor/.libs/libedit.a(libedit_la-edit.o) and viewer/.libs/libmcviewer.a(libmcviewer_la-mcviewer.o)
collect2: ld returned 1 exit status

СС=/usr/bin/gcc-4.2 -arch i386 -m32

./configure без флагов вообще

из гита только что pull сделан.

shimon ★★★★★
() автор топика
Ответ на: комментарий от shimon

> ld: duplicate symbol _record_macro_buf

Переокрыли тикет 2576.

Сделай так:
git pull
git checkout -b origin/2576_duplicate_symbol 2576_duplicate_symbol

и попробуй собрать заново. Если будут ещё ошибки про дубликаты - сообщай. Буду сразу править в бранче.

Slavaz ★★★★★
()
Ответ на: комментарий от Slavaz

пардон,
git checkout -b 2576_duplicate_symbol origin/2576_duplicate_symbol

или в последних версиях гита просто:

git checkout 2576_duplicate_symbol

Slavaz ★★★★★
()
Ответ на: комментарий от Slavaz

На этом бранче собирается и даже работает.

При запуске говорит:

Cannot create /Users/shimon/.cache/mc directory

shimon ★★★★★
() автор топика
Ответ на: комментарий от shimon

> На этом бранче собирается и даже работает.
отлично, спасибо.

Cannot create /Users/shimon/.cache/mc directory


А сам каталог создаётся при этом?

Slavaz ★★★★★
()
Ответ на: комментарий от shimon

Странно... А остальные каталоги посоздавались?

/Users/shimon/.config/mc и /Users/shimon/.local/share/mc ?

Просто создаёт все три каталога одна и та же функция:

static void
mc_config_mkdir (const char *directory_name, GError ** error)
{
    if ((!g_file_test (directory_name, G_FILE_TEST_EXISTS | G_FILE_TEST_IS_DIR)) &&
        (g_mkdir_with_parents (directory_name, 0700) != 0))
    {
        g_propagate_error (error,
                           g_error_new (MC_ERROR, 0, _("Cannot create %s directory"), directory_name));
    }
}

То есть, ошибка может быть, если нет прав по созданию каталога или нет свободных инодов...

Slavaz ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.