С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
MaksimZh
0 / 0 / 0
Регистрация: 06.01.2013
Сообщений: 5
#1

Компиляция кода Freeglut - C++

26.03.2013, 13:44. Просмотров 774. Ответов 2
Метки нет (Все метки)

Здравствуйте. Стоит Ubuntu 12.10, компилятор g++ , библиотеку freeglut поставил из репозитория, после чего инклуды появились нужном месте в g++( то есть в /usr/include ), компилирую этот код:

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
#include <GL/freeglut.h>
void display()
{
  glClear(GL_COLOR_BUFFER_BIT);
  glBegin(GL_LINES);
  glColor3f(1.0, 0.0, 0.0);
  glVertex2f(0.25, 0.25);
  glVertex2f(0.75, 0.75);
  glColor3f(0.0, 1.0, 0.0);
  glVertex2f(0.75, 0.25);
  glVertex2f(0.25, 0.75);
  glColor3f(0.0, 0.0, 1.0);
  glVertex2f(0.50, 0.25);
  glVertex2f(0.50, 0.75);
  glEnd();
  glFlush();
}
 
int main(int argc, char **argv)
{
  glutInit(&argc, argv);
  glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
  glutInitWindowSize(240, 240);
  glutInitWindowPosition(100, 740);
  glutCreateWindow("Test");
  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);
  glutDisplayFunc(display);
  glutMainLoop();
}
после чего получаю это:
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
/tmp/ccmVAZvW.o: In function `display()':
cp.cpp:(.text+0xe): undefined reference to `glClear'
cp.cpp:(.text+0x1a): undefined reference to `glBegin'
cp.cpp:(.text+0x39): undefined reference to `glColor3f'
cp.cpp:(.text+0x4f): undefined reference to `glVertex2f'
cp.cpp:(.text+0x65): undefined reference to `glVertex2f'
cp.cpp:(.text+0x84): undefined reference to `glColor3f'
cp.cpp:(.text+0x9a): undefined reference to `glVertex2f'
cp.cpp:(.text+0xb0): undefined reference to `glVertex2f'
cp.cpp:(.text+0xcf): undefined reference to `glColor3f'
cp.cpp:(.text+0xe5): undefined reference to `glVertex2f'
cp.cpp:(.text+0xfb): undefined reference to `glVertex2f'
cp.cpp:(.text+0x100): undefined reference to `glEnd'
cp.cpp:(.text+0x105): undefined reference to `glFlush'
/tmp/ccmVAZvW.o: In function `main':
cp.cpp:(.text+0x122): undefined reference to `glutInit'
cp.cpp:(.text+0x12e): undefined reference to `glutInitDisplayMode'
cp.cpp:(.text+0x142): undefined reference to `glutInitWindowSize'
cp.cpp:(.text+0x156): undefined reference to `glutInitWindowPosition'
cp.cpp:(.text+0x162): undefined reference to `glutCreateWindow'
cp.cpp:(.text+0x18a): undefined reference to `glClearColor'
cp.cpp:(.text+0x196): undefined reference to `glMatrixMode'
cp.cpp:(.text+0x19b): undefined reference to `glLoadIdentity'
cp.cpp:(.text+0x1c5): undefined reference to `glOrtho'
cp.cpp:(.text+0x1d1): undefined reference to `glutDisplayFunc'
cp.cpp:(.text+0x1d6): undefined reference to `glutMainLoop'
collect2: ошибка: выполнение ld завершилось с кодом возврата 1
Буду благодарен за помощь. Уже третий день мучаюсь и никак
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.03.2013, 13:44
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Компиляция кода Freeglut (C++):

Компиляция кода в приложении - C++
Можно каким-либо образом скомпилировать код в работающем приложении. Т.е. приложение работает, в него подается файл с исходным кодом, его...

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

Компиляция кода с ромбовидным наследованием - C++
Здравствуйте. Я написал элементарное наследование. На VS 2015 всё компилится, а на CLion нет. В чём может быть проблема? class A { ...

Компиляция C++ кода через консоль - C++
Есть простенький код: #include &lt;iostream&gt; #include &lt;vector&gt; int main(int argc, char *argv){ std::vector&lt;int&gt; vec; int num=1;...

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

Загрузка исходного кода и компиляция *.exe - C++
Помогите разобраться как в Visual Studio 2010 загрузить исходный код для компиляции программы?

2
Tulosba
:)
Эксперт С++
4397 / 3233 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
26.03.2013, 16:01 #2
Вероятно нужно библиотеку указать через -l, в которой определено всё, что не находит линкер.
0
MaksimZh
0 / 0 / 0
Регистрация: 06.01.2013
Сообщений: 5
27.03.2013, 08:05  [ТС] #3
Цитата Сообщение от Tulosba Посмотреть сообщение
Вероятно нужно библиотеку указать через -l, в которой определено всё, что не находит линкер.
Верно, но до этого момента еще надо было много манипуляций проделать. Спасибо Вам за ответ.
Решение: качаем OpenGL тут. Далее делаем то, что написано в readme в папке Linux. Потом
Код
g++ opengl.cpp -lglut -lGL -L/home/{nameUser}/glut-3.7/lib/glut
или просто
Код
g++ opengl.cpp -lglut -lGL
Закрыто.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.03.2013, 08:05
Привет! Вот еще темы с ответами:

Компиляция кода Source Engine 2013 - C++
https://developer.valvesoftware.com/wiki/Source_SDK_2013 - Объясните как скомпилировать код через VS 2013. Я делаю локации на этом движке,...

Компиляция простейшего кода на C++ под GNU/Linux - C++
Проблема в компиляции простейшего кода на c++ под Linux: void hello(){ rintf(&quot;Hello!\n&quot;); return 0; } Вот такая...

Компиляция заданного кода в exe через программу - C++
Хочу узнать поподробнее, как реализовать компиляцию некого заданного кода в exe для windows через самописную программу. Ведь как-то писали...

Компиляция исходного кода C++ ubuntu если нет компилятора g++ - C++
как запустить кода C++ в ubuntu если нет компилятора g++. код набран в текстовых файлах main.cpp func.cpp f.cpp func.h f.h в...


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

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

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