Ошибка при подключении GLScene к Lazarus

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Ошибка при подключении GLScene к Lazarus

Сообщение palych56 » 06.12.2012 20:30:05

Установлен lazarus-1.0-fpc-2.6.0-win32.exe
Пытаюсь подключить к нему GLScene_v1.1_March_2011_SVN_revision_5593

При копировании glscene_designtime.lpk, выкинуло сообщение:
C:\lazarus\components\GLScene\Source\Base\VectorGeometry.pas(3802,32)

Error: Can't determine which overloaded function to call

-3797-3805--------------------------------------------------
/ InterpolatePower
//
function InterpolatePower(const Start, Stop, Delta: Single; const

DistortionDegree: Single): Single;
begin
if (Round(DistortionDegree) <> DistortionDegree) and (Delta < 0) then
Result := (Stop - Start) * VectorGeometry.Power(Delta,

Round(DistortionDegree)) + Start
else
Result := (Stop - Start) * VectorGeometry.Power(Delta,

DistortionDegree) + Start;
end;
------------------------------------------------------------

C:\lazarus\components\GLScene\Source\Base\VectorGeometry.pas(11094) Fatal:

There were 1 errors compiling module, stopping

В строке 3802 серым цветом: [VectorGeometry]

До пересборки Lazarus дело не дошло. Подскажите, плизз, что надо

исправить!
Аватара пользователя
palych56
незнакомец
 
Сообщения: 2
Зарегистрирован: 06.12.2012 19:55:07

Re: Ошибка при подключении GLScene к Lazarus

Сообщение Сквозняк » 07.12.2012 01:10:51

У меня ещё хуже, делаю как написано в вики:
скопируйте "lazarus/components/glscene/globallinks/*.lpl" в "lazarus/packager/globallinks/" (только для *nix)
запустите lazarus
выполните команду "Найстройка установленных пакетов..." из меню "Пакет" (Пакет/Найстройка установленных пакетов...)
выберите "glscenelazarus" из списка "Доступные пакеты"

И никакого glscenelazarus нигде не появляется - нечего компилировать :twisted: В прошлом году, на старый лазарус движок успешно ставился, хоть опять откатывайся на древнюю версию.

Добавлено спустя 1 час 6 минут 50 секунд:
После того как по наглому открыл glscenelazarus.lpk соответствующий пакет появился в списке и его стало возможно собрать и тоже вылезла ошибка
Код: Выделить всё
/home/user/lazarus+/lazarus_104-GL/components/glscene/Source/base/curvesandsurfaces.pas(69,44) Error: Can't determine which overloaded function to call

На ревизии 2585 и лазарусе ~0.9.30 её не было, имхо это дельфийские трюки глючат в новых версиях fpc - строка
Код: Выделить всё
if (n=i) and (t=1) then tni:=1 else tni:=Power(1-t,n-i);

для обычного паскаля смотрится очень смело - лучше бы там было 10 goto или 20. Придётся патчить все ошибки а если не получится, то откатываться на старые версии движка, лазаруса и fpc.
Сквозняк
энтузиаст
 
Сообщения: 1129
Зарегистрирован: 29.06.2006 22:08:32

Re: Ошибка при подключении GLScene к Lazarus

Сообщение palych56 » 07.12.2012 20:50:07

В том то и дело, что старые версии из Wiki:
http://wiki.glscene.info/index.php?title=Installing_GLScene_for_Lazarus/ru
не нашел.
Ну, в моем случае придется искать разные версии, и пробовать методом тыка...
Аватара пользователя
palych56
незнакомец
 
Сообщения: 2
Зарегистрирован: 06.12.2012 19:55:07

Re: Ошибка при подключении GLScene к Lazarus

Сообщение Сквозняк » 07.12.2012 21:39:08

Только что прошёл этот квест, ошибок при компиляции оказалось меньше чем ожидал. Подобные ошибки выскакивали в других местах и лечились скармливанием проблемной функции переменных с уже готовым значением. Например такой код генерирует ошибку:
Код: Выделить всё
if (n=i) and (t=1) then tni:=1 else tni:=Power(1-t,n-i);

А такой нормально собирается и работает:
Код: Выделить всё
  z:=1-t;
  x:=n-1;
  if (n=i) and (t=1) then tni:=1 else tni:=Power(z,x);

Попробуй применить этот метод. Ещё глючила ассемблерная вставка которая вроде как вообще в FPC не нужна, изменённые файлы в архиве.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Сквозняк
энтузиаст
 
Сообщения: 1129
Зарегистрирован: 29.06.2006 22:08:32


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 248

Рейтинг@Mail.ru