#c #cmake
Вопрос:
У меня есть цель Fortran в CMake, которая опирается на библиотеки C . Каков переносимый способ включения STDC в компоновку?
Ответ №1:
Если вы связываетесь с gfortran, добавьте -lstdc
, если вы связываетесь с g , вам понадобится -lgfortran
. В любом случае, вам понадобятся они оба, просто g автоматически связывается с libstdc , а gfortran автоматически связывается с libgfortran.
Не существует «переносимого» способа, как в кросс-компиляторе или кросс-«поставщике стандартных библиотек», потому что все библиотеки называются по-разному.
Ответ №2:
Теоретически STL является частью C , поэтому вам не нужно ничего делать в CMake, чтобы использовать STL. С другой стороны: если ваши библиотеки C имеют зависимости, а их модуль CMake (например, FintQt4), CMake автоматически обрабатывает процесс связывания.
Комментарии:
1. Компоновщик-это не c , а fortran.