Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > Как подключить библиотеку к программе?


Автор: IL3 12.4.2007, 19:21
Собственно, вопрос не по программирования, а по технике.
У меня есть библиотека(*.lib) и заголовок(*.h) к ней. Мне надо в своей программе использовать некоторые функции из этой библиотеки. Казалось бы все просто, но компилятор говорит:" unresolved external symbol...."
Разумеется я предварительно скопировал библиотеку в папку /lib в директории компилятора(там лежат все библиотеки в конфигах так указано), а заголовок в папку /include.
Компилятор у меня Visual C++ Toolkit, та что перед Visual С++ Express Edition была.
Очень прошу вас помочь, полдня бьюсь ничего не помогает.

Автор: _hunter 12.4.2007, 19:33
Цитата(IL3 @  12.4.2007,  19:21 Найти цитируемый пост)
Казалось бы все просто, но компилятор говорит:" unresolved external symbol...

таки все просто: нужно подключить либу к проекту (свойства проекта, там закладка линкера, там инпут -- туда ее и вписать)

Автор: IL3 12.4.2007, 19:41
Проблема: Visual C++ Toolkit консольный и понятия проект там нет как такового.

Автор: JackYF 12.4.2007, 19:44
-l<имя_либы> в добавлении к настройкам линкера попробуй.

Автор: IL3 12.4.2007, 19:50
JackYF, спасибо, но это не помогает. Он незнает ни опции -l ни опции /l. 

Автор: fantast 12.4.2007, 19:56
тогда в начале кода пропиши
Код

#pragma comment(lib, "название библиотеки с путем к нему")




Автор: IL3 12.4.2007, 20:07
fantast, это именно то, что нужно. Огромное спасибо! Жаль, что у меня меньше 100 постов, так бы твою репутацию обязательно повысил.

Автор: fantast 12.4.2007, 20:10
рад что тебе помогло, удачи

Автор: JackYF 12.4.2007, 20:18
IL3, дал fantastу в репу за тебя smile

Автор: fantast 12.4.2007, 20:20
 smile 

Автор: qvasic 12.4.2007, 21:19
так же можно попробовать опцию "/link <obj_or_lib_file>".

Автор: ShumaHerr 14.4.2007, 21:08
У меня вопрос, который может показаться глупым:
Цитата

тогда в начале кода пропиши
Код

1:#pragma comment(lib, "название библиотеки с путем к нему")


В каком формате надо писать путь?У меня не получилось!
 smile 

Автор: vinter 14.4.2007, 21:41
в абсолютном, или относительном. покажи как ты путь написал

Автор: fantast 14.4.2007, 22:06
ShumaHerr, там где / стоит надо ставить их 2 штуки
"D://progs//xryxry.lib"

Добавлено через 37 секунд
кажется 8)

Автор: zkv 14.4.2007, 22:13
fantast, экранировать надо обратные слеши: "D:\\some\\path.lib"

Автор: fantast 14.4.2007, 22:21
ну да,я так и сказал  smile 

Автор: ShumaHerr 15.4.2007, 20:34
Путь ввёл правильно, но таже ошибка:
Цитата

Linking...
window.obj : error LNK2001: unresolved external symbol _IID_IDirectDraw
Debug/DDraw demo.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe. 
 smile 

Автор: nerezus 15.4.2007, 20:53
ShumaHerr, это работает только в компилере от M$, ты его юзаешь то?

Автор: 586 16.4.2007, 01:42
Цитата(ShumaHerr @  15.4.2007,  21:34 Найти цитируемый пост)
Путь ввёл правильно, но таже ошибка:
Цитата
Linking...
window.obj : error LNK2001: unresolved external symbol _IID_IDirectDraw
Debug/DDraw demo.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe. 

А ты подключил dxguid.lib

Автор: betal 16.4.2007, 15:47
Если мне не изменяет память то тут не может быть ни каких может
#include< > или #include" "

Автор: ShumaHerr 16.4.2007, 18:09
Я юзаю MS Visual. Так как мне исправить эту ошибку? smile

Добавлено через 4 минуты и 54 секунды
Всё работает! Спасибо 586, плюсаните ему репутацию кто-нибудь за меня! smile  

Автор: nickless 16.4.2007, 19:26
Цитата(ShumaHerr @  16.4.2007,  17:09 Найти цитируемый пост)
Спасибо 586, плюсаните ему репутацию кто-нибудь за меня!

Сделано  smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)