2015-06-16 2 views
1

Моя копия clang, кажется, работает с параметрами, такими как -Wimplicit-int и -Wreturn-type включен по умолчанию. (Возможно, это связано с тем, что по умолчанию для языка задано значение c11.) Я знаю, что могу отключить эти с помощью -Wno-implicit-int и -Wno-return-type, но есть ли способ сделать это по умолчанию? Может быть, с переменной окружения или rc-файлом?Настройка стандартных параметров clang?

Я также хотел бы добавить несколько вариантов, например, по умолчанию найти /usr/local/include.

Я также хотел бы отключить опции -fcolor-diagnostics, -fshow-column и -fno-caret-diagnostics, которые также по умолчанию включены.

(Это лязг-600.0.57/Apple LLVM версии 6.0 под управлением MacOS 10.9.5, если это имеет значение.)

+0

AFAIK нет возможности сделать это в GCC или clang без повторной компиляции. Кроме того, почему бы вы никогда не захотели «-Wimplicit-int» по умолчанию? –

+0

Каждая программа [в нашем случае компилятор] работает с набором параметров по умолчанию [у него есть стандарт, который он «следует»]. Он также предлагает возможность переопределять эти значения по умолчанию (через _cmdline args_, _config files_ или _env vars_) для пользовательских значений. Теперь я не эксперт «clang», но если изменить его поведение по умолчанию невозможно (и я думаю, что это нормально, из проекта PoV), как насчет создания (это обходной путь: gainarie) сценарий оболочки (который вызывает «clang» исполняемый файл со всеми вашими опциями)? – CristiFati

+0

@JonathonReinhart: У меня есть gobs старого кода, который использует идиомы старого стиля («неявный void» и т. П.), А clang - это первый компилятор, который я использовал, который жалуется на любой из них. Со временем я могу исправить это, я полагаю, но я бы предпочел не быть, или все сразу. –

ответ

0

Как описано here вы можете использовать MAKEFILES среду, чтобы определить дополнительные цели по умолчанию и флаги (например, makefile), чтобы определить значение по умолчанию CFLAGS, а затем используйте +=, чтобы добавить дополнительный параметр в свой проект CFLAGS