Переход из Delphi на FreePascal под Windows

Общие вопросы программирования, алгоритмы и т.п.

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

Re: Переход из Delphi на FreePascal под Windows

Сообщение Ism » 07.03.2011 01:18:30

Я както попытался, чуть мозг не сломал разгребая результаты конвертации форм.

Уж лучше с нуля, тогда ты будешь уверен , что Lazarus сделал все настройки проекта правильно.
Ism
энтузиаст
 
Сообщения: 908
Зарегистрирован: 06.04.2007 17:36:08

Re: Переход из Delphi на FreePascal под Windows

Сообщение AlterEgo » 17.03.2011 18:56:08

В Delphi коде использую MaxExtended.

Теперь freepascal ругается на нее:
(854,3) Error: Identifier not found "MaxExtended"

Поискав по папкам обнаружил, что она прописана в модуле math:
Код: Выделить всё
{$ifdef FPC_HAS_TYPE_EXTENDED}
    const
      MinExtended  =  3.4e-4932;
      MaxExtended  =  1.1e+4932;
{$endif FPC_HAS_TYPE_EXTENDED}


Этот модуль подключен у меня еще в Delphi.
Почему тогда не видно константу MaxExtended ??? :roll:
AlterEgo
новенький
 
Сообщения: 11
Зарегистрирован: 05.03.2011 11:06:32

Re: Переход из Delphi на FreePascal под Windows

Сообщение Maxizar » 17.03.2011 20:42:15

AlterEgo - у меня все работает, просто еще раз проверте ваш исходник, может что то затерлось и все такое...
вот пример:
Код: Выделить всё
procedure TForm1.Button1Click(Sender: TObject);
var E:Extended;
begin
    E:=MaxExtended;
    Caption:=FloatToStr(E);
end;

Все отработало хорошо, в Caption вывели значение: 1,1E4932
Maxizar
постоялец
 
Сообщения: 385
Зарегистрирован: 20.03.2010 19:48:14

Re: Переход из Delphi на FreePascal под Windows

Сообщение Mr.Smart » 17.03.2011 20:57:49

Если это FPC x86_64, то в нём тип Extended не поддерживается и соответствующие константы то же отсутствуют.
Mr.Smart
долгожитель
 
Сообщения: 1796
Зарегистрирован: 29.03.2008 01:01:11
Откуда: из леса!

Re: Переход из Delphi на FreePascal под Windows

Сообщение AlterEgo » 18.03.2011 13:29:08

Maxizar писал(а):AlterEgo - у меня все работает, просто еще раз проверте ваш исходник, может что то затерлось и все такое...
вот пример:
Код: Выделить всё
procedure TForm1.Button1Click(Sender: TObject);
var E:Extended;
begin
    E:=MaxExtended;
    Caption:=FloatToStr(E);
end;

Все отработало хорошо, в Caption вывели значение: 1,1E4932


И правда в x64 это не компилится, а под x32 все ОК.
Всем спасибо!
AlterEgo
новенький
 
Сообщения: 11
Зарегистрирован: 05.03.2011 11:06:32

Re: Переход из Delphi на FreePascal под Windows

Сообщение AlterEgo » 12.04.2011 15:23:12

Подскажите, как положить готовый EXE или DLL в нужную директорию.
В Delphi была настройка в свойствах проекта Output directory.

А у FreePascal есть такая?

В настройках проекта с использование Lazarus нашел только -FU, но она кладет туда и другие файлы.
AlterEgo
новенький
 
Сообщения: 11
Зарегистрирован: 05.03.2011 11:06:32

Re: Переход из Delphi на FreePascal под Windows

Сообщение Mr.Smart » 12.04.2011 15:26:48

Mr.Smart
долгожитель
 
Сообщения: 1796
Зарегистрирован: 29.03.2008 01:01:11
Откуда: из леса!

Re: Переход из Delphi на FreePascal под Windows

Сообщение Иван Шихалев » 12.04.2011 15:50:33

AlterEgo писал(а):В настройках проекта с использование Lazarus нашел только -FU, но она кладет туда и другие файлы.

-FU вообще-то не должна класть никуда exe... Его путь указывает -FE, но кладет туда и скомпилированные модули. Чтобы все это разнести нужно использовать обе: -FE<exepath> -FU<ppupath>. В качестве последнего я обычно указываю ~/tmp

Добавлено спустя 1 минуту 36 секунд:
Mr.Smart писал(а):-o

Это имя исполняемого файла, а не путь к нему.
Аватара пользователя
Иван Шихалев
энтузиаст
 
Сообщения: 1138
Зарегистрирован: 15.05.2006 11:26:13
Откуда: Екатеринбург

Re: Переход из Delphi на FreePascal под Windows

Сообщение Mr.Smart » 12.04.2011 15:55:06

Иван Шихалев писал(а):
Mr.Smart писал(а):-o

Это имя исполняемого файла, а не путь к нему.

Указывать в нём путь с именем. Я всегда так делаю.
Mr.Smart
долгожитель
 
Сообщения: 1796
Зарегистрирован: 29.03.2008 01:01:11
Откуда: из леса!

Re: Переход из Delphi на FreePascal под Windows

Сообщение AlterEgo » 13.04.2011 00:43:57

-o
работает

а где
-FE - в среде lazarus найти можно.
все вроде просмотрел...
AlterEgo
новенький
 
Сообщения: 11
Зарегистрирован: 05.03.2011 11:06:32

Re: Переход из Delphi на FreePascal под Windows

Сообщение Иван Шихалев » 13.04.2011 16:25:18

Отдельной опцией в параметрах проекта не нашел, но там можно произвольные ключи компилятора задавать...
Аватара пользователя
Иван Шихалев
энтузиаст
 
Сообщения: 1138
Зарегистрирован: 15.05.2006 11:26:13
Откуда: Екатеринбург

Re: Переход из Delphi на FreePascal под Windows

Сообщение Nik » 13.04.2011 22:03:12

Кстати, упомянутой выше фичи иногда очень не хватает. Я, например, ещё со времён Delphi привык к определённой структуре проекта и теперь для ёё поддержания в Lazarus приходится извращаться с несколькими параметрами. В частности, -o с полный путём (что лишает проект мобильности - на другом компе приходится либо ложить проект в тот же каталог, либо править его конфиг).
Имхо, давно пора добавить параметр "относительный путь к исполнимоу файлу" - хотя бы под соусом совместимости с Delphi.
Аватара пользователя
Nik
энтузиаст
 
Сообщения: 573
Зарегистрирован: 04.02.2006 00:08:09
Откуда: Киров

Re: Переход из Delphi на FreePascal под Windows

Сообщение Brainenjii » 14.04.2011 00:24:02

Странно, у меня в Lazarus'е указав имя файла просто "myfile" бинарник компилится в корне проекта
Аватара пользователя
Brainenjii
энтузиаст
 
Сообщения: 1351
Зарегистрирован: 10.05.2007 00:04:46

Re: Переход из Delphi на FreePascal под Windows

Сообщение Nik » 14.04.2011 09:38:25

Brainenjii писал(а):Странно, у меня в Lazarus'е указав имя файла просто "myfile" бинарник компилится в корне проекта

А мне в корне не надо, мне надо в отдельной папке (как бы прога обычно не из одного бинарника состоит, и хотелось бы все её файлы держать в кучке, не перемешивая с исходниками).
Аватара пользователя
Nik
энтузиаст
 
Сообщения: 573
Зарегистрирован: 04.02.2006 00:08:09
Откуда: Киров

Re: Переход из Delphi на FreePascal под Windows

Сообщение Brainenjii » 14.04.2011 11:04:11

так и в отдельной папке тоже работает: bin/myfile, например
Аватара пользователя
Brainenjii
энтузиаст
 
Сообщения: 1351
Зарегистрирован: 10.05.2007 00:04:46

Пред.След.

Вернуться в Общее

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

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

Рейтинг@Mail.ru