C/C++ - Как заставить GCC в консоли WinXP отображать свой вывод в правильной кодировке?

Ответить
Аватара пользователя
DENIS451

C/C++ - Как заставить GCC в консоли WinXP отображать свой вывод в правильной кодировке?

Сообщение DENIS451 »

Как заставить MinGW в консоли WinXP отображать свой вывод (ошибки компиляции и т.п.)в правильной кодировке?



(т.е GCC.exe , см. скрин - там где красный шрифт, должно быть error)
Вложения

[Расширение png было запрещено, вложение больше недоступно.]

Аватара пользователя
zbeypepels

Re: C/C++ - Как заставить GCC в консоли WinXP отображать свой вывод в правильной кодировке?

Сообщение zbeypepels »

перед запуском меняй кодировку на 65000 65001 . Скриптом стартуй, который будет ставить кодировку и принимать параметры на вход.

Код:

Код: Выделить всё

@echo off
chcp 65001
cd /d %~dp0
set param=%*
.....
Аватара пользователя
iglezz

Re: C/C++ - Как заставить GCC в консоли WinXP отображать свой вывод в правильной кодировке?

Сообщение iglezz »

Так не получается, если в bat файле дописать строку "chcp 65001" всё что после неё идёт перестаёт выполнятся, и окно консоли быстро закрывается, я даже не успеваю посмотреть что пишет, строка "chcp 1251" переключает кодировку на 1251 но ничего не меняется.

Цитата:

Юзай англйиские версии и не будет проблем с кодировками

Я пытался сделать MinGW portable версию - дома на русифицированной Win7 поставил, на работу принёс, а тут XP, запускать проги можно, устанавливать нельзя.

Если у меня русская версия, то как её переключить на английский?

Кстати, на Win7 дома, в этой же сборке GCC.exe пишет сообщения в консоль на английском т.е. всё ок.

вот содержимое BAT файла, в котором перестают работать, как минимум, pause:

Код:

Код: Выделить всё

mode con:cols=130 lines=36
::cd /d %~dp0
::chcp 1251
@echo off
chcp 65001
cd /d %~dp0
set param=%*
gcc.exe %~dp0\main.cpp -o %~dp0\proga.exe -finput-charset=CP1251 -fexec-charset=CP866
chcp 866
pause
%~dp0\proga.exe
pause
Аватара пользователя
DENIS451

Re: C/C++ - Как заставить GCC в консоли WinXP отображать свой вывод в правильной кодировке?

Сообщение DENIS451 »

Действительно, почему то включился вывод от GCC.exe на русском языке, что б его отключить я переименовал файл

C:\MinGW\share\locale\ru\LC_MESSAGES\gcc.mo
Аватара пользователя
DENIS451

Re: C/C++ - Как заставить GCC в консоли WinXP отображать свой вывод в правильной кодировке?

Сообщение DENIS451 »

Цитата DENIS451:



Действительно, почему то включился вывод от GCC.exe на русском языке, что б его отключить я переименовал файл

C:\MinGW\share\locale\ru\LC_MESSAGES\gcc.mo
C/C++ - Как заставить GCC в консоли WinXP отображать свой вывод в правильной кодировке?




Это делается через
Environment Variables
Ответить

Вернуться в «Программирование и базы данных»