Когда я использую boost-build с компилятором Intel, используя встроенный инструмент «intel», он использует icpc
при компиляции источника в объектные файлы, но использует ar
сделать .a
статических библиотек. Обычно это прекрасно, потому что собственный архиватор Intel в основном является оберткой для ar
.boost-build (aka bjam) с командой Intel archiver вместо ar
Однако, я пытаюсь использовать опцию «межпроцессорной оптимизации» Intel (-ipo
), когда я создаю некоторые (но не все) мои библиотеки/модули в большом приложении. Я хочу, чтобы он оптимизировался в библиотеке/модуле, но не между библиотеками/модулями. Для этого мне нужно использовать или xild -lib
при создании файлов .a
, потому что ar
не знает файлы .o
, которые созданы icpc -ipo
. Он считает, что он преуспевает, но .a
, который он делает, потерпит неудачу на этапе компоновки.
Как я могу изменить, какая команда boost-build будет использовать для создания архивов вдали от значения по умолчанию ar
до ?
Я пробовал бросать в <linker>
(что я вижу, встроенный инструмент msvc поддерживает) в оператор using intel
в моем user-config.jam, но он, кажется, был проигнорирован. И я не знаю, что повлияло бы на выбор архиватора.