Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.02.2012, 00:38   #1
MrGukk
Пользователь
 
Регистрация: 09.05.2011
Сообщений: 33
По умолчанию Не подключается .lib

Здравствуйте.
Заранее извиняюсь за тривиальный вопрос, но никак не получается подключить .lib файл.

Делал следующие.
Для начала создал свою RevStringlib.lib, собрал, лежит в папке.

Далее хочу подключить какую-нибудь функцию из этой библиотеки.
1. Создал новый проект windows console application c++
2. Tools->Options-> VC++ Dircetories-> выбрал в выпадающем списке Show directories for строку "Library files" и добавил путь к своей RevStringlib.lib файлу->OK.
3. Project->Properties->Linker->General->Additional Library Directories->добавил путь к RevStringlib.lib

В этой .lib есть хедер rev_func.h и соответствующая функция rev_func.cpp.
В своем проекте, который должен использовать RevStringlib.lib пишу:
#include "rev_func.h"

и в теле main():

rev_string(s);

На этапе линковки выдается ошика:
error LNK2019: unresolved external symbol "void __cdecl rev_string(char *)" (?rev_string@@YAXPAD@Z) referenced in function _wmain

C:\Documents and Settings\My Documents\Visual Studio 2005\Projects\Lib_usage\Debug\Lib_u sage.exe : fatal error LNK1120: 1 unresolved externals

Что делаю не так и что нужно сделать ещё?
PS. При создании lib и проекта убирал галку "Precompiled header"

Заранее спасибо.
MrGukk вне форума Ответить с цитированием
Старый 05.02.2012, 00:45   #2
MrGukk
Пользователь
 
Регистрация: 09.05.2011
Сообщений: 33
По умолчанию

Использую VS 2005
MrGukk вне форума Ответить с цитированием
Старый 05.02.2012, 14:19   #3
Korben5E
Форумчанин
 
Аватар для Korben5E
 
Регистрация: 13.07.2010
Сообщений: 346
По умолчанию

А функция в Либе как объявлена?
Non est culpa vin, sed culpa bibentis
Korben5E вне форума Ответить с цитированием
Старый 05.02.2012, 23:15   #4
MrGukk
Пользователь
 
Регистрация: 09.05.2011
Сообщений: 33
По умолчанию

В хедере:
#ifndef rev_func_h
#define
void rev_func(char *s);
#endif

В .срр:
void rev_func(char *s){

}

Потом собирал либу.
MrGukk вне форума Ответить с цитированием
Старый 06.02.2012, 00:06   #5
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

а вы что дефайните то?
Код:
#ifndef rev_func_h
 #define rev_func_h
 void rev_func(char *s);
 #endif
так надо.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 06.02.2012, 11:00   #6
MrGukk
Пользователь
 
Регистрация: 09.05.2011
Сообщений: 33
По умолчанию

Извиняюсь, так и есть.
MrGukk вне форума Ответить с цитированием
Старый 06.02.2012, 11:29   #7
MrGukk
Пользователь
 
Регистрация: 09.05.2011
Сообщений: 33
По умолчанию

Всё, решил. Нужно было прописать имя либы в поле additional dependencies.
MrGukk вне форума Ответить с цитированием
Старый 06.02.2012, 11:29   #8
MrGukk
Пользователь
 
Регистрация: 09.05.2011
Сообщений: 33
По умолчанию

Спасибо за участие
MrGukk вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не подключается манифест alex.s Win Api 3 02.10.2011 13:24
Не подключается CommonDialog Klim Bassenger Microsoft Office Excel 0 06.06.2011 12:38
БД не подключается к сайту. BloodyRose Помощь студентам 0 17.04.2010 20:12
не подключается к интернету alex(21) Безопасность, Шифрование 5 05.11.2009 09:12
не подключается БД yulia БД в Delphi 8 13.12.2007 16:34