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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 28, средняя оценка - 4.93
PaZL
19 / 19 / 1
Регистрация: 18.02.2011
Сообщений: 292
#1

NetBeans и GLUT - C++

21.09.2011, 21:25. Просмотров 3627. Ответов 11
Метки нет (Все метки)

Здравствуйте, я установил NetBeans IDE C++ и мне нужен GLUT. Я его скачал, но как мне теперь его установить ?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.09.2011, 21:25
Здравствуйте! Я подобрал для вас темы с ответами на вопрос NetBeans и GLUT (C++):

GLUT для cygwin и netbeans - C++
Не могу установить библиотеку glut. Компилятор у меня cygwin, а среда netbeans. По пути "c:\cygwin\usr\include\w32api\GL" лежит...

GL/glut.h на wxDev-C++ - C++
Подскажите пожалуйста кто знает, как настроить wxDev-C++ чтобы он нормально работал с OpenGL а именно с GL/glut.h прочитал море инструкций...

glut режимы - C++
вобщем проблема состоит в том что при режиме с двойной буферизацией не хочет ничего прорисовывать , хотя с одинарным все норм ( вобщем то я...

подключение glut - C++
Не могу подключить glut к своему приложению. Проблема в том, что я пользуюсь Windows 8 (x64), VS Premium (x64). Перепробывал...

Литература по GLUT - C++
Доброго времени суток! Кто-нибудь может посоветовать литературу по OpenGL и/или GLUT (справочники тоже будут очень полезны). Заранее...

Библиотека glut - C++
Пыталась установить библиотеку glut на Visual Studio 2015. Код не работает.Выдает вот такую ошибку: Ошибка LNK1104 не удается открыть...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
OstapBender
583 / 521 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
22.09.2011, 01:44 #2
в настройках указать пути к .h файлам и к библиотекам .lib,
подключить необходимые .h через инклюд и работать.
0
Nequti
246 / 51 / 1
Регистрация: 21.05.2011
Сообщений: 297
22.09.2011, 02:42 #3
Скачайте лучше freeglut.h , он по новее и там функций больше , если вам для учебы =)
Его можно скачать везде )
0
nxnx
Формучанин
362 / 293 / 16
Регистрация: 02.11.2010
Сообщений: 1,234
22.09.2011, 03:36 #4
предположу, что речь о винде и freeglut ( прямая ссылка).

freeglut.dll в bin папку компилятора
содержимое папки include в include папку компилятора.
(тоже самое для папки lib)
в винде должен быть прописан путь к bin папке компилятора.
В Netbeans:
Run->Set Project Configuration->Customize...->linker->Libraries->Add Library...
ввести туда freeglut затем добавить ещё 1 библиотеку - opengl32
в исходнике должен быть подключен хедер::
C
1
#include <GL/freeglut.h>
0
PaZL
19 / 19 / 1
Регистрация: 18.02.2011
Сообщений: 292
22.09.2011, 19:18  [ТС] #5
я всё установил, но мне пишет
Код
c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../../mingw32/bin/ld.exe: cannot find -lglut
collect2: ld returned 1 exit status
make[2]: *** [dist/Debug/MinGW-Windows/glut.exe] Error 1
make[1]: *** [.build-conf] Error 2
make: *** [.build-impl] Error 2
0
nxnx
Формучанин
362 / 293 / 16
Регистрация: 02.11.2010
Сообщений: 1,234
22.09.2011, 20:32 #6
Цитата Сообщение от PaZL Посмотреть сообщение
я всё установил, но мне пишет
Код
c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../../mingw32/bin/ld.exe: cannot find -lglut
collect2: ld returned 1 exit status
make[2]: *** [dist/Debug/MinGW-Windows/glut.exe] Error 1
make[1]: *** [.build-conf] Error 2
make: *** [.build-impl] Error 2
freeglut
0
PaZL
19 / 19 / 1
Регистрация: 18.02.2011
Сообщений: 292
22.09.2011, 20:49  [ТС] #7
Цитата Сообщение от nxnx Посмотреть сообщение
freeglut
всмысле ?
0
nxnx
Формучанин
362 / 293 / 16
Регистрация: 02.11.2010
Сообщений: 1,234
22.09.2011, 20:59 #8
Цитата Сообщение от PaZL Посмотреть сообщение
всмысле ?
если устанавливали freeglut, то в настройках проекта нужно тоже писать freeglut а не glut
0
PaZL
19 / 19 / 1
Регистрация: 18.02.2011
Сообщений: 292
22.09.2011, 21:03  [ТС] #9
я в линкере вписал.
0
nxnx
Формучанин
362 / 293 / 16
Регистрация: 02.11.2010
Сообщений: 1,234
22.09.2011, 21:04 #10
Код
c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../../mingw32/bin/ld.exe: cannot find -lglut
означает что в линкере прописана библиотека glut
0
sergeysa4ok
2 / 2 / 1
Регистрация: 29.09.2012
Сообщений: 6
29.09.2012, 02:17 #11
та же проблема. все точь в точь за исключением одного: я в убунте. прописывал и glut и freeglut, все равно ошибки.
программа

#include <GL/glut.h>
#include <cstdlib>

void dis() //вот и та функция дисплея
{

glClear(GL_COLOR_BUFFER_BIT);//очищаем буфер цвета
glPointSize(5);//устанавливаем размер точки (так как если не установим, то она будет очень маленькой)
glBegin(GL_POINTS);//начинаем рисовать точку (также есть и другие флаги как GL_LINES GL_TRAINGLE (вроде так =)) ) если вы рисуете линии то вам надо указать 2 точки и нарисуются линии
glColor3f(0.0, 0.0, 0.0);// устанавливаем цвет которым будем рисовать (если вы рисуете много точек или линий то можно пере тем как нарисовать что- либо установить для него цвет, если вам не устраивает цвет то 0 до 1 то можно установить glColor3ub и тогда будут 255 цвета
glVertex2f(0.25, 0.25);//рисуем точку 2f означает, что мы будем рисовать в 2 координатах и там координаты (а теперь можно пояснить glOrtho если бы мы установили размер экрана 100х100 то и поставили в glOrtho значение glOrtho(0.0, 100, 0.0, 100, -1.0, 1.0); то эту точку можно было бы нарисовать так glVertex2f(25, 25); и она была бы там же (да и если мы написали бы вместо 100 480 она была бы там ) надеюсь разобрались
//если вам надо много точек то не надо писать заново все с glBegin и тд можно просто написать сюда множество точек и они нарисуются
glEnd();//заканчиваем рисовать
glFlush();//отрисовываем все что нарисовали

}
int main(int argc, char **argv)//точка входа приложения
{
glutInit(&argc, argv);//инициализация glut
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB); //установка дисплея GLUT_SINGLE означает что мы будем использовать 1 буфер (для 2D графики) а GLUT_RGB означает что мы будем использовать RGB цвета
glutInitWindowSize(480, 480);//устанавливаем размер окна
glutInitWindowPosition(200, 200);//устанавливаем положение окна при запуске
glutCreateWindow("First programm");//создаем окно с названием "First program"
glClearColor(1.0, 1.0, 1.0, 1.0);//очищаем окно в белый цвет
glMatrixMode(GL_PROJECTION);//устанавливаем матрицу проекции
glLoadIdentity();//сбрасываем матрицу (устанавливаем нулевую)
glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);//устанавливаем ортогональный вид (или как он там называется в скобках значения)
// которым будет все измеряться то есть первые 2 - это по Х, вторые 2 - это про У и третьи 2 - это по Z. для более подробного понятия
// значения от нуля до единицы по Х это будет само окно, то есть 480 (не знаю как объяснить) значение Z не имеет значения так как мы рисуем 2D
glutDisplayFunc(dis);//указываем функцию дисплея(ну или рисования)
glutMainLoop();//цикл обработки всякого (типа нажатия на клавишу и тд)
}



ошибка

"/usr/bin/make" -f nbproject/Makefile-Debug.mk QMAKE= SUBPROJECTS= .build-conf
make[1]: Вход в каталог `/home/srg/NetBeansProjects/CppApplication_2'
"/usr/bin/make" -f nbproject/Makefile-Debug.mk dist/Debug/GNU-Linux-x86/cppapplication_2
make[2]: Вход в каталог `/home/srg/NetBeansProjects/CppApplication_2'
mkdir -p dist/Debug/GNU-Linux-x86
g++ -o dist/Debug/GNU-Linux-x86/cppapplication_2 build/Debug/GNU-Linux-x86/main.o -lfreeglut
/usr/bin/ld: cannot find -lfreeglut
collect2: выполнение ld завершилось с кодом возврата 1
make[2]: *** [dist/Debug/GNU-Linux-x86/cppapplication_2] Ошибка 1
make[2]: Выход из каталога `/home/srg/NetBeansProjects/CppApplication_2'
make[1]: *** [.build-conf] Ошибка 2
make[1]: Выход из каталога `/home/srg/NetBeansProjects/CppApplication_2'
make: *** [.build-impl] Ошибка 2


СОБРАТЬ FAILED (значение выхода 2,, общее время: 1s)



замечу, что в каталоге GL есть только glut.h, freeglut.h, с расширениями .h. Здесь говорят прописывать эти библиотеки без расширения, а netbeans желает видеть библиотеки с расширениями .a и .so .
что-то я запутался..

Добавлено через 40 минут
во всей системе по запросу *glut.a и *glut.so нашел только /usr/lib/fpc/2.4.4/units/i386-linux/opengl/libpglut.a и /usr/lib/fpc/2.4.4/units/i386-linux/opengl/libpfreeglut.a .
к сожалению, их подключение ничем не помогло:
ошибка

"/usr/bin/make" -f nbproject/Makefile-Debug.mk QMAKE= SUBPROJECTS= .build-conf
make[1]: Вход в каталог `/home/srg/NetBeansProjects/CppApplication_2'
"/usr/bin/make" -f nbproject/Makefile-Debug.mk dist/Debug/GNU-Linux-x86/cppapplication_2
make[2]: Вход в каталог `/home/srg/NetBeansProjects/CppApplication_2'
mkdir -p dist/Debug/GNU-Linux-x86
g++ -o dist/Debug/GNU-Linux-x86/cppapplication_2 build/Debug/GNU-Linux-x86/main.o /usr/lib/fpc/2.4.4/units/i386-linux/opengl/libpglut.a
build/Debug/GNU-Linux-x86/main.o: In function `dis()':
/home/srg/NetBeansProjects/CppApplication_2/main.cpp:13: undefined reference to `glClear'
/home/srg/NetBeansProjects/CppApplication_2/main.cpp:14: undefined reference to `glPointSize'
/home/srg/NetBeansProjects/CppApplication_2/main.cpp:15: undefined reference to `glBegin'
/home/srg/NetBeansProjects/CppApplication_2/main.cpp:16: undefined reference to `glColor3f'
/home/srg/NetBeansProjects/CppApplication_2/main.cpp:17: undefined reference to `glVertex2f'
/home/srg/NetBeansProjects/CppApplication_2/main.cpp:19: undefined reference to `glEnd'
/home/srg/NetBeansProjects/CppApplication_2/main.cpp:20: undefined reference to `glFlush'
build/Debug/GNU-Linux-x86/main.o: In function `main':
/home/srg/NetBeansProjects/CppApplication_2/main.cpp:25: undefined reference to `glutInit'
/home/srg/NetBeansProjects/CppApplication_2/main.cpp:26: undefined reference to `glutInitDisplayMode'
/home/srg/NetBeansProjects/CppApplication_2/main.cpp:27: undefined reference to `glutInitWindowSize'
/home/srg/NetBeansProjects/CppApplication_2/main.cpp:28: undefined reference to `glutInitWindowPosition'
/home/srg/NetBeansProjects/CppApplication_2/main.cpp:29: undefined reference to `glutCreateWindow'
/home/srg/NetBeansProjects/CppApplication_2/main.cpp:30: undefined reference to `glClearColor'
/home/srg/NetBeansProjects/CppApplication_2/main.cpp:31: undefined reference to `glMatrixMode'
/home/srg/NetBeansProjects/CppApplication_2/main.cpp:32: undefined reference to `glLoadIdentity'
/home/srg/NetBeansProjects/CppApplication_2/main.cpp:33: undefined reference to `glOrtho'
/home/srg/NetBeansProjects/CppApplication_2/main.cpp:36: undefined reference to `glutDisplayFunc'
/home/srg/NetBeansProjects/CppApplication_2/main.cpp:37: undefined reference to `glutMainLoop'
collect2: выполнение ld завершилось с кодом возврата 1
make[2]: *** [dist/Debug/GNU-Linux-x86/cppapplication_2] Ошибка 1
make[2]: Выход из каталога `/home/srg/NetBeansProjects/CppApplication_2'
make[1]: *** [.build-conf] Ошибка 2
make[1]: Выход из каталога `/home/srg/NetBeansProjects/CppApplication_2'
make: *** [.build-impl] Ошибка 2


СОБРАТЬ FAILED (значение выхода 2,, общее время: 1s)



p.s. командой "g++ main.cpp -lglut -o testprogram" код был удачно скомпилирован. вопрос только в том, как добиться того же результата от netbeans. помогите, пожалуйста
0
sergeysa4ok
2 / 2 / 1
Регистрация: 29.09.2012
Сообщений: 6
08.10.2012, 04:06 #12
УРА! Заработало!)

Не знаю, что на этот раз я сделал не так, но программа-пример скомпилировалась удачно. В меню "выполнить"> "установить конфигурацию проекта"> "настроить..."> "собрать"> "компоновщик"> "библиотеки"> "добавить библиотеку" вписал "glut", как вроде делал и ранее. Возможно помогли обновления, возможно перезагрузка. А вероятнее, просто тупил раньше.

прога

/*
* File: main.cpp
* Author: srg
*
* Created on 28 Сентябрь 2012 г., 23:57
*/
#include <GL/glut.h>
#include <cstdlib>

void dis() //вот и та функция дисплея
{

glClear(GL_COLOR_BUFFER_BIT);//очищаем буфер цвета
glPointSize(5);//устанавливаем размер точки (так как если не установим, то она будет очень маленькой)
glBegin(GL_POINTS);//начинаем рисовать точку (также есть и другие флаги как GL_LINES GL_TRAINGLE (вроде так =)) ) если вы рисуете линии то вам надо указать 2 точки и нарисуются линии
glColor3f(0.0, 0.0, 0.0);// устанавливаем цвет которым будем рисовать (если вы рисуете много точек или линий то можно пере тем как нарисовать что- либо установить для него цвет, если вам не устраивает цвет то 0 до 1 то можно установить glColor3ub и тогда будут 255 цвета
glVertex2f(0.25, 0.25);//рисуем точку 2f означает, что мы будем рисовать в 2 координатах и там координаты (а теперь можно пояснить glOrtho если бы мы установили размер экрана 100х100 то и поставили в glOrtho значение glOrtho(0.0, 100, 0.0, 100, -1.0, 1.0); то эту точку можно было бы нарисовать так glVertex2f(25, 25); и она была бы там же (да и если мы написали бы вместо 100 480 она была бы там ) надеюсь разобрались
//если вам надо много точек то не надо писать заново все с glBegin и тд можно просто написать сюда множество точек и они нарисуются
glEnd();//заканчиваем рисовать
glFlush();//отрисовываем все что нарисовали

}
int main(int argc, char **argv)//точка входа приложения
{
glutInit(&argc, argv);//инициализация glut
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB); //установка дисплея GLUT_SINGLE означает что мы будем использовать 1 буфер (для 2D графики) а GLUT_RGB означает что мы будем использовать RGB цвета
glutInitWindowSize(480, 480);//устанавливаем размер окна
glutInitWindowPosition(200, 200);//устанавливаем положение окна при запуске
glutCreateWindow("First programm");//создаем окно с названием "First program"
glClearColor(1.0, 1.0, 1.0, 1.0);//очищаем окно в белый цвет
glMatrixMode(GL_PROJECTION);//устанавливаем матрицу проекции
glLoadIdentity();//сбрасываем матрицу (устанавливаем нулевую)
glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);//устанавливаем ортогональный вид (или как он там называется в скобках значения)
// которым будет все измеряться то есть первые 2 - это по Х, вторые 2 - это про У и третьи 2 - это по Z. для более подробного понятия
// значения от нуля до единицы по Х это будет само окно, то есть 480 (не знаю как объяснить) значение Z не имеет значения так как мы рисуем 2D
glutDisplayFunc(dis);//указываем функцию дисплея(ну или рисования)
glutMainLoop();//цикл обработки всякого (типа нажатия на клавишу и тд)
}


лог

"/usr/bin/make" -f nbproject/Makefile-Debug.mk QMAKE= SUBPROJECTS= .build-conf
make[1]: Вход в каталог `/home/srg/NetBeansProjects/CppApplication_2'
"/usr/bin/make" -f nbproject/Makefile-Debug.mk dist/Debug/GNU-Linux-x86/cppapplication_2
make[2]: Вход в каталог `/home/srg/NetBeansProjects/CppApplication_2'
mkdir -p dist/Debug/GNU-Linux-x86
g++ -o dist/Debug/GNU-Linux-x86/cppapplication_2 build/Debug/GNU-Linux-x86/main.o -lglut
make[2]: Выход из каталога `/home/srg/NetBeansProjects/CppApplication_2'
make[1]: Выход из каталога `/home/srg/NetBeansProjects/CppApplication_2'


СОБРАТЬ SUCCESSFUL (общее время: 1s)

2
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.10.2012, 04:06
Привет! Вот еще темы с ответами:

Компиляция GLUT - C++
Установил библиотеку glut, по началу вроде все нормально, но при компиляции потребовало opengl.dll, скачал я ему opengl.dll, потом...

Проблеми с glut.h - C++
Здраствуйте уважаемие форумчане. У меня возникла проблема при установке библиотек и модулей OpenGL а именно glut.h. У меня Dev-C++ 4.9.9.2...

Подключение glut - C++
Всем привет, сегодня начал знакомство c++ и возникли проблемы с подключением библиотеки glut. Работаю в VS 2008. Прочел несколько...

Перетаскивание объекта. GLUT - C++
Здравствуйте. Помогите организовать перетаскивание объекта мышью. Координаты мыши отлавливаются как координата пикселя. (не смог...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
08.10.2012, 04:06
Ответ Создать тему
Опции темы

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