Передать аргументы компилятору через MAKE - PullRequest
0 голосов
/ 05 июня 2018

Когда я пытаюсь построить код:

make -C ./source/SomeUtil mode=release

, происходит сбой с ошибкой:

фатальная ошибка: глубина создания шаблона превышает максимум 35 (используйте -ftemplate-глубина= для увеличения максимума)

Кажется, почему-то мне нужно заставить MAKE передать этот аргумент компилятору: -ftemplate-глубина = 50

Iпопытался установить переменные CFLAGS и CXXFLAGS , но это не помогло вообще (все равно получаю ошибку с ftemplate-глубина = 35).

export CFLAGS="-ftemplate-depth=50"
export CXXFLAGS="$CFLAGS"  

Также я попытался передать CFLAGS и CXXFLAGS после MAKE, но опять не удалось.

Как я могу заставить MAKE передать аргумент -ftemplate-deep = 50 для компилятора?Спасибо.

1 Ответ

0 голосов
/ 05 июня 2018

Вы не можете заставить make делать что-либо, что Makefile не настроен для принятия.

Установка CXXFLAGS - правильная идея, но не CFLAGS.Компилятор переменного тока не знает, что делать с "-ftemplate-deep = 50".Так что только устанавливайте CXXFLAGS и редактируйте наш make-файл так, чтобы он соответствовал CXXFLAGS, установленному в среде (или лучше расширяйте CXXFLAGS в Make-файле, чтобы вам не приходилось передавать его через make), и убедитесь, что он передает CXXFLAGS компилятору.

...