С недавних пор (lazarus rev.60395) я заметил в окне настроек при первом запуске IDE новую вкладку "Fppkg" с настройками конфигурации компилятора
По умолчанию при этом в папке с локальными настройками пользователя автоматически создается папка ../FreePascal/fppkg (у меня на винде, например, это c:\Users\leyba\AppData\Local\FreePascal\fppkg\) c единственным файлом внутри fppkg.cfg и следующим содержимым
[Global]
ConfigVersion=5
BuildDir=C:\Users\leyba\AppData\Local\FreePascal\fppkg\build\
Downloader=FPC
CompilerConfig=default
FPMakeCompilerConfig=d
...
Читать дальше »
|
Как-то, гуляя по форуму freepascal.ru, в одном из топиков наткнулся на ссылки к русскоязычной доке по компилятору и другим утилитам. В качестве мемориальных заметок выкладываю здесь.
1. Руководство пользователя Free Pascal 2.4.2 (ссылки 1 и 2 на Яндекс-диск от пользователя ... Читать дальше » |
Появились не очень хорошие новости: разработчик дженериков под FPC Maciej Izak ушел из команды разработчиков компилятора, о чем написал здесь. На прощание он пообещал поддерживать библиотеку и выкладывать свежие обновления здесь или здесь.
Для обновления дженериков в свежем транке компилятора необходимо заменить содержимое папки <fpc_root>\packages\rtl-generics на содержимое любой из последних двух ссылок. Далее FPC компилируется, как обычно. |
Итак, наконец-то я добрался и до кросскомпиляции. Не то, чтобы мне было это сильно надо (я по-прежнему считаю, что надежнее собирать проект на той ОСи, для которой он предназначен), но тут просто стало интересно. Про кросскомпиляцию на Wiki (особенно под Windows) рассказано в довольно общих чертах и не добавляет ясности в этом вопросе :)
Различают Host-платформу (сборка Лазаруса, на которой собирается проект) и Target-платформу (ОСь определенной разрядности, для которой собирается проект). Я опишу процесс сборки кросскомпилятора для Linux_i386 (Target) на win-x32 сборке Лазаруса (Host) и для Windows x32 (Target) на линуксовой i386 сборке Lazarus. 1. Кросскомпиляция на Windows.1. Для начала скачиваем ... Читать дальше » |
После установки Debian в виртуальную машину необходимо установить пакет VMWare Tools, чтобы получить дополнительные возможности (автоматический размер экрана под размер окна VM, доступ к общим папкам и файлам Windows и т.д.). В линуксе в виртуальном дисководе подмонтируется соответствующий пакет Находим в нем tar. ... Читать дальше » |
Про класс TThread вроде бы написано много и подробно. Но со временем некоторые нюансы забываются. Для себя сделал несколько заметок.
Не буду описывать все свойства класса TThread из справки, работу с критическими секциями, семафорами, глобальными переменными ThreadVar и проч. Будем считать, что читающий этот текст знает мат.часть (еще ссылки: тынц) Также не претендую на истину в последней инстанции. Замечания и критические поправки приветствуются. 1. TThread: конструктор
|
Видя мучения дельфистов, которые для добавления многоязычного интерфейса вынуждены либо пользоваться сторонним софтом, помещая варианты перевода в ресурсы, либо загружая из базы данных, я решил выяснить, как с этим обстоит дело в Лазаре.
За основу взял мануалы: раз, два и три. Увы, материалы написаны в разное время, для разных версий IDE (и как мне показалось, нерабочие). Поэтому результаты своего опыта опишу здесь. 1. Создаем обычный проект, кладем на форму TRadioGroup с тремя Item, два TLabel и кнопку ... Читать дальше » |
В процессе работы часто приходится лезть в справку за нужной информацией.
Покопавшись в сети, я обнаружил, что ее можно скомпилировать самому, без всяких скачиваний дополнительных файлов со сторонних ресурсов. Потому что она поставляется в xml-формате в папке /docs/xml корневого каталога среды. Процесс компиляции справки для Линукса и Винды не сильно отличается друг от друга, поэтому будут описаны параллельно. Итак, сначала необходимо собрать GUI-шный просмотрщик файлов справки. 1. Открываем Лазарусом в папке ...\lazarus_trunk\components\chmhelp\lhelp\ файл проекта lhelp.lpi и компилируем его. 2. Затем через меню Сервис ►Параметры ►Справка ►Параметры справки ►CHM Help Viewer в строке Help.EXE указываем скомпилированный lhelp (для Windows l ... Читать дальше » |
Одним из безальтернативных нативных инструментов администрирования firebird с GUI-шным интерфейсом на линуксе является FlameRobin. Из репозитариев он ставится так
:~$ sudo apt-get install flamerobin
Если и сервер firebird ставится из репозиториев, то подключения из flamerobin к базам осуществляется без проблем. Однако, когда я установил Firebird 3.0.2 из архива при помощи инсталлятора, то при попытке коннекта получил ошибку
*** IBPP::SQLException ***
Context: Database::Connect
Message: isc_attach_database failed
SQL Message
...
Читать дальше »
|
В своих изысканиях я руководствовался различным материалом: раз, два, три. 1. Подготовка системы к установке.
|
После перехода с Дельфи и по мере освоения Лазаруса начинаешь понимать, что среды все-таки довольно сильно отличаются друг от друга. Это отличие особенно заметно, если писать кроссплатформенное приложение. И проявляется оно тем, что для разных ОСей одни и те же функции и константы описаны в разных модулях. |
Решил оставить себе закладку на потенциально полезный материал "Lazarus fpCEF3 - объединяем браузер и десктопное приложение" от Alex_vcorp со скруля. |
Эти заметки пишутся для себя, чайника. Ибо, как известно, повторенье - мать ученья. Олдфагов эти записи не должны интересовать, поэтому неконструктивные критики могут идти лесом. Но я с благодарностью восприму конструктивные советы. На этом покончу с вводной частью... |
Долго я откладывал этот момент в дальний ящик, и, как оказалось, не зря. Учитывая, что вразумительных мануалов на эту тему в сети с гулькин нос и нет универсального алгоритма установки, я решил описать свой опыт тут - себе на память и другим в назидание :-р |
... Некоторые водители напоминают мне сперматозоиды: их цель - хаотичное поступательное движение любой ценой...
... О полосах движения большинство нынешних водителей имеют такое же смутное представление, как и папуас Океании о сугробах снега ... |
... Я давно уже не пью, не курю и не бреюсь (ношу бороду). Интересно, почему больные упорно продолжают в знак особой признательности за лечение дарить мне дорогую выпивку или пенку для бритья?..
... Страшнее одиночества только беспомощность ... ...Почему после 40-ка мужики уходят в запои? Сорок лет - некая линия горизонта, заглянув за которую, мы надеемся постичь смысл жизни. Но увы, там по-прежнему та же жизнь, но уже без цели. А жизнь без цели лишена смысла. Хорошо, что это понимание приходит только после 40-ка ... ... Я многое боюсь потерять в этой жизни: родных, жилье, любимого человека. Но больше всего я боюсь потерять свой разум: тогда мне не нужны будут ни родные, ни жилье и ни любимый человек ... ... Две вещи на Земле безмерны: материнская любовь и человеческая глупость ... ... Нет смысла тяготиться грузом ошибок прошлого. Достаточно просто помнить о них и стараться не повторять ... ... Человек станов ... Читать дальше » |
... Я перестал любить больных. Они стали отвечать мне взаимностью ...
... Мои пациенты все чаще напоминают мне цирковых клоунов: приходят на прием в трусах и в тапочках на босу ногу, слушают только себя и отвечают невпопад... ... O tempora! O mores! Раньше я врачевал людей, теперь - я оказываю медицинские услуги... ... Сомнения пациента в правильности самому себе поставленного диагноза возникают только на этапе реализации самому себе назначенного лечения... |
Вскоре после успешной попытки установки сабжа под Линуксом при помощи |
При всех достоинствах Лазаря в нем в стандартной поставке отсутствует очень важный, на мой взгляд, компонент для форматирования текста. В дельфях, например, есть RichEdit, а вот в Лазаре ничего. Среди немногих удалось отыскать Richmemo русскоязычного разработчика Дмитрия Бояринцева aka 'skalogryz'.
Итак, на Lazarus 1.3 установка компонента под Windows не составила труда и прошла без сучка и задоринки. Проблемы начались при попытке поставить компонент в Debian 7.6, который использует Gtk2. Для начала компилятор выдал Компиляция пакета richmemopackage 1.0: Код завершения 256, ошибок: 1 |