Компьютерная графика

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Компьютерная графика » Программирование графики и GPU » Не компиилруется пример с steps3d.narod.ru


Не компиилруется пример с steps3d.narod.ru

Сообщений 1 страница 15 из 15

1

Здравствуйте.
Пытаюсь откомпилировать пример модели освещения Кука-Торренса.
Делаю в DevC++.
Ошибки  компиляции вот такие:
http://sh.uploads.ru/t/g4jxz.png

Подскажите, пожалуйста, как это исправить.

0

2

Добрый день !

Про первые три ошибки не знаю, возможно не хватает каких-то библиотек
Все остальные ошибки - не подключены необходжимые файлы - не находятся методы класса GlslProgram, проверьте что он компилируется и линкуется
initExtensions - это кажется файл libExt.cpp, он тоже должен компилироваться и линковаться
Вот ссылка на то, как лечатся первые три ошибки - http://stackoverflow.com/questions/1709 … uild-error

0

3

Steps3D
скажите, пожалуйста, а программы (модели освещения) , выложенные на steps3d.narod.ru, в какой среде откомпилированы?

0

4

Я компилитровал их из командной строки под Win и Linux.
Для Windows использовался компилятор из Visual Studio - сборка шла через nmake с использорванием файла Makefile.nmake
Для Linux сборка через make и файл Makefile

0

5

Пробовал откомпилировать в командной строке с помощью g++ -не вышло.
Хочу попробовать через nmake, но не могу найти толкового руководства, как компилировать с её помощью. (Сайт Майкрософт MSDN мне ничего не прояснил)
Может кто даст ссылки, где расписано подробно, как это сделать. Заранее благодарю.

0

6

nmake это такой мекломягкий (и кривенький) вариант make, но для windows.
Соответственно файл не сильно отличается от файла для make.
Если цель откомпилировать под Windows через g++, то можно взять за основу Makefile для сборки под Linux и уже идти от него, поскольку если есть g++, то и make тоже есть.
Ключи для компиляции те же, может надо пути подправить.
Сборка под Windows через nmake
nmake -f Makefile.nmake
Сборка под LInux
make -f Makefile

0

7

Почти получилось откомпилировать. Но вылезают ошибки- см.картинку.http://sh.uploads.ru/lmqta.png
Подскажите, пожалуйста, в чём проблема. Вроде, ошибка c1060   из-за нехватки памяти происходит, но у меня 16ГБ, и при этом занято максимум 2,5 ГБ во время компиляции.

0

8

Про размер кучи не знаю - не сталкивался
Параметр /GX лучше дейсвтительно заменить на /EHsc (либо в Makefile.nmake либо в файле .inc)
На сайте мелкомягких есть следующая статья по этой ошибке - https://msdn.microsoft.com/ru-ru/library/vstudio/yz7kx3y2(v=vs.110).aspx

0

9

Steps3D
С виндой мне надоело воевать-поставил Linux)
Но, признаться, я в нём  бааальшой чайник))
,Пожалуйста, подскажите как исправить вот такие ошибки:
Makefile:7: ../make.inc: Нет такого файла или каталога
Makefile:75: ../rules.linux: Нет такого файла или каталога
make: *** Нет правила для сборки цели «../rules.linux».  Останов.

Находился в домашнем каталоге, Makefile - там же вместе с необходимиыми файлами.
Fedora 21. Запускал через команду в теримнале , указанную вами в предыдущем посте.
Гуглёж мне особо эту ситуацию не прояснил.

0

10

Просто чтобы не дублировать код для кучи примеров общие настройки ыбли вынесены в несколько общих файлов, расположенных каталогом выше. И на них делается include.
Нужно взять эти файлы и поставитиь сслылку на них в Makefile (поправить путь в include)

0

11

Steps3D
Спасибо.
Я понимаю, что задаю элементарные, наверное, вопросы. Но у меня cнова возникла проблема:

Код:
In file included from lambert.cpp:7:0:
libExt.h:26:30: фатальная ошибка: ../glxext.h: Нет такого файла или каталога
     #include    "../glxext.h"

Но дело в том, что  файл glext.h уже лежит в каталоге выше.

Отредактировано Sashga (2015-05-13 16:17:24)

0

12

Sashga написал(а):

Steps3D
Спасибо.
Я понимаю, что задаю элементарные, наверное, вопросы. Но у меня cнова возникла проблема:
Код:

In file included from lambert.cpp:7:0:
libExt.h:26:30: фатальная ошибка: ../glxext.h: Нет такого файла или каталога
     #include    "../glxext.h"

Но дело в том, что  файл glext.h уже лежит в каталоге выше.

Отредактировано Sashga (Вчера 16:17:24)

Эту проблему я исправил.
Подскажите, пожалуйста, как справиться с этим:
вылезли сообщения, подобные этому (на нескольео экранов):

Код:
./glu.h:89:5: ошибка: переменная или поле «gluLookAt» объявлено void
     GLdouble eyex, 
     ^
../glu.h:89:5: ошибка: нет декларации «GLdouble» в этой области видимости
../glu.h:90:5: ошибка: нет декларации «GLdouble» в этой области видимости
     GLdouble eyey,

и т.д.

Отредактировано Sashga (2015-05-14 08:16:41)

0

13

Это похоже на случай, когда подключается glu.h до gl.h и тип GLdouble просто не определен.
Я бы посоветовал найти место, где подключается glu.h и перед ним вставить
#include <GL/gl.h>

0

14

Вот более подробно об шибках:

Все   фалы не изменялись, просто были скачаны со steps3d.
Может быть, это больше прояснит ситуацию...

Отредактировано Sashga (2015-05-14 14:22:45)

0

15

Предыдущие ошибки ушли, но появилассь новая:

[root@localhost lights]# make -f Makefile
make: *** Нет правила для сборки цели «GlslProgram.o», требуемой для «lambert».  Останов.

Помогите, пожалуйста, исправить!

Отредактировано Sashga (2015-05-23 18:46:56)

0


Вы здесь » Компьютерная графика » Программирование графики и GPU » Не компиилруется пример с steps3d.narod.ru


создать форум