Spec-Zone.ru › GCC 15

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, а препроцессор не настраивается. Библиотека импорта MinGW msvcrt — это просто символическая ссылка на (или копия) другую библиотеку импорта CRT MinGW, выбранную при компиляции MinGW. Библиотека импорта MinGW msvcrt-os предназначена для системной библиотеки DLL CRT Windows msvcrt.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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API