Форум: "Прочее";
Текущий архив: 2011.10.23;
Скачать: [xml.tar.bz2];
ВнизПеревод проекта с Delphi на FreePascal Найти похожие ветки
← →
engine © (2011-06-24 23:35) [0]Сталкивался ли кто с данным вопросом. Есть довольно-таки большой проект на Delphi под Windows, возникла необходимость портировать его под Linux. Первым и как мне кажется наиболее простым решением является переделать его под FreePascal (проект - клиент для веб-сервиса). Какие подводные камни ожидают? Важным условием является то, чтобы с минимальными изменениями в коде компилировать под разные ОСи.
← →
Loginov Dmitry © (2011-06-24 23:46) [1]
> Первым и как мне кажется наиболее простым решением является
> переделать его под FreePascal
Под Wine"ом не работает?
← →
* © (2011-06-24 23:57) [2]
> Перевод проекта с Delphi на FreePascal
все то же
возможно придется чуть переписать
ифдефы спасут
← →
Virgo_Style © (2011-06-25 00:19) [3]Там есть мастер импорта, и он неплох. Во всяком случае, для моего не особо затейливого проекта.
На чем прокололся лично я:
- Некоторые типы и классы называются иначе.
- По умолчанию String - это короткая строка. Мастер импорта вставляет нужные директивы, но если постараться, то лопухнуться все же можно.
← →
engine © (2011-06-25 00:44) [4]Под wine"ом должен работать, не пробовал, пока просто зондирую почву. Не хотелось бы использовать "прослойки". Строки длиной более 255 символов не используются, поэтому это не должно оказаться узким местом. Я думал, есть какие-то общие правила, по типу : не использовать то-то и то-то.
Ифдефы спасут тех, кто знает :)
← →
* © (2011-06-25 00:55) [5]
> не использовать то-то и то-то.
базы пользует?
адо точно не заработает
← →
Loginov Dmitry © (2011-06-25 10:38) [6]
> Под wine"ом должен работать, не пробовал, пока просто зондирую
> почву. Не хотелось бы использовать "прослойки".
Все пользуются Wine"ом, отличная вещь, для Linux"a - родная. Но разумеется, если проект новый, то его, имхо, было бы правильнее сразу делать с использованием FreePascal (с помощью среды Lazarus).
А со строками нужно быть внимательным. По умолчанию строки string в Lazarus"e - это UTF8, стандартные функции обработки строк работают "непривычно".
> адо точно не заработает
Вроде кому-то удавалось:
http://www.sql.ru/forum/actualthread.aspx?bid=20&tid=860215&pg=1&hl=lazarus
← →
* © (2011-06-25 11:50) [7]
> то его, имхо, было бы правильнее сразу делать с использованием
> FreePascal (с помощью среды Lazarus).
правильнее было бы С++ и Qt, но это мое имхо
подключение можно осуществить к БД через DNS и все запросы SQL отправляются без проблем
феерические спецы
← →
Kerk © (2011-06-25 18:43) [8]
> * © (25.06.11 11:50) [7]
Ну опечатался человек. Не DNS, а DSN. Бывает.
← →
~ (2011-06-25 20:43) [9]Гловное не юзать прямые вызовы API системы , а если приходится, то лично мое мнение, выводить их в отдельные функции, а там, как уже посоветовали, делать ифдефы на вызов апи целевой системы
← →
engine © (2011-06-25 21:27) [10]Спасибо за разъяснения
← →
TUser © (2011-06-26 12:32) [11]
> По умолчанию String - это короткая строка.
-Mdelphi ?
← →
SegeyIT (2011-06-26 23:41) [12]Проще поставить Лазарус и попробовать.
Сам в свое время cgi приложения с дельфи в лазарус переделал (точнее несколько системных вызовов только поменял) и все работает уже 3 года. Хотя хотел переписать на С++, но руки не дошли. (
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2011.10.23;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.003 c