3.20.11 Параметры Cygwin и MinGW
Для целевых платформ Microsoft Windows доступны следующие дополнительные параметры:
-
-mconsole -
Этот параметр указывает, что необходимо создать консольное приложение, предписывая компоновщику задать тип подсистемы в заголовке PE, необходимый для консольных приложений. Этот параметр доступен для целевых платформ Cygwin и MinGW и включён для них по умолчанию.
-
-mcrtdll=library -
Выполнять препроцессирование, компиляцию или компоновку с указанной библиотекой DLL среды выполнения C библиотека. Этот параметр корректирует предопределённые макросы
__CRTDLL__,__MSVCRT__,_UCRTи__MSVCRT_VERSION__для указанной библиотеки CRT библиотека, выбирает стартовый файл для библиотеки CRT библиотека и выполняет компоновку с библиотекой CRT библиотека. Распознаваемые имена библиотек CRT для препроцессора:crtdll*,msvcrt10*,msvcrt20*,msvcrt40*,msvcr40*,msvcrtd*,msvcrt-os*,msvcr70*,msvcr71*,msvcr80*,msvcr90*,msvcr100*,msvcr110*,msvcr120*иucrt*. Если этот параметр не указан, для компоновки используется библиотека импорта MinGW по умолчаниюmsvcrt, а препроцессор не настраивается. Библиотека импорта MinGWmsvcrt— это просто символическая ссылка на (или копия) другую библиотеку импорта CRT MinGW, выбранную при компиляции MinGW. Библиотека импорта MinGWmsvcrt-osпредназначена для системной библиотеки DLL CRT Windowsmsvcrt.dllи в большинстве случаев является библиотекой импорта MinGW по умолчанию. Как правило, смена библиотеки DLL CRT требует повторной компиляции всей CRT MinGW. Этот параметр предназначен только для экспериментов и тестирования. Этот параметр доступен для целевых платформ MinGW. -
-mdll -
Этот параметр доступен для целевых платформ Cygwin и MinGW. Он указывает, что необходимо создать DLL — динамически подключаемую библиотеку, позволяя выбрать требуемый объект запуска среды выполнения и точку входа.
-
-mnop-fun-dllimport -
Этот параметр доступен для целевых платформ Cygwin и MinGW. Он указывает, что атрибут
dllimportследует игнорировать. -
-mthreads -
Этот параметр доступен для целевых платформ MinGW. Он указывает, что следует использовать поддержку потоков, специфичную для MinGW.
-
-municode -
Этот параметр доступен для целевых платформ MinGW-w64. Он приводит к предопределению макроса препроцессора
UNICODEи выбирает код запуска среды выполнения с поддержкой Unicode. -
-mwin32 -
Этот параметр доступен для целевых платформ Cygwin и MinGW. Он указывает, что в препроцессоре следует задать типичные предопределённые макросы Microsoft Windows, но не влияет на выбор библиотеки среды выполнения и кода запуска.
-
-mwindows -
Этот параметр доступен для целевых платформ Cygwin и MinGW. Он указывает, что необходимо создать приложение с графическим интерфейсом, предписывая компоновщику задать соответствующий тип подсистемы в заголовке PE.
-
-fno-set-stack-executable -
Этот параметр доступен для целевых платформ MinGW. Он указывает, что для стека, используемого вложенными функциями, не устанавливается флаг исполняемости. Это необходимо для двоичных файлов, работающих в режиме ядра Microsoft Windows, поскольку в этом режиме недоступен API User32, используемый для установки разрешений на выполнение.
-
-fwritable-relocated-rdata -
Этот параметр доступен для целевых платформ MinGW и Cygwin. Он указывает, что перемещаемые данные в секции только для чтения помещаются в секцию
.data. Это необходимо для старых сред выполнения, не поддерживающих изменение секций.rdataдля псевдоперемещения. -
-mpe-aligned-commons Этот параметр доступен для целевых платформ Cygwin и MinGW. Он указывает, что при генерации кода следует использовать расширение GNU формата файлов PE, обеспечивающее правильное выравнивание переменных COMMON. По умолчанию оно включено, если GCC обнаруживает, что целевой ассемблер, найденный при конфигурировании, поддерживает эту возможность.
Стандартные параметры см. также в разделе Параметры x86.
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-15.3.0/gcc/Cygwin-and-MinGW-Options.html