Компиляция DLL в Lazarus

Вы просматриваете архив старого форума. Новый форум по ссылке


Автор Сообщение

Big Boss
Группа: Администраторы
Сообщений: 719
Добавлено: 27-03-2009 22:01
На днях задумал изучить создание DLL'ок. Остановился на среде Lazarus (Free Pascal). Но вот беда: при сборке компилятор выдает не *.dll, а *.exe!

Что делать? Где настройки поменять? Может, в самом коде что-то добавить нужно:

library mydll;

{$mode objfpc}{$H+}

uses
SysUtils,
Classes;

function GetSimpleText: PChar; stdcall;
begin
Result:=PChar('Hello, world!')
end;

exports GetSimpleText;

begin
end.


Такая вот проблема.

Ответственный за CHM
Группа: Модераторы
Сообщений: 346
Добавлено: 26-05-2009 20:23
А почему именно на Lazarus'е остановились?
Я конечно с ним не работал никогда, но допустим в делфи нужно создать новый проект или файл, кому как удобно, и выбрать заранее что это будет за тип файла, в нашем случае dll, может и там также?
Хотя это я так, просто, предположил, если что...

Big Boss
Группа: Администраторы
Сообщений: 719
Добавлено: 26-05-2009 20:41
Да я проблему решил уже... Установил последнюю версию, и все дела.
Мне, собственно, для чего все это нужно было: хочу написать собственную реализацию GLScene для GM, совместимую с x3d. Лазарус привлек тем, что существует его версия с уже установленным GLScene. Но то ли сборка глючная, то ли что - dll компилировать не хочет. Пришлось ставить "чистую" версию и ставить Сцену вручную. А это вообще отдельная история - установку GLScene под лазарус надо применять в качестве уголовного наказания для киберпреступников . Короче, так толком ничего и не вышло. Сцена поставилась, но не работает, при компиляции приложений не просто ругается - осыпает бранью .
В общем, плюнул на все, и поставил delphi. Недавно дошли руки, установил GLScene. Третий день сижу, парю моск. Не понимаю, как привязать рендер Сцены к окну GM.
Ужас, в общем

Ответственный за CHM
Группа: Модераторы
Сообщений: 346
Добавлено: 27-05-2009 10:33
хочу написать собственную реализацию GLScene для GM, совместимую с x3d

Ух как замахнулись, ну удачи вам
Только зачем же совместимую с X3D? Давайте уж свою собственную библиотеку для реализации 3D напишите, назовем её Gecko3D.dll
установку GLScene под лазарус надо применять в качестве уголовного наказания для киберпреступников

, да можно и не только для них, взять какого-нибудь алкаша и за 15 суток, проведенных за компом, из него можно сделать нормального человека
В общем, плюнул на все, и поставил delphi. Недавно дошли руки, установил GLScene. Третий день сижу, парю моск. Не понимаю, как привязать рендер Сцены к окну GM.

Кстати у Xception'а при написании CMI была таже проблема, но как он её решил, к сожалению не знаю
Видел исходный код старой версии GMI, она кстати на C написан, но так как я плохо понимаю этот язык, да и любой другой, кроме GML, я там ничерта не разобрался, но там тоже проблема с "прикруткой" окна...Кстати у меня в примере том, была dll библиотека GMFocus, вроде так называлась, вот она активирует нужное окно игры, а то раньше надо было переключаться между ними!
Вот тоже заинтересовался GLScene, но пока хочу разобраться с X3D и сделать игру, а там потом видно будет, надо же другие языки изучать!

Big Boss
Группа: Администраторы
Сообщений: 719
Добавлено: 27-05-2009 11:27
Давайте уж свою собственную библиотеку для реализации 3D напишите, назовем её Gecko3D.dll

Я об этом тоже думал, поэтому параллельно начал изучать C++ и OpenGL.

Видел исходный код старой версии GMI, она кстати на C написан, но так как я плохо понимаю этот язык, да и любой другой, кроме GML, я там ничерта не разобрался, но там тоже проблема с "прикруткой" окна...

Да я его тоже видел, и, в общем, ничего сложного там нет, но все-таки Irrlicht и GLScene - разные вещи (и уж тем более C++ и Pascal), так что почерпнуть мне там нечего.