В настоящее время я портирую один из своих проектов в GCC, и для этого я использую проект MinGW-w64, поскольку мне требуется поддержка как x64, так и x86.
Я столкнулся с проблемой вНастройка моей среды сборки, хотя.В настоящее время мой проект использует библиотеки Boost C ++, и для облегчения процесса сборки я использую Boost.Build и в своем проекте (поскольку это упрощает интеграцию).
Под MSVC это нормально, потому что я могу сделатьследующие из командной строки:
b2 toolset=msvc address-model=32 # compile as 32-bit
b2 toolset=msvc address-model=64 # compile as 64-bit
MinGW-w64 делает это «проблематичным», так как 32-битные и 64-битные наборы инструментов размещены в отдельных каталогах.(C: \ MinGW32 и C: \ MinGW64 соответственно).
Можно ли настроить Boost.Build таким образом, чтобы он выбирал правильный набор инструментов на основе флага модели адреса?Если нет, какой мой следующий лучший вариант?
РЕДАКТИРОВАТЬ:
Если это поможет, я использую сборки rubenvb 4.6.3-1 с веб-сайта MinGW-w64 в разделе «Персональные сборки»."(я использую эти сборки, в частности, потому что я хочу попытаться заставить мой код анализировать - но не компилировать - под Clang).
РЕДАКТИРОВАТЬ:
Одно решение, о котором я только что подумал, будет«вручную» установить PATH так, чтобы он указывал на правильную цепочку инструментов перед компиляцией, однако это добавляет дополнительный уровень сложности к моему процессу сборки, которого я хотел бы избежать.В идеале я хотел бы, чтобы это было так же легко, как и для MSVC, хотя я понимаю, что это может быть невозможно.В худшем случае я предполагаю, что то, что я только что предложил, сработает, и мне просто нужно будет добавить сценарии для правильной установки PATH перед вызовом Boost.Build.Это будет означать жесткое кодирование пути, что я не хочу делать ...