• Привет !

    На форуме есть зеркало в ТОРе:rusfwz3cukdej7do.onion

    Обратная связь:info@ru-sfera.org

    Всего доброго !

Информация Lazarus или Delphi forever! (1 Viewer)

Кто просматривает этот контент: "Тема" (Всего пользователей: 0; Гостей: 1)

Антоха

Уважаемый пользователь
Форумчанин
Регистрация
26.12.2012
Сообщения
2 780
Репутация
4 774
11.jpg
После перехода на линукс,многие "дельфийцы" с тоской вспомнят свой родной компилятор с контролами,баттонами и "илитными кампанентами".Господа,ещё не всё потеряно.Как раз сегодня состоялся релиз Lazarus 1.6.
Вот ис Лазарус?
Lazarus — открытая среда разработки программного обеспечения на языке Object Pascal для компилятора Free Pascal (часто используется сокращение FPC — Free Pascal Compiler, бесплатно распространяемый компилятор языка программирования Pascal). Интегрированная среда разработки предоставляет возможность кроссплатформенной разработки приложений в Delphi-подобном окружении.
И это значит,что мы можем практически безболезненно уйти от масдая к иксам в плане своих кодерских привычек.
И что же там вкусненького,спросите вы.
Функции
Основан на библиотеке визуальных компонентов Lazarus Component Library (LCL). В настоящее время практически полностью поддерживает виджеты Win32, GTK1, GTK2, Carbon, Qt. В разработке находятся виджеты WinCE[3].

  • Поддерживает преобразование проектов Delphi
  • Реализован основной набор элементов управления
  • Редактор форм и инспектор объектов максимально приближены к Delphi
  • Интерфейс отладки (используется внешний отладчик GDB)
  • Простой переход для Delphi программистов благодаря близости LCL к VCL
  • Полностью юникодный (UTF-8) интерфейс и редактор и поэтому отсутствие проблем с портированием кода, содержащего национальные символы
  • Мощный редактор кода, включающий систему подсказок, гипертекстовую навигацию по исходным текстам, автозавершение кода и рефакторинг
  • Форматирование кода «из коробки», используя механизмы Jedi Code Format
  • Поддержка двух стилей ассемблера: Intel и AT&T (поддерживаются со стороны компилятора)
  • Поддержка множества типов синтаксиса Pascal: Object Pascal, Turbo Pascal, Mac Pascal, Delphi (поддерживаются со стороны компилятора)
  • Имеет собственный формат управления пакетами
  • Авто сборка самого себя (под новую библиотеку виджетов) нажатием одной кнопки
  • Поддерживаемые для компиляции ОС: Linux, Microsoft Windows (Win32, Win64), Mac OS X, FreeBSD, WinCE, OS/2
Установка:
К примеру на моей дебианоподобной,требуется установить всего три вещи
  • fpc - the Free Pascal compiler-компилятор
  • fpc-src - the source code for Free Pascal-исходные коды
  • Lazarus -the IDE for Free Pascal-сама IDE.
Дабы особо не заморачиваться,всё это дело завёрнуто в деб-пакеты.Ставим..и радуемся если заработает)Но думаю подводные камни всё же существуют и придётся повозится с вылезшими косяками.Так же можно установить Лазаруса и его друзей прямо из вашего магазина приложений (ежели таковой имеется),но обычно версии там не самые последние.
О решении проблем,можно почитать здесь (убунту):
Install on Ubuntu - Lazarus wiki
Кстати юзать Лазарус можно не только на лине.
Windows:
98, 2000, XP, Vista, 7, 8/8.1, 10, 32 or 64 bit.
Win98 and WinNT IDE needs FPC 2.6.4 and building with flag
-dWIN9XPLATFORM.

FreeBSD/Linux:
gtk 2.8 or qt4.5, 32 or 64bit.

Mac OS X:
10.5 to 10.11, LCL only 32bit, non LCL apps can be 64bit.

Домашняя страница проекта:Lazarus Homepage
18.png

P.S.Мама родная..пустая форма получилась на 18 мб..​
 

X-Shar

:)
Администрация
Регистрация
03.06.2012
Сообщения
5 376
Репутация
7 873
Telegram

Антоха

Уважаемый пользователь
Форумчанин
Регистрация
26.12.2012
Сообщения
2 780
Репутация
4 774

Антоха

Уважаемый пользователь
Форумчанин
Регистрация
26.12.2012
Сообщения
2 780
Репутация
4 774

Антоха

Уважаемый пользователь
Форумчанин
Регистрация
26.12.2012
Сообщения
2 780
Репутация
4 774
После последней статьи на Хабре в которой, кто удивляется, что подобные мамонты ещё не вымерли, кто наоборот пишет, что паскаль форева - захотелось и мне открыть своего лазаруса.
Скомпилируем формочку с баттоном. Смотрим вес - 18 мб. Такой вес получается из-за отладочной информации, которую с настройками по умолчанию лазарус суёт в проект. Попробуем поиграть с настройками и немного уменьшить вес нашего "приложения".
Проект - Параметры проекта - Компиляция и компоновка-ставим галочки на Умная компоновка (-СХ) и Умная компоновка (-ХХ)

6.png

Проект - Параметры проекта - Отладка-ставим галочку на Использовать внешний файл отладочных символов GDB (-Xs) и снимаем с Выдавать номера строк в ошибках времени выполнения (-gl)
7.png


Собираем проект. Вес-5,2 мб. Порядочно конечно, но уменьшился от изначального больше чем в три раза. Настроек в новой версии не так богато как в старой, так что здесь я думаю больше ничего не сделаешь.
Воспользуемся сторонними утилитами:
для винды
strip.exe - вырезает ещё больше отладочной информации из файла
upx.exe - сжимает исполняемый файл (это может отразится на реакции аверов)
Стряпаем батник со следующим содержанием
compress.bat
Код:
strip.exe --strip-all %1
upx.exe --best %1
кидаем утилиты и ваш файл в одну папку и...
Код:
compress.bat project1.exe
В линукс:
в консоли
Код:
cd lazarus
strip --strip-all /файл
К сожалению я не нашёл у себя утилиты strip (новый лазарус??)
upx для линукса качаем с оф сайта и запускаем в консоли (если файл и утилита лежит в одном каталоге)
Код:
upx project1
Что интересно на моей кубунте этот номер не прошёл. Поэтому если у вас убунтообразная система, то для того, чтобы сжать файл пишем так
Код:
./upx project1
В итоге вес формочки с кнопкой вышел 1,3 мб. Многовато естественно. Но всё же не 18.
 

X-Shar

:)
Администрация
Регистрация
03.06.2012
Сообщения
5 376
Репутация
7 873
Telegram
А это ты для Линукс компилил ? Если-да то вес нормальный, для винды конечно многовато, а что там за файл получается для Линукса, пакетный deb или что ?
 

X-Shar

:)
Администрация
Регистрация
03.06.2012
Сообщения
5 376
Репутация
7 873
Telegram
Кстати под разными линуксами запустится, или для конкретной сборки ?
 

Антоха

Уважаемый пользователь
Форумчанин
Регистрация
26.12.2012
Сообщения
2 780
Репутация
4 774
А это ты для Линукс компилил ?
Под Линукс.
а что там за файл получается для Линукса, пакетный deb или что ?
ХЗ) Просто исполняемый файлик. Но всё работает.
Кстати под разными линуксами запустится, или для конкретной сборки ?
Я думаю под всеми. У меня нет возможности проверить. Файл во вложении (это же просто форма с кнопкой).
 

Вложения

Антоха

Уважаемый пользователь
Форумчанин
Регистрация
26.12.2012
Сообщения
2 780
Репутация
4 774
Прошлой ночью, поковырявшись с Лазарусом и в очередной раз плюнув на это занятие - занялся извращением, поставил делфи 7 под вайном. Делфи дико ругалась при установке, кидала ошибками, но в итоге смирилась и встала вроде ровно. По крайней мере простые проекты компилирует без эрроров. Вот только вид IDE такой, как будто её стирали круглые сутки в течении года)
3.png


4.png