Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.85
99kiri99
0 / 0 / 0
Регистрация: 29.09.2013
Сообщений: 3
#1

Статическая линковка - C++

29.09.2013, 22:28. Просмотров 1975. Ответов 5
Метки нет (Все метки)

Появилась необходимость прилинковать статическую библиотеку (GLFW) к проекту на C++. Я подключил заголовки, а вот саму библиотеку подключить не удаётся... Подскажите, пожалуйста, в чём проблема.

Прилагаю скрины дерева файловой системы и настроек компоновщика.
P.S. Использую связку NetBeans с MinGW.
0
Миниатюры
Статическая линковка   Статическая линковка  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.09.2013, 22:28
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Статическая линковка (C++):

Статическая линковка - C++
Добрый вечер. Прочитал что бы екзешка запускалась на любом компьютере нужно сделать статическую линковку. То есть прикрепить к екзешнику...

Статическая линковка MinGW - C++
Как задать статическую линковку для MinGW в среде Qt Creator? Прописал в pro- файле:, но не помогло.

Статическая линковка boost - C++
Hi all! Захотелось побаловаться бустом, и столкнулся с проблемой, что в пакете boost-libs отсутствуют *.а файлы. Сначала я хотел...

Статическая линковка библиотек в Code::Blocks - C++
Люди добрые, подскажите пожалуйста как выполнить статическую линковку библиотек в Code::Blocks (16.01).

Статическая и динамическая линковка - в чем преимущество каждой? - C++
Помогите разобраться со статической и динамической линковкой. Я правильно понял, что статическая линковка упаковывает все либы в екзешник и...

Перенос приложения на другие компьютеры - статическая линковка - C++
Здравствуйте. Похожие вопросы звучали уже на этом форуме и на других, но я не смог найти подходящего и рабочего варианта в моем случае. Я...

5
-=ЮрА=-
Заблокирован
Автор FAQ
29.09.2013, 22:43 #2
В коде после хедеров запиши
#pragma comment(lib,"название либы.lib")
то что красным замени на корректное название
0
castaway
Эксперт С++
4885 / 3020 / 370
Регистрация: 10.11.2010
Сообщений: 11,078
Записей в блоге: 10
Завершенные тесты: 1
29.09.2013, 22:51 #3
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
В коде после хедеров запиши
В MinGW такая прагма "не прокатывает". Эти фишка MSVC.

libglfw3.a - тебе надо подключить её. Это делается с помощью флага -lglfw3, переданного компоновщику.
0
alsav22
5425 / 4820 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
29.09.2013, 22:58 #4
99kiri99, компоновщик - ввод - дополнительные зависимости, пропишите: glfw3dll.a и libglfw3.a
0
castaway
Эксперт С++
4885 / 3020 / 370
Регистрация: 10.11.2010
Сообщений: 11,078
Записей в блоге: 10
Завершенные тесты: 1
29.09.2013, 23:00 #5
Цитата Сообщение от alsav22 Посмотреть сообщение
пропишите: glfw3dll.a и libglfw3.a
И статическую и динамическую? Тут надо выбрать что-то одно.
0
99kiri99
0 / 0 / 0
Регистрация: 29.09.2013
Сообщений: 3
30.09.2013, 17:07  [ТС] #6
В make файле есть строчка:
LDLIBSOPTIONS=-L../Libraries/GLFW/lib-mingw -lopengl32 -lglfw3

Но никаких результатов это не даёт.

Лог сборки
Кликните здесь для просмотра всего текста

"/C/MinGW/msys/1.0/bin/make.exe" -f nbproject/Makefile-Debug.mk QMAKE= SUBPROJECTS= .build-conf
make.exe[1]: Entering directory `/d/Projects/GeometryEditor'
"/C/MinGW/msys/1.0/bin/make.exe" -f nbproject/Makefile-Debug.mk dist/Debug/MinGW-Windows/geometryeditor.exe
make.exe[2]: Entering directory `/d/Projects/GeometryEditor'
mkdir -p dist/Debug/MinGW-Windows
g++ -o dist/Debug/MinGW-Windows/geometryeditor build/Debug/MinGW-Windows/Main.o -L../Libraries/GLFW/lib-mingw -lopengl32 -lglfw3
build/Debug/MinGW-Windows/Main.o: In function `main':
D:\Projects\GeometryEditor/Main.cpp:8: undefined reference to `glfwCreateWindow'
collect2.exe: error: ld returned 1 exit status
make.exe[2]: *** [dist/Debug/MinGW-Windows/geometryeditor.exe] Error 1
make.exe[2]: Leaving directory `/d/Projects/GeometryEditor'
make.exe[1]: *** [.build-conf] Error 2
make.exe[1]: Leaving directory `/d/Projects/GeometryEditor'
make.exe": *** [.build-impl] Error 2


Добавлено через 1 час 47 минут
Выяснилось, что у меня библиотеки, для x64 компилятора, а с точки зрения линковки всё было верно. Всем ответившим спасибо!!!
0
30.09.2013, 17:07
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.09.2013, 17:07
Привет! Вот еще темы с ответами:

Линковка проекта. - C++
Уважаемые профессионалы, ткните меня носом в ошибку. Есть некоторая программа с множеством функций и файлов. ...

Линковка плюсового кода - C++
Компилирую статическую библиотеку c++ для последующего ее включения в с-проект. Делаю так: set COMPILER=...\arm-elf-g++.exe set...

Правильная линковка библиотек - C++
Долго искал в интернете, ничего толкового не нашёл, решил спросить тут. После создания приложения компилятор прицепляет файл статически,...

Линковка библиотек в VS C++2010 - C++
Где то в параметрах проекта можно производить линковку библиотек к проекту. Кто нибудь знает где это искать., пролазил все настройки не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru