Delphi -> Kylix. как портировать приложение?
Ух, я еще не встретил ни одного человека, который не обматерил бы Куликс.
Сочувствую, в общем.
Сочувствую, в общем.
По-хорошему - надо сразу писать с прицелом на многоплатформенность.
Это подразумевает отказ, например от TRichEdit и подобных штук.
Я делал один сервачок, чтобы он работал на двух системах - нормально.
единственные различия - это CreateProccess vs fork/execvp, TerminateProcess vs kill, WaitForSingleObject vs waitpid
ну и путаница со слешами.
А так - сокетная часть вполне транспортабельна туда-сюда-обратно, благо Indy уже встроен в D7/K3
И да! При написании надо было пользовать не VCL (Graphics, Controls, Forms, Dialogs а CLX (QTypes, QGraphics, QControls, QForms, QDialogs, QStdCtrls и т.п.) - там больше внимания уделяешь portability - сразу видно, чего не стоит пользовать - вырнинги полезут про platform specific
Это подразумевает отказ, например от TRichEdit и подобных штук.
Я делал один сервачок, чтобы он работал на двух системах - нормально.
единственные различия - это CreateProccess vs fork/execvp, TerminateProcess vs kill, WaitForSingleObject vs waitpid
ну и путаница со слешами.
А так - сокетная часть вполне транспортабельна туда-сюда-обратно, благо Indy уже встроен в D7/K3

И да! При написании надо было пользовать не VCL (Graphics, Controls, Forms, Dialogs а CLX (QTypes, QGraphics, QControls, QForms, QDialogs, QStdCtrls и т.п.) - там больше внимания уделяешь portability - сразу видно, чего не стоит пользовать - вырнинги полезут про platform specific
Вот и встретились.
Я не материл - хорошая задумка борланда. Один минус - вмешательство в не свои библиотеки (Qt)
Ходят слухи, что борланд сворачивает всю деятельность (Kylix и Builder кроме Delphi
Я не материл - хорошая задумка борланда. Один минус - вмешательство в не свои библиотеки (Qt)
Ходят слухи, что борланд сворачивает всю деятельность (Kylix и Builder кроме Delphi
Хмм, а запуск кода через вайнлиб - это тоже хорошая задумка?
не понял, что за либ - можешь оригинальное название написать?
wine lib
библиотека, позволяющая использовать возможности wine - эмулятора windows.
Т. е. используется старый виндовый код с небольшими модификациями под эмуляцией. Может, последний куликс и не юзает уже, но первые версии использовали. А потому страшно глючили и тормозили.
библиотека, позволяющая использовать возможности wine - эмулятора windows.
Т. е. используется старый виндовый код с небольшими модификациями под эмуляцией. Может, последний куликс и не юзает уже, но первые версии использовали. А потому страшно глючили и тормозили.
Не знаю на счёт старых версий - в третьем уже такого вроде не наблюдается.
Да это всё понятно, что сразу надо было писать, использовать CLX и всё такое...
Но прога писалась под Дельфи больше года назад, когда я ещё не знал про все эти дела, а писать всё заново слишком геморно...
Но прога писалась под Дельфи больше года назад, когда я ещё не знал про все эти дела, а писать всё заново слишком геморно...
попробуй перед именами Forms, Buttons, и т.п. буковки Q приписать - попробуй откомпилить в таком режиме в дельфях.
когда избавишься от ошибок - попробуй скомпилировать в kylix.
TButton в StdCtrls и в QStdCtrls не сильно отличаются.
Те же OnClick, Caption..
Если в проекте не использовалось windows-native контролов со вкладок:
Win32: RichEdit и т.п.
System: MediaPlayer, DDE, OLE и т.п.
то вроде больших проблем не должно быть.
когда избавишься от ошибок - попробуй скомпилировать в kylix.
TButton в StdCtrls и в QStdCtrls не сильно отличаются.
Те же OnClick, Caption..
Если в проекте не использовалось windows-native контролов со вкладок:
Win32: RichEdit и т.п.
System: MediaPlayer, DDE, OLE и т.п.
то вроде больших проблем не должно быть.
формочки надо будет (или не надо.. хз) переименовать из *.dfm в *.xfm
причем - один хрен портировать в киликс или пользовать вайн -
киликс тот же delphi+wine
киликс тот же delphi+wine
не тот же wine - третий kylix wine не пользует
(может, и второй не пользовал - я его не видел)
нормальные ELF екзешники, пользует qt ну и ещё парочку библиотек.
(может, и второй не пользовал - я его не видел)нормальные ELF екзешники, пользует qt ну и ещё парочку библиотек.
(Kylix 3)если писать консольное приложение - так вообще ничего такого - будет работать почти на любом linux
$ ldd ./GUIHelloWorld
/lib/libNoVersion.so.1 => /lib/libNoVersion.so.1 (0x40018000)
libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x40031000)
libpthread.so.0 => /lib/i686/libpthread.so.0 (0x4010f000)
libdl.so.2 => /lib/libdl.so.2 (0x40124000)
libc.so.6 => /lib/i686/libc.so.6 (0x40128000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
Kylix 3 is certified on the following Linux distributions:
* Red Hat 7.2
* SuSE 7.3
* Mandrake 8.2
Оставить комментарий
Gasparfx
Вопрос: как портировать готовое приложение, уже написанное для Delphi в Kylix? Напямую открывать Delphi проект в Kylixe не удается, выдаёт кучу ругани и не запускается...