Вопрос на самом деле не говорит о том, строите ли вы свой собственный проект или проект кого-то другого, и используете ли вы IDE или какую-либо систему сборки. Я постараюсь дать общий ответ, подходящий для большинства сценариев.
Но, во-первых, это заголовочные файлы , а не библиотеки (кстати, это другой тип боли). Вам необходимо явно сделать их доступными для компилятора, если они не находятся на стандартном пути поиска. Увы, иногда много ручной работы, особенно когда вам нужно создать сторонний проект с кучей зависимостей.
Я не уверен, что это полный список папок?
Найти стандартные пути включения вашего компилятора может быть непросто. Вот один вопрос, на который есть несколько подсказок: Какие каталоги GCC по умолчанию включают в себя?
Как найти те, которые по умолчанию не найдены?
Они могут присутствовать или не присутствовать на вашем компьютере. Если они есть, вам придется выяснить, где они находятся. В противном случае вы должны выяснить, к какой библиотеке они принадлежат, затем загрузить и распаковать (и, вероятно, собрать) ее. В любом случае вам придется указать путь к заголовочным файлам этой библиотеки в вашей IDE (или Makefile, или что вы используете). О, и вам нужно убедиться, что версия библиотеки соответствует версии, требуемой проектом. Fun!
В macOS вы можете использовать сторонние менеджеры пакетов (например, brew) для управления установкой библиотеки.
pkg-config
недоступна в macOS, если вы не установите ее изсторонний источник.
Если вы создаете свой собственный проект, несколько лучшим решением будет использование CMake и его find_package
команда . Однако, только библиотеки, поддерживаемые CMake, могут быть обнаружены таким образом. К счастью, их коллекция поддерживаемых библиотек довольно обширна, и вы можете создавать свои собственные find_package
скрипты. Более того, CMake является кроссплатформенным и может обрабатывать версии для вас.