@NikSIk31

Как подключить библиотеку?

Добрый, делаю по гайду подключение библиотеки С++, но нет у меня компоновщика в проекте. Что делать, с чем может быть проблема?

Сделал:
Закинул папки в проект и подключил через include заголовочные, а так же в свойствах C++/Общие/Дополнительные каталоги включаемых файлов - добавил путь к каталогу с файликом .lib
и в Компоновщик/Общие/Дополнительные каталоги библиотек ту же папку подключал.

Ошибка:
Ошибка LNK1104 не удается открыть файл "LIBC.lib" firstPhase E:\cpp\firstPhase\firstPhase\LINK 1

я вообще не понимаю, что это за файл LIBC.lib, ведь у меня либа называется вообще по другому..

пробовал вот это :

1. В настройках проекта properties-> C++ -> code generation-> Runtime Library вместо MD поставил MT.
2. Зайти в project->properties-> Linker -> Input -> Additional Dependencies и поменять libc.lib на libcmt.lib

второй пункт вообще не нашёл никаких libcmt
  • Вопрос задан
  • 84 просмотра
Пригласить эксперта
Ответы на вопрос 1
@res2001
Developer, ex-admin
libc/libcmt - это стандартная библиотека, отличаются они разным способом компоновки (libc - динамическая, libcmt - статическая). Есть еще аналогичный комплект для отладочной сборки.
Стандартная библиотека должна быть в составе студии, причем все ее варианты. Если нет, возможно студия как-то криво поставилась. Или возможно вы ставили выборочную установку и чего-то не включили. Попробуйте переустановить студии или добавить необходимые компоненты. Возможно вы не включили в установку SDK (сейчас не могу точно посмотреть название пакета в инсталяторе, т.к. нет винды со студией под рукой).

Компоновщик (линкер) есть по любому, просто он вызывается компилятором. Именно он собирает из объектных файлов и библиотек исполняемый файл. Компоновщик является неотъемлемой частью процесса сборки и поставляется вместе с компилятором. Опции ему передаются через опции компилятора. Например те же MT/MD, а так же -L/-l - это опции компилятора для компоновщика.
Если собирать проект вручную (или через nmake/make), то можно вызывать компоновщик напрямую, задавая необходимые опции. Но студия делает это за вас.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы