Установить флаги оптимизации gcc и g ++ навсегда - PullRequest
0 голосов
/ 07 января 2012

Я использую ядро ​​x86 на машине x64.Я хотел бы скомпилировать библиотеки для процессора i586.Во время компиляции некоторые библиотеки используют оптимизацию i686, поэтому хотят установить флаги -mtunes=i586, -march=i586 и -O3 для всех библиотек, даже если они явно объявляют что-то еще в своих make-файлах.

Как-то я хочуустановить флаги компилятора навсегда ...

1 Ответ

2 голосов
/ 08 января 2012

Независимо от того, должен ли сделать это, вот самый простой способ сделать это:

  1. Создать новый файл со следующим содержимым:

    #!/bin/sh
    
    exec /usr/bin/gcc "$@" -O3 -mtunes=i586 -march=i586
    

    Измените / usr / bin / gcc на ваш фактический компилятор, если это не так в вашей системе.

  2. Сохранить как ~/bin/gcc.

  3. Сделать новый скрипт исполняемым:

    chmod + x ~ / bin / gcc

  4. Повторите для создания другого файла для g ++.

  5. Добавьте ~/bin к началу вашего пути:

    export PATH=~/bin:$PATH
    
  6. Скомпилируйте ваш проект. Всякий раз, когда ваши новые скрипты находятся на пути, они переопределяют все, что говорит make-файл.

Надеюсь, это поможет.

P.S. лучший способ сделать это (а не самый простой), вероятно, будет возиться с файлом "specs" компилятора, но это гораздо сложнее объяснить и сделать.

...