# ошибка при сборке mc-4.1.40-pre9

## Alice in W

Пытаюсь собрать руками, на make выдаёт ошибку:

```
cons.handler.c: In function `handle_console_linux':

cons.handler.c:208: error: label at end of compound statement

make[1]: *** [cons.handler.o] Error 1

```

Немножко покопалась в форумах, кажется это связано с gcc-3.4 (у меня - 3.4.4). Что можете посоветовать? На старой женте с gcc-3.2.3 эта же версия mc когда-то поставилась лехко.

----------

## rusxakep

А зачем тебе собирать ручками?

----------

## Balancer

Потому что ebuild'а на него нет. Это mc-mp, судя по версии. http://mc.linuxinside.com/

На голову выше обычного mc, но, блин, с utf-8 не живёт  :Sad: 

----------

## rusxakep

И чего людям в /bin/sh не живется?   :Laughing: 

----------

## Alice in W

Спасибо, как обычно - всё по делу  :Sad:  ................

----------

## Alice in W

Бутстрапилась с такими флагами:

```
CFLAGS="-O3 -march=athlon-xp -funroll-loops -fprefetch-loop-arrays -pipe"
```

Хоть может кто объяснит, чего эта ошибка значит?   :Crying or Very sad:   привыкла уже к этому mc...

----------

## rusxakep

Не рекомендую -O3. Лучше поставь -O2. Если привыкла - юзай который в portage. Он вполне рабочий и с utf8 нет проблем.

Зачем тебе нужен то эта версия?

----------

## Alice in W

 *rusxakep wrote:*   

> Зачем тебе нужен то эта версия?

 

Ви будете смеяться - там разукрашено так удобно... а нативный ужасно синий, и все файлы одним цветом   :Evil or Very Mad: 

Насчёт O2 - я потестила немножко флаги по приведённому вот тут рецептику

https://forums.gentoo.org/viewtopic-t-300316-start-0-postdays-0-postorder-asc-highlight-.html

с -O2 у меня получается гораздо медленней, чем с -O3... а  -O1 взять - идеология мешает  :Smile:  хотя опять по результатам в скорости  почти не уступает -O3. 

такие вот аргументы.

----------

## viy

Ну-ка, запость ссылку на твой исходник --- побалуюсь...

----------

## Alice in W

http://mc.linuxinside.com/cgi-bin/dir.cgi?redirect=mc-4.1.40-pre9.tar.gz&dir=Releases

----------

## viy

Открываешь файл src/cons.handler.c, ищешь 206 строчку. Там следующий код:

```
        console_flag = 0;

    }

    break;

    default:     /* <= это тебя интересует */

    /* Nothing */

    }

}

```

Так вот, надо закомментировать полностью строчку "default:" --- все соберется.

----------

## rusxakep

У меня вообще только с -O работает наиболее быстро (по этому тесту)  :Smile: 

----------

## viy

У меня -O3 -march=athlon-xp -funroll-loops. Хотя последний ключик я не использую.

Однако этот тест не показатель, я думаю что проц можно нагрузить иначе, так, чтобы -msse и -mmmx начали работать.

Но полезная ссылочка, однако...

----------

## Alice in W

 *viy wrote:*   

> Открываешь файл src/cons.handler.c, ищешь 206 строчку. Там следующий код:
> 
> ```
>         console_flag = 0;
> 
> ...

 

 :Very Happy:   :Very Happy:   :Very Happy:   :Very Happy:   :Very Happy:   :Very Happy:   :Very Happy:   :Very Happy:   :Very Happy:  cheers!

----------

## rusxakep

Мне кажется при -march и -mtune (gcc3.4) - все -mmmx -msse включаются при нужном процессоре

----------

## GreenDragon

 *Balancer wrote:*   

> Потому что ebuild'а на него нет. Это mc-mp, судя по версии. http://mc.linuxinside.com/
> 
> На голову выше обычного mc, но, блин, с utf-8 не живёт 

 

И чем же он на голову выше?

Например Ctrl+T сразу после сборки он не умеет, "SMB Link" в меню тоже отсутствует ...   :Smile: 

Разве своей боевой раскраской, IMHO.

----------

## Balancer

 *GreenDragon wrote:*   

> И чем же он на голову выше?

 

Намного более предсказуем, не падает, больше вариантов синтаксической раскраски в редакторе, и никаких "Интерпретатор занят выполнением команды", что бесит очень часто  :Smile: 

Это то, что навскидку помню, т.к. уже больше года им не пользуюсь, ибо, как было сказано выше, UTF-8  :Smile: 

----------

## GreenDragon

 *Balancer wrote:*   

>  *GreenDragon wrote:*   И чем же он на голову выше? 
> 
> Намного более предсказуем, не падает, больше вариантов синтаксической раскраски в редакторе, и никаких "Интерпретатор занят выполнением команды", что бесит очень часто 
> 
> Это то, что навскидку помню, т.к. уже больше года им не пользуюсь, ибо, как было сказано выше, UTF-8 

 

Спасибо, понятно  :Smile: 

Падение 

```
mc --version

GNU Midnight Commander 4.6.0

Virtual File System: tarfs, extfs, cpiofs, ftpfs, fish, smbfs

With builtin Editor

Using system-installed S-Lang library with terminfo database

With subshell support as default

With support for background operations

With mouse support on xterm and Linux console

With support for X11 events

With internationalization support

With multiple codepages support
```

мне встречать не приходилось, а вот "Интерпретатор уже озабочен выполнением команды" - это да бывает  :Smile: 

Ctrl+O и Enter помагают в этой ситуации, хотя согласен - неприятная мелочь.

----------

## Balancer

 *GreenDragon wrote:*   

> Ctrl+O и Enter помагают в этой ситуации, хотя согласен - неприятная мелочь.

 

Плохо помогают  :Smile:  Т.к. происходит возврат в тот каталог, в котором был при "блокировке" консоли. Т.е. при появлении такого сообщения приходится делать:

cd Ctrl-X P Enter Ctr-O Enter Alt-P Enter

Вот только так оно снимается "без потерь"  :Smile:  За день эту операцию раз по 10 приходится проделывать при работе с консолью  :Smile: 

----------

