о флагах, использованных при компиляции - PullRequest
0 голосов
/ 30 января 2019

Я столкнулся с этим при изучении строки кода в cmake для построения библиотеки:

-Wall -Wfloat-equal -o3 -fPIC

Что означают эти флаги компилятора и как они работают?Зачем их нужно вставлять?

1 Ответ

0 голосов
/ 30 января 2019

-Wall -Wfloat-equal -o3 -fPIC "

Итак

-Wall

Включает, по-видимому, не все, но очень много предупреждений компилятора.Его следует использовать для создания лучшего кода, так как вы будете знать, если что-то не так.

-Wfloat-equal

Предупреждает, если числа с плавающей запятой используются в сравнениях на равенство. Сравнение чисел с плавающей точкой является рискованным делом, потому что 1.0 не обязательноточное значение. Я не уверен, почему вы хотите его в этом контексте, потому что кажется, что -Все будет отображать предупреждения в любом случае.

-o3

Это, вероятно, O3, или уровень оптимизации 3. AKAоптимизировать до максимально допустимого уровня (iirc).

-fPIC

Будет генерировать независимый от позиции код. Это немного сложнее, но запрашивалось раньше , но полезно для включения вбиблиотека.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...