LINUX.ORG.RU

Lazarus 2.2

 ,


0

1

Команда разработчиков Lazarus рада сообщить о выпуске Lazarus 2.2 — интегрированной среды разработки для Free Pascal. Этот релиз был собран компилятором FPC 3.2.2.

Список изменений:
http://wiki.lazarus.freepascal.org/Lazarus_2.2.0_release_notes
http://wiki.lazarus.freepascal.org/User_Changes_3.2.2

Эту версию можно скачать на SourceForge:
http://sourceforge.net/projects/lazarus/files/
ftp://ftp.freepascal.org/pub/lazarus/releases/ (для тех, у кого заблокирован sourceforge)

Контрольные суммы: https://www.lazarus-ide.org/index.php?page=checksums#2_2_0

Минимальные требования:

  • FreeBSD/Linux: gtk 2.8 для gtk2, qt4.5 для qt, qt5.6 для qt5, 32 или 64bit;
  • Windows: 2k, XP, Vista, 7, 8, 8.1 и 10, 32 или 64bit;
  • macOS/OS X: Cocoa (64bit) 10.12 - 11.4, Carbon (32bit) 10.5 - 10.14, qt и qt5 (32 или 64bit).

Страница на gitlab: https://gitlab.com/freepascal.org/lazarus/lazarus/-/tree/lazarus_2_2_0.

Если будете самостоятельно собирать x86_64 версию Lazarus из исходников, то рекомендуется собирать IDE с флагами оптимизации:

-O1 или -O2 -OoNoPeepHole, – и не собирать просто с -O2 или -O3, так как найден баг в компиляторе FPC 3.2.2, планируется, что он будет устранён в версии FPC 3.2.4.

Коммит с исправлением: https://gitlab.com/freepascal.org/fpc/source/-/commit/e9d318e7e2f772bf455a92461cd5c229e69858d8

>>> Оригинальная новость

★★★★★

Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 13)
Ответ на: комментарий от hobbit

Кстати, спрошу по случаю, а есть различия в принципах компоновки в си и паскале?

Ну, в си же тоже есть отдельные единицы трансляции, да, в паскале модуле в языке явно оформлены, явно подключаются и все такое, но профит-то в чем?

pihter ★★★★★
()
Ответ на: комментарий от pihter

Кстати, спрошу по случаю, а есть различия в принципах компоновки в си и паскале?

Встречный вопрос: ты безграмотный?

Различия есть.

Например в вызовах функций. На уровне стека и ассемблера.

в паскале модуле в языке явно оформлены, явно подключаются и все такое, но профит-то в чем?

В МОДУЛЬНОСТИ. Настоящей, а не поддельной, как в C.

Attila ★★
()
Ответ на: комментарий от pihter

но профит-то в чем?

Во-первых, скорость. Линкеру не надо по второму разу искать то, что уже нашёл компилятор, он знает, из какого файла какую функцию брать.

Во-вторых предсказуемость. Собственно конкретно тебе кидаю эту ссылку третий раз, но я не против — лишний раз вспомнить не помешает.

hobbit ★★★★★
()
Последнее исправление: hobbit (всего исправлений: 1)
Ответ на: комментарий от Attila

Например в вызовах функций. На уровне стека и ассемблера.

Это-то понятно: я просто паскаль до таких тонкостей не знаю (со школы практически ни-ни). Я интересовался именно про принципы: ну в си компилируется функция, ейный адрес потом линковщиком везде связывается, все вот это вот. Принципы же те же самые в паскале? Я думаю да, но сам ни разу не смотрел, вот и решил по случаю спросить у знающих

pihter ★★★★★
()
Ответ на: комментарий от Attila

В МОДУЛЬНОСТИ. Настоящей, а не поддельной, как в C.

А в чем профит настоящей модульности? Более быстрая линковка – раз. Более точная линковка – двас. А еще?

pihter ★★★★★
()
Ответ на: комментарий от hobbit

Во-вторых предсказуемость

Да помню я про эти оба раза :) Это очень красноречивый пример: я надеялся еще чего-нибудь такого интересного понасобирать

pihter ★★★★★
()
Ответ на: комментарий от pihter

Я интересовался именно про принципы: ну в си компилируется функция, ейный адрес потом линковщиком везде связывается, все вот это вот.

В паскале почти всё тоже самое, только есть нюанс...
компилятор паскаля может всё это сделать за один проход, а сишный не могёт бай десинг :)

Attila ★★
()
Ответ на: комментарий от pihter

А в чем профит настоящей модульности? Более быстрая линковка – раз. Более точная линковка – двас. А еще?

Сам спросил - сам ответил :)

От себя добавлю, что ещё можно очень просто реализовать ООП «изкаробки», не прибегая к ++костылям. Но это уже другая история.

ЗЫ
Ещё в паскале можно было лихко и просто реализовать шаблоны, но ... это уже другая++ и печальная история.

Attila ★★
()
Ответ на: комментарий от Attila

Ещё в паскале можно было лихко и просто реализовать шаблоны,

Шаблоны в ЯП появились от того, что разработчики этих языков толком не понимают, что означает термин «Метапрограммирование».
К примеру в C++ навыдумывали всяких template, constexpr, … и иной ЧУШИ, в теперь строят АБСТРАКЦИИ над всей этой чушью …

Пилят золотую гирю ...
anonymous
()
Ответ на: комментарий от hobbit

Во-вторых предсказуемость.

Тут надо чтоб программист соблюдал некоторые правила и не привязывал результат билда к порядку инициализации модулей, что было еще в описании Object Pascal явно запрещено (по крайней мере в мануале к третьим дельфям :))) Как-то сопровождал проект на седьмых дельфях где прям полет «архитектурных решенияй» был — «визуально наследование», хранение форм бинарями в базе, система обновлений с пакетами, плугины... и SQL в свойствах в неожиданных местах... Не было только исходного скрипта базы, «только бэкап» (авторы параллельно мигрировали проект на XE), у них там сразу бросился в глаза фатальный недостаток: прога то запускалась после сборки, то нет. По итогам раскопки выяснилось что у них «ассумпшоны» на порядок инициализации. Предложил исправить, но «ты просто пересобери еще раз, а нам некогда, мы мигрируем». Ну еще там попытки сделать что-то правильно часто «нарушали архитектуру» :)

slackwarrior ★★★★★
()
Ответ на: комментарий от anonymous

Шаблоны в ЯП появились от того, что разработчики этих языков толком не понимают, что означает термин «Метапрограммирование».

И тут Степанов горько заплакал...

Attila ★★
()
Ответ на: комментарий от slackwarrior

Как-то сопровождал проект на седьмых дельфях где прям полет «архитектурных решенияй» был — «визуально наследование», хранение форм бинарями в базе, система обновлений с пакетами, плугины... и SQL в свойствах в неожиданных местах...

Денег платили? Работу работал?

Я щщаз тоже начну жалобы жаловаться на мой геморрой. ТАКОЙЖЕ. Называется «унаследованные тихнологии» после недоумков и недоучек. Но... весь выделенный бюджет уже «освоили». А твоя задача не «умничать» и делать «как нада» :)

Attila ★★
()
Ответ на: комментарий от Attila

Не, ты не понял. Сначала тебе ездят по ушам деланием мира лучше, а потом просят насрать вот тут рядом с до этого насратой кучей :) это как в дотнете кипучие бездельники то делегаты на лямбды переписывают, то добавляют поверх WCF «слой» RESTful... а конкатенация строк плюсиками в цикле лежит годами нетронутая... и копипастится всеми не глядя из «по-быстрому слепленного джуниарами ПОЦа», пока кто-то не покажет пальцем архитектору в blame с именами героев (которые уже вроде сеньеры все, скобочки с отступами вон какие аккуратные и на кодревью умничают про «паттерны»), а тот не посмотрит из-под бровей на тех кто.

slackwarrior ★★★★★
()
Последнее исправление: slackwarrior (всего исправлений: 2)
Ответ на: комментарий от slackwarrior

А меня выбешивает то, что в c++ штатный вывод в консоль идёт через <<, в сишечке через специальный «язык шаблонов» printf, а в новомодных динамических языках типа питона и пыха через подстановку переменных в строку.

Где правда, а?

pup_kin
()
Ответ на: комментарий от pup_kin

то ли дело в эмбеде — тупо макрос, пиши все свое :)

slackwarrior ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.