Я использую Visual Studio 2022 (vs2022 17.4.4
) и хочу использовать библиотеку {fmt} в своем проекте. Я клонировал репозиторий с {fmt} GitHub и выполнил следующую процедуру:
Я добавил ...\include\fmt
к Project → Properties → C/C++ → Additional Include Directories
.
Я добавил ...\src
к Project → Properties → Linker → General → Additional Library Directories
.
Я добавил fmt.cc;format.cc;os.cc;
к Project → Properties → Linker → Input → Additional Dependencies
.
Однако #include <fmt/core.h>
по-прежнему возникает ошибка.
Не удается открыть исходный файл «fmt/core.h»
Не могли бы вы сказать мне, что делать?
Почему вы добавляете .cc
прямо в свой проект? Используйте CMake для сборки libfmt по назначению, а затем добавьте полученную библиотеку.
Вы не используете fmt
дважды. Или
...\include\fmt
и #include <core.h>
или
...\include
и #include <fmt/core.h>
Предположительно вариант 2 предпочтительнее.
Другие ваши настройки тоже не кажутся мне правильными. Почему вы добавляете файлы .cpp в качестве библиотек? Либо вам нужно скомпилировать файл .cpp, и в этом случае их следует добавить в проект, как и любые другие файлы .cpp. Или есть реальная библиотека для сборки, и в этом случае вам нужно настроить отдельный проект для ее сборки (при условии, что он еще не создан).
Дополнительные каталоги библиотек должны содержать пути к статическим/динамическим библиотекам, а не к исходным файлам.
PATH_TO_FMT_ROOT/include
к C/C++ > Additional Include Directories
..cc
файлы в PATH_TO_FMT_ROOT/src
) в папку src вашего проекта. ИЛИ
Создайте библиотеку из исходных файлов и включите ее, указав путь и имя в параметрах компоновщика.
Папка src содержит файлы .cc, которые являются исходными файлами, а не файлами библиотеки. Дополнительные каталоги библиотек должны содержать пути к статическим/динамическим библиотекам.