32 / 30 / 4
Регистрация: 03.06.2010
Сообщений: 465
|
||||||
1 | ||||||
Правильная линковка библиотек24.05.2013, 22:06. Показов 12731. Ответов 25
Метки нет (Все метки)
Долго искал в интернете, ничего толкового не нашёл, решил спросить тут. После создания приложения компилятор прицепляет файл статически, либо они должны быть в папке с проектом. Так вот зачем нужны .dll библиотеки? Как работают в IDE и для чего файлы с расширением .a
Часто скачав библиотеку вижу такую картину: Все понятно, в include - файлы заголовков, в src - Source, lib - непонятные файлы .a Зайдя в компилятор мы видим такое: Некоторые папки сходятся, а некоторые нет. Куда девать папку src? Но файлы не обязательно помешать в компилятор, но если мы хотим их прицепить по типу
Что бы понять как действую IDE, нужно выполнить работу за них
0
|
24.05.2013, 22:06 | |
Ответы с готовыми решениями:
25
Статическая линковка библиотек Линковка библиотек в VS C++2010 Линковка библиотек DirectX SDK Статическая линковка библиотек в Code::Blocks |
What a waste!
1608 / 1300 / 180
Регистрация: 21.04.2012
Сообщений: 2,729
|
|
25.05.2013, 13:02 | 21 |
No10, влюбом случае: вот ты инклюдишь что из nvModel/include, например, там ведь только объявления, надо компоновать с реализацией: либо со статической библиотекой, либо компилировать каждый раз nvModel/src и компоновать с получившимися объектными файлами.
0
|
32 / 30 / 4
Регистрация: 03.06.2010
Сообщений: 465
|
|
25.05.2013, 13:03 [ТС] | 22 |
если я меня порядок -I<dir> в makefile, идентичные ошибки. Мне показалось что он просил включить файл gl.h, но я ошибся, даже с влюченным файлом те же ошибки.
0
|
What a waste!
1608 / 1300 / 180
Регистрация: 21.04.2012
Сообщений: 2,729
|
|
25.05.2013, 13:04 | 23 |
0
|
32 / 30 / 4
Регистрация: 03.06.2010
Сообщений: 465
|
|||||||||||||||||||||||||||||||
25.05.2013, 18:16 [ТС] | 24 | ||||||||||||||||||||||||||||||
gray_fox, ага, понятно. Щас попробую.
Добавлено через 4 часа 41 минуту Блин если создать со всех файлов src .cpp/.c создать обьектные файлы .o все равно куча ошибок. Вот мой makefile:
Вот часть ошибок
у меня есть файлы .lib, что можно из них сделать и как? Добавлено через 11 минут OhMyGodSoLong, понятно. Что они дают? Вот я прицепляю их:
Кликните здесь для просмотра всего текста
Добавлено через 1 минуту Не видит некоторые переменные. Но как мне .lib прицепить? И что потом нужно будет приложению для запуска? Добавлено через 12 минут заменил эту строку makefile:
Что же я не так линкую?
0
|
What a waste!
1608 / 1300 / 180
Регистрация: 21.04.2012
Сообщений: 2,729
|
|
25.05.2013, 18:17 | 25 |
Предположу вместо
вот так Код
LDFLAGS = -L"C:/Program Files (x86)/NVIDIA Corporation/NVIDIA OpenGL SDK 10/common/nvModel/lib" LIBS = -lnvModel Потом вместо $(LIB) писать $(LDFLAGS) $(LIBS) Может поможет
1
|
32 / 30 / 4
Регистрация: 03.06.2010
Сообщений: 465
|
|||||||||||
25.05.2013, 18:33 [ТС] | 26 | ||||||||||
gray_fox, ошибки все равно. Чуть порыскав по исходникам нашёл файлы VS. Но у них специфичный makefile.
Вот что в них: nvModel.vcproj Кликните здесь для просмотра всего текста
И вот ещё один: nvModel.sln Кликните здесь для просмотра всего текста
Для меня это дремучий лес, никогда не пользовался VS. Но понял одно, они шаманят с .dll Добавлено через 45 секунд я нашёл папку с .dll!!!
0
|
25.05.2013, 18:33 | |
25.05.2013, 18:33 | |
Помогаю со студенческими работами здесь
26
Линковка библиотек в проекте Линковка библиотек gcc под линукс с++ embedded - линковка без стандартных библиотек Статическая линковка библиотек через cmake Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |