Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.82/103: Рейтинг темы: голосов - 103, средняя оценка - 4.82
2 / 2 / 1
Регистрация: 15.09.2012
Сообщений: 47

Подключение библиотек в Eclipse c++

02.06.2013, 12:49. Показов 19450. Ответов 21
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Решил заняться OpenGL и сказал парочку библиотек. Решил добавить их в Eclipse и провалился. Дело в том, что я ни разу такое не делал. В скачанном архиве есть папки includes и lib. я добавляю их через properties-path and symbols проекта соответственно в includes и libraries. и у меня при сборке вылезает такая борода c:/mingw/bin/../lib/gcc/mingw32/4.6.2/../../../../mingw32/bin/ld.exe: cannot find -lC:\Users\Admin\workspace\test\glew-1.9.0\lib\glew32.lib , хотя все там на месте. в чем прикол, может у кого было такое ?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
02.06.2013, 12:49
Ответы с готовыми решениями:

GUI С++ в eclipse без дополнительных библиотек
Всем доброго времени суток и всех с наступающим НГ! Подскажите какую-нибудь библиотеку для работы с GUI для среды eclipse (под компилятор...

Подключение библиотек
c:\documents and settings\admin\рабочий стол\compressed_matrix\compressed_matrix\main.cpp(4) : fatal error C1083: Не удается открыть файл...

Подключение библиотек
Здравствуйте ув. форумчане.Я пишу программы c++ на notepad++.Возможно ли добавить библиотеки такие как sfml,opengl,и т.д ?Про visual studio...

21
503 / 352 / 94
Регистрация: 22.03.2011
Сообщений: 1,112
02.06.2013, 13:13
http://wiki.eclipse.org/CDT/Us... project.3F
0
2 / 2 / 1
Регистрация: 15.09.2012
Сообщений: 47
02.06.2013, 13:35  [ТС]
да там написано все тоже самое. я все перепробовал. у меня проблема в том, что почему-то не видит моих библиотек. может, потому что параметр -l прилепился к букве диска С в сообщении об ошибке... может, по этому пути он ищет и, естественно, не находит ничего
0
503 / 352 / 94
Регистрация: 22.03.2011
Сообщений: 1,112
02.06.2013, 15:20
-l это указание линкеру линковаться с данной либой. Сделайте скриншот посмотрим что вы там написали
0
2 / 2 / 1
Регистрация: 15.09.2012
Сообщений: 47
04.06.2013, 12:39  [ТС]
ну давайте по порядочку.
Вот мои includes
C++
1
2
#include <GL/glew.h>
#include <GL/glut.h>
В скринах предоставил настройки. Кстати в папке freeglut нет папки lib!!! может из-за неё вся каша?? кстати эклипс нормально работает без этих библиотек, то есть обычные проги можно писать.

Вот полный лог того, что мне выводит, когда я нажимаю билд:

12:25:10 **** Incremental Build of configuration Debug for project test ****
Info: Internal Builder is used for build
g++ "-LC:\\Users\\Admin\\workspace\\test\\glew-1.9.0\\lib" -o test.exe "src\\test.o" "..\\glew-1.9.0\\lib\\glew32.lib" "..\\glew-1.9.0\\lib\\glew32mx.lib" "..\\glew-1.9.0\\lib\\glew32mxs.lib" "..\\glew-1.9.0\\lib\\glew32s.lib"
src\test.o: In function `glutInit_ATEXIT_HACK':
C:/Users/Admin/workspace/test/freeglut-2.8.1/include/GL/freeglut_std.h:620: undefined reference to `_imp____glutInitWithExit@12'
src\test.o: In function `glutCreateWindow_ATEXIT_HACK':
C:/Users/Admin/workspace/test/freeglut-2.8.1/include/GL/freeglut_std.h:622: undefined reference to `_imp____glutCreateWindowWithExit@8'
src\test.o: In function `glutCreateMenu_ATEXIT_HACK':
C:/Users/Admin/workspace/test/freeglut-2.8.1/include/GL/freeglut_std.h:624: undefined reference to `_imp____glutCreateMenuWithExit@8'
src\test.o: In function `render':
C:\Users\Admin\workspace\test\Debug/../src/test.cpp:24: undefined reference to `glClearColor@16'
C:\Users\Admin\workspace\test\Debug/../src/test.cpp:25: undefined reference to `glClear@4'
C:\Users\Admin\workspace\test\Debug/../src/test.cpp:27: undefined reference to `_imp__glutSwapBuffers@0'
src\test.o: In function `main':
C:\Users\Admin\workspace\test\Debug/../src/test.cpp:36: undefined reference to `_imp__glutInitDisplayMode@4'
C:\Users\Admin\workspace\test\Debug/../src/test.cpp:37: undefined reference to `_imp__glutInitWindowSize@8'
C:\Users\Admin\workspace\test\Debug/../src/test.cpp:39: undefined reference to `_imp__glutIdleFunc@4'
C:\Users\Admin\workspace\test\Debug/../src/test.cpp:40: undefined reference to `_imp__glutDisplayFunc@4'
C:\Users\Admin\workspace\test\Debug/../src/test.cpp:42: undefined reference to `_imp__glewInit@0'
C:\Users\Admin\workspace\test\Debug/../src/test.cpp:43: undefined reference to `_imp____GLEW_VERSION_2_0'
C:\Users\Admin\workspace\test\Debug/../src/test.cpp:53: undefined reference to `_imp__glutMainLoop@0'
collect2: выполнение ld завершилось с кодом возврата 1

12:25:10 Build Finished (took 251ms)


Кто-нибудь может помочь? Я запарился уже. Кстати на буке (там у меня нет интернета) пробовал с VS 2012 - он мне как то родил папку с либами и freeglut.dll, freeglut.lib... И вроде как получается, но как-то криво... Но не суть, мне нужно, чтобы работало в эклипсе.

вот код самой проги(копипаст с http://duriansoftware.com/joe/... eshow.html)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include <stdlib.h>
#include <GL/glew.h>
#include <GL/glut.h>
#include <stdio.h>
 
static int make_resources(void)
{
    return 1;
}
 
/*
 * GLUT callbacks:
 */
static void update_fade_factor(void)
{
}
 
static void render(void)
{
    glClearColor(1.0f, 1.0f, 1.0f, 1.0f);
    glClear(GL_COLOR_BUFFER_BIT);
 
    glutSwapBuffers();
}
 
/*
 * Entry point
 */
int main(int argc, char** argv)
{
    glutInit(&argc, argv);
    glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE);
    glutInitWindowSize(400, 300);
    glutCreateWindow("Hello World");
    glutIdleFunc(&update_fade_factor);
    glutDisplayFunc(&render);
 
    glewInit();
    if (!GLEW_VERSION_2_0) {
        fprintf(stderr, "OpenGL 2.0 not available\n");
        return 1;
    }
 
    if (!make_resources()) {
        fprintf(stderr, "Failed to load resources\n");
        return 1;
    }
 
    glutMainLoop();
    return 0;
}
Миниатюры
Подключение библиотек в Eclipse c++   Подключение библиотек в Eclipse c++   Подключение библиотек в Eclipse c++  

0
Антикодер
Эксперт функциональных языков программирования
1888 / 870 / 48
Регистрация: 15.09.2012
Сообщений: 3,088
04.06.2013, 13:01
как то так
Миниатюры
Подключение библиотек в Eclipse c++  
0
503 / 352 / 94
Регистрация: 22.03.2011
Сообщений: 1,112
04.06.2013, 13:04
bezoomec,
начните с того, что почитайте какие библиотеки Вам надо.
0
2 / 2 / 1
Регистрация: 15.09.2012
Сообщений: 47
04.06.2013, 14:33  [ТС]
XRuZzz, ваш способ абсолютно идентичен

stima, я знаю,что мне нужно. просто рассчитывал на то, что тут будет человек, который через это прошел
0
503 / 352 / 94
Регистрация: 22.03.2011
Сообщений: 1,112
04.06.2013, 14:38
Хорошо, давайте по порядку.
Какие библиотеки вы собираетесь использовать?
0
 Аватар для Matan!
1882 / 1016 / 228
Регистрация: 31.05.2013
Сообщений: 6,645
Записей в блоге: 6
04.06.2013, 14:45
Скорее всего,дело в Eclipse.Какая у Вас версия?Фирма Oracle выпускает Eclipse для С/С++ - разработчиков.На офсайте так она и называется.
0
503 / 352 / 94
Регистрация: 22.03.2011
Сообщений: 1,112
04.06.2013, 14:48
2Matan! не говорите того чего не знаете.
0
Антикодер
Эксперт функциональных языков программирования
1888 / 870 / 48
Регистрация: 15.09.2012
Сообщений: 3,088
04.06.2013, 15:14
Цитата Сообщение от Matan! Посмотреть сообщение
Фирма Oracle выпускает Eclipse для С/С++ - разработчиков.
А кто такой Eclipse Foundation тогда? Oracle ничего бесплатно не делает

Да я компилировал проекты с glut на Eclipse + MinGW (там всё делается элементарно, если знаешь). Я дал ему дельный совет. Но товарищ сам куда то пропал.
0
 Аватар для Matan!
1882 / 1016 / 228
Регистрация: 31.05.2013
Сообщений: 6,645
Записей в блоге: 6
04.06.2013, 15:25
Цитата Сообщение от XRuZzz Посмотреть сообщение
А кто такой Eclipse Foundation тогда? Oracle ничего бесплатно не делает

Да я компилировал проекты с glut на Eclipse + MinGW (там всё делается элементарно, если знаешь). Я дал ему дельный совет. Но товарищ сам куда то пропал.
Я имел ввиду
Eclipse IDE for C/C++ Developers из сайта www.eclipse.org/downloads/
Может,я что-то не так понял.
0
Антикодер
Эксперт функциональных языков программирования
1888 / 870 / 48
Регистрация: 15.09.2012
Сообщений: 3,088
04.06.2013, 15:39
Цитата Сообщение от Matan! Посмотреть сообщение
Я имел ввиду
Eclipse IDE for C/C++ Developers из сайта www.eclipse.org/downloads/
Может,я что-то не так понял.
Да это понятно. Совет хороший, но у него компилятор ругается. Я лично всегда Eclipse Classic качаю, потом сам ставлю нужные плагины. Eclipse -это платформа. Eclipse IDE for C/C++ Developers - это набор плагинов с платформой Eclipse, то есть это не отдельная версия Eclipse. текущая версия у Eclipse - 4.2
0
2 / 2 / 1
Регистрация: 15.09.2012
Сообщений: 47
04.06.2013, 15:43  [ТС]
Matan!, нет. codeblocks тоже выпендривается. на эклипсах пробовал разных - и для java с установленным CDT и для С++ dev.
stima, freeglut, glew
0
Антикодер
Эксперт функциональных языков программирования
1888 / 870 / 48
Регистрация: 15.09.2012
Сообщений: 3,088
04.06.2013, 16:17
Цитата Сообщение от bezoomec Посмотреть сообщение
Matan!, нет. codeblocks тоже выпендривается. на эклипсах пробовал разных - и для java с установленным CDT и для С++ dev.
stima, freeglut, glew
а что вам не понятно в моём ответе? там где опция -L мы прописываем путь к библиотекам. А там где опция -l мы прописываем сами библиотеки. я точно не знаю как у вас называются библиотеки.

Может это glew glut может freeglut. Я зная только то, что это должно быть похоже на -lglew -lglut либо -lglew -lfreeglut либо ещё какие библиотеки нужно прописать.

Ну что мне самому freeglut чтоли качать чтоб вам помочь?

Там где у вас вкладка Libraries вы показали тока нижнюю часть скриншота, а вы покажите верхнюю. Она не должна быть пусть в Glut проекте.

Добавлено через 5 минут
Видите у меня на скриншоте выбран раздел Paths and Symbols это более глобальный раздел(но не выходит за рамки настроек одного проекта, если вы находитесь в свойствах проекта), чем тот в котором вы настраиваете. Поэтому правильнее прописывать все пути в разделе Paths and Symbols

Добавлено через 11 минут
и вот правильный набор библиотек
Bash
1
g++ -o test.exe test.cpp -lglew32 -lfreeglut -lopengl32 -lglu32 -Wl,--subsystem,windows
по ходу для 32-битных приложений
из статьи на хабре
1
503 / 352 / 94
Регистрация: 22.03.2011
Сообщений: 1,112
04.06.2013, 16:57
Цитата Сообщение от bezoomec Посмотреть сообщение
stima, freeglut, glew
Нет. Как Вам уже сказал XRuZzz. Должен быть еще -lopengl32 -lglu32
0
2 / 2 / 1
Регистрация: 15.09.2012
Сообщений: 47
04.06.2013, 21:37  [ТС]
спасибо, завтра буду пробовать и отпишу что как
0
2 / 2 / 1
Регистрация: 15.09.2012
Сообщений: 47
12.06.2013, 16:00  [ТС]
XRuZzz, по инструкции с хабра сделал все, тем не менее ошибки лезут.

Кто может помочь мне? Честное слово, я уже все перепробовал. После того, как все подключил, все либы и инклуды, показывает такую картину:

15:49:43 **** Incremental Build of configuration Debug for project test ****
Info: Internal Builder is used for build
g++ -O0 -g3 -Wall -c -fmessage-length=0 -o "src\\test.o" "..\\src\\test.cpp"
g++ "-LC:\\MinGW\\lib" -o test.exe "src\\test.o"
src\test.o: In function `glutInit_ATEXIT_HACK':
c:/mingw/bin/../lib/gcc/mingw32/4.6.2/../../../../include/GL/freeglut_std.h:620: undefined reference to `_imp____glutInitWithExit@12'
src\test.o: In function `glutCreateWindow_ATEXIT_HACK':
c:/mingw/bin/../lib/gcc/mingw32/4.6.2/../../../../include/GL/freeglut_std.h:622: undefined reference to `_imp____glutCreateWindowWithExit@8'
src\test.o: In function `glutCreateMenu_ATEXIT_HACK':
c:/mingw/bin/../lib/gcc/mingw32/4.6.2/../../../../include/GL/freeglut_std.h:624: undefined reference to `_imp____glutCreateMenuWithExit@8'
src\test.o: In function `main':
C:\Users\Admin\workspace\test\Debug/../src/test.cpp:9: undefined reference to `_imp__glutInitDisplayMode@4'
C:\Users\Admin\workspace\test\Debug/../src/test.cpp:10: undefined reference to `_imp__glutInitWindowSize@8'
C:\Users\Admin\workspace\test\Debug/../src/test.cpp:11: undefined reference to `_imp__glutInitContextVersion@8'
C:\Users\Admin\workspace\test\Debug/../src/test.cpp:12: undefined reference to `_imp__glutInitContextProfile@4'
C:\Users\Admin\workspace\test\Debug/../src/test.cpp:15: undefined reference to `_imp__glewInit@0'
C:\Users\Admin\workspace\test\Debug/../src/test.cpp:20: undefined reference to `_imp__glutMainLoop@0'
collect2: выполнение ld завершилось с кодом возврата 1

15:49:45 Build Finished (took 1s.671ms)


а вот и сам код

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <GL/glew.h>
#include <GL/freeglut.h>
#include <GL/gl.h>
 
int main(int argc, char** argv) {
 
    glutInit(&argc, argv);
    glutInitDisplayMode(GLUT_RGBA);
    glutInitWindowSize(512, 512);
    glutInitContextVersion(4, 1);
    glutInitContextProfile(GLUT_CORE_PROFILE);
    glutCreateWindow(argv[0]);
 
    if (glewInit()) {
        std::cerr << "Unable to initialize GLEW ... exiting\n";
        exit(EXIT_FAILURE);
    }
 
    glutMainLoop();
}
0
Антикодер
Эксперт функциональных языков программирования
1888 / 870 / 48
Регистрация: 15.09.2012
Сообщений: 3,088
12.06.2013, 21:04
ну у меня в Gentoo компиляция проходит с указанием таких библиотек на вкладке Libraries
GL
glut
GLEW

скорее всего проблема в том нужно найти правильное название для указания этих библиотек

причем я успешно скомпилировал оба исходника которые ты выкладывал в теме :P

Добавлено через 7 минут
Там надо учитывать флаг -m64 или -m32 . У меня по умолчанию компилируется в -m64 так как система 64-битная
путь к библиотекам по умолчанию у меня указывается /usr/lib64 - там как раз и стоит freeglut и glew и всё остальное.

Добавлено через 5 минут
если бы у вас стоял линух я бы вам просто кинул файл проекта и вам было бы намного легче скомпилить. А так наверно нет смысла вам давать файл проекта

Добавлено через 17 минут
ещё надо устанавливать настройки не только для Debug режима но и для Release. Для этого в элементе выбора конфигурации выбрать All configurations, и потом только устанавливать опции

Добавлено через 19 минут
+ не помешает прочитать темы freeglut, MinGW
GLUT: undefined reference to...
я уж их читать не буду )
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
12.06.2013, 21:04
Помогаю со студенческими работами здесь

подключение библиотек
доброго времени суток #pragma comment(lib, &quot;GLU32.lib&quot;) как понять из какой папки программа будет брать данную библиотеки, тоесть из...

Подключение библиотек
Доброго времени суток %username% !!! Изучаю С++ не очень долго и возник такой вопрос. Необходимо подключить библиотеку &lt;string&gt; в...

Подключение библиотек
Здравствуйте. Подскажите пожалуйста почему при попытке подключить к программе библиотеки &lt;stdlib.h&gt; и &lt;conio.h&gt; выдаётся ошибка...

Подключение библиотек
Здравствуйте! Проблема: не могу подключить новые библиотеки! Имею VS 2010 Ultimate ! кликаю: сервис-&gt;параметры-&gt;проекты и...

Подключение библиотек
Для интереса решил попробовать поиграть со звуком. Скачал библиотеку. Установил по инструкции (Скину ссылку если нужно) Выдает ld...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru