Вышла новая версия компилятора FreePascal

Вопросы программирования на Free Pascal, использования компилятора и утилит.

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

Ответить
Mikhail
энтузиаст
Сообщения: 565
Зарегистрирован: 24.10.2013 16:06:47

Вышла новая версия компилятора FreePascal

Сообщение Mikhail »

25 ноября выпущена новая версия компилятора языков Pascal и Object Pascal - FPC 3.0.0 «Pestering Peacock».

Основные изменения в этом выпуске:

Улучшения совместимости с Delphi:
  • Добавлена поддержка Delphi-подобных пространств имен для модулей

  • Добавлена возможность создания динамических массивов с помощью конструктора Create

  • Строки типа AnsiString теперь хранят информацию о своей кодировке

Изменения в компиляторе:
  • Добавлен новый уровень оптимизации -O4, при котором компилятор может переставлять поля в объектах классов, не вычислять неиспользуемые значения и ускорять работу с числами с плавающей точкой с возможной потерей точности.
  • Добавлен анализ потоков данных (data flow analysis)
  • Добавлена поддержка следующих целей:◦Java Virtual Machine / Dalvik
  • AIX для PowerPC 32/64-бит (без поддержки сборки ресурсов для 64-бит)
  • MS-DOS real mode
  • Android для ARM, x86 и MIPS
  • AROS
Аватара пользователя
Лекс Айрин
долгожитель
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград
Контактная информация:

Сообщение Лекс Айрин »

Мне больше всего нравится, что аваст больше не ругается на программы созданные в FPC/
SSerge
энтузиаст
Сообщения: 971
Зарегистрирован: 12.01.2012 05:34:14
Откуда: Барнаул

Сообщение SSerge »

Mikhail писал(а):MS-DOS real mode


Вернули из небытия утраченное старое...
Когда, лет наверно уж десять назад, когда убирали этот режим, пафосно заявлялось, что он ни к чему и идеологически неправилен ))
Аватара пользователя
McLion
постоялец
Сообщения: 332
Зарегистрирован: 06.02.2015 17:41:00

Сообщение McLion »

Классная новость!!!

Вопрос, там есть файл - fpc-3.0.0.i386-win32.cross.android.exe для чего он? Установив можно писать для андроид или как это понять?
Mirage
энтузиаст
Сообщения: 881
Зарегистрирован: 06.05.2005 20:29:07
Откуда: Russia
Контактная информация:

Сообщение Mirage »

А чего бы ссылки не привести? Там изменений-то поболее будет:
http://wiki.freepascal.org/FPC_New_Features_3.0
Потенциальные обратные несовместимости:
http://wiki.freepascal.org/User_Changes_3.0

Круто, не думал, что кто-то всерьез над оптимизатором работает.

McLion: да, это кросскомпилятор с винды на андроид.
Аватара пользователя
Лекс Айрин
долгожитель
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград
Контактная информация:

Сообщение Лекс Айрин »

после удаления старой версии компилятора внезапно возникла ошибка со сборкой

Код: Выделить всё

Panic: C:FPC3.1.1bini386-win32make.exe: Entering directory `C:/lazarus'
Panic: C:FPC3.1.1bini386-win32make.exe: Leaving directory `C:/lazarus'
Panic: makefile:29: *** You need the GNU utils package to use this Makefile.  Stop.

Скачивание make GNU ничего не дало :(

Можно как-нибудь собрать Lazarus?

Добавлено спустя 18 минут 33 секунды:
вопрос решен переносом файла pwd.exe в каталог новой версии.
Vadim
долгожитель
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Сообщение Vadim »

У меня откомпилированный с помощью FPC3 Lazarus наконец то превысил 100 МБ. :-D
Аватара пользователя
Лекс Айрин
долгожитель
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград
Контактная информация:

Сообщение Лекс Айрин »

Vadim, а у меня он так толком и не работает.

теперь пишет при пересборке

Код: Выделить всё

Ошибка записи: Unable to create file "C:\Documents and Settings\?????? ????\Local Settings\Application Data\lazarus\staticpackages.inc"
Файл: C:\Documents and Settings\?????? ????\Local Settings\Application Data\lazarus\staticpackages.inc
файл настройки статических пакетов


И не сохраняет настройки. Я уже антивирус отключил, думал опять он выеживается.
Аватара пользователя
Little_Roo
энтузиаст
Сообщения: 639
Зарегистрирован: 27.02.2009 18:56:36
Откуда: Санкт-Петербург

Сообщение Little_Roo »

Опять пути с пробелами и русскими символами?
Аватара пользователя
Лекс Айрин
долгожитель
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград
Контактная информация:

Сообщение Лекс Айрин »

Little_Roo, увы... самое обидное, что до сего момента это не было проблемой. А сейчас уже, как понимаю, сделать ничего нельзя?
Я так понимаю, что достаточно добиться переноса файлов в каталог самого лазаря, но не знаю как это сделать из командной строки. Ведь в самом Лазаре я не нашел соответствующей настройки.

Добавлено спустя 5 минут 11 секунд:
Хочу попробовать

Код: Выделить всё

lazbuild --pcp=С:\User\Lazarus\ide 


предварительно перенеся туда все файлы со старого места.
Ism
энтузиаст
Сообщения: 908
Зарегистрирован: 06.04.2007 17:36:08

Сообщение Ism »

Лекс Айрин писал(а):увы... самое обидное, что до сего момента это не было проблемой.

Во всем виноваты новые строки с указанием кодировки, если раньше string бышо все равно, что туда положишь, то сейчас уже обработка кодировко зависима

Гдето тут некий Serge целую статью об этом писал
Аватара пользователя
Максим
энтузиаст
Сообщения: 599
Зарегистрирован: 27.07.2007 01:51:43
Откуда: Москва

Сообщение Максим »

SSerge писал(а):Когда, лет наверно уж десять назад, когда убирали этот режим, пафосно заявлялось, что он ни к чему и идеологически неправилен ))

Точно ничего не попутали?

Добавлено спустя 2 минуты 14 секунд:
Лекс Айрин
Версия Lazarus какая? Возьмите последний trunk. Хотя, разумеется, ещё есть над чем поработать.
SSerge
энтузиаст
Сообщения: 971
Зарегистрирован: 12.01.2012 05:34:14
Откуда: Барнаул

Сообщение SSerge »

Ism писал(а):Гдето тут некий Serge целую статью об этом писал


Тут даже не надо теперь искать статью некоего Serge, есть вполне официальная статья FPC Unicode Support http://wiki.freepascal.org/FPC_Unicode_support , в том числе на русском. И про LCL http://wiki.freepascal.org/LCL_Unicode_Support

Добавлено спустя 11 минут 9 секунд:
Максим, а что, ныне лазарусы идут с включенной по дефолту опцией UTF8RTL, что неявно следует из текста этой статьи: http://wiki.freepascal.org/Lazarus_with ... UTF-8_mode ?
Аватара пользователя
Лекс Айрин
долгожитель
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград
Контактная информация:

Сообщение Лекс Айрин »

Максим, так по svn всегда стараюсь крайнюю держать. Если только еще и крайнюю снапшотную версию компилятора закачать... впрочем, если не пересобирать компилятор из самого себя то проблем фактически нет. Только вдруг мне захочется поставить какой-нибудь экзотический пакет?
Аватара пользователя
Максим
энтузиаст
Сообщения: 599
Зарегистрирован: 27.07.2007 01:51:43
Откуда: Москва

Сообщение Максим »

SSerge писал(а):Максим, а что, ныне лазарусы идут с включенной по дефолту опцией UTF8RTL, что неявно следует из текста этой статьи: http://wiki.freepascal.org/Lazarus_with ... UTF-8_mode ?

Да.

Лекс Айрин писал(а):Максим, так по svn всегда стараюсь крайнюю держать. Если только еще и крайнюю снапшотную версию компилятора закачать...

Компилятор лучше использовать версии 3.0. Как вариант - 3.0.1 (то есть ветка fixes). Trunk компилятора использовать без особой нужды не следует.

Убедитесь, что ошибка описана в одном из отчётов по ссылке, приведённой мной выше. Если её там нет, добавьте.
Ответить