Компиляция проектов MSEIDE из Lazarus
Добавлено: 02.03.2010 16:16:38
Предлогаю небольшой How-to по этой теме
Компиляция проектов MSEIDE из Lazarus.
Данная статья не претендует на полноту публикации. Ответы на многочисленные проблемы с Lazarus и MSEIDE можно найти на форуме http://www.freepascal.ru/forum/
Помимо всего прочего здесь будет рассказано как установить Lazarus,fpc,MSEIDE в свою домашнюю директорию.
Примечания: ~/ -домашняя папка пользователя
user название вашей домашней папки
Lazarus
Итак приступим. Для начала скачиваем свежую сборку fpc http://www.freepascal.org/download.var . Например fpc-2.4.0.i386-linux.tar и распаковываем (я использовал mc) . Переходим в папку с скриптом установки и устанавливаем (не из под root)
sh install.sh
Указываем папку назначения. Например /home/user/opt/fpc (Замените user на свою домашнюю папку)
Соглашаемся со всеми запросами установшика
Поскольку исходники fpc у меня были в виде rpm то я их просто распаковал в папку ~/opt/fpc/usr
Также я поступил и с Lazarus, распаковав в ~/opt/lazarus
Внимание все остальные rpm пакеты необходимые для lazarus нужно установить через менеджер управления. Например в Fedora gpk-application или перейдите а в папку с rpm Lazarus и дайте команду rpm -ivh lazarus*. Она покажет недостающие пакеты
Скачать можно Lazarus отсюда http://sourceforge.net/projects/lazarus/files/
Запускаем lazarus из терминала
~/opt/lazarus/usr/lib/lazarus/lazarus
При первым запуске Lazarus выдаст несколько предупреждений игнорируем их
Заходим в Environment->Environment Options-> Files
Указываем путь к компилятору (compiler path) ~/opt/fpc/bin/fpc
и исходникам ~/opt/fpc/usr/share/fpcsrc
Проверяем установки Lazarus. Создаем пустой консольный проект File->New...->Console application
И пробуем компилировать Ctrl+F9
После успешной компиляции можно продолжать дальше
MSEIDE
Скачиваем MSEIDE(бинарник и исходники ) http://msegui.org/content/download
Распаковываем все,например, ~/opt/mse_2_2
Делаем символическую ссылку на ~/opt/mse_2_2
ln -s /home/user/opt/mse_2_2 /home/user/opt/mse
Открываем конфигурационный файл ~/.fpc.cfg (в корне домашней папки) . Например gedit
Добавляем следующие строки
-Fu/home/user/opt/mse/msegui/lib/addon/*/
-Fi/home/user/opt/mse/msegui/lib/addon/*/
-Fu/home/user/opt/mse/msegui/lib/common/kernel/i386-linux/
-Fu/home/user/opt/mse/msegui/lib/common/kernel/
-Fi/home/user/opt/mse/msegui/lib/common/kernel/
-Fu/home/user/opt/mse/msegui/lib/common/*/
Запускаем MSEIDE. Настраиваем Settings->Configure MSEIDE
Указываем ${FPCDIR} ~/opt/fpc . ${FPCLIBDIR} ~/opt/fpc/lib/fpc/2.4.0/units/i-386-linux.
${MSEDIR} ~/opt/mse/msegui
Создаём тестовый проект в MSEIDE . Project-> New-> From Template. Указываем
default.prj
Я назвал проект test_mse. Сохраняем и открываем test_mse.pas в Lazarus
Соглашаемся и создаём новый проект
Компиляция
Заходим проект-> параметры проекта->Код
Устанавливаем Стиль модулей в умное связывание. Опционально устанавливаем приоритет размера над скоростью . Включаем умное связывание и отключаем отладочную информацию
Открываем другие и указываем наш конфигурационный файл ~/.fpc.cfg
Пробуем собрать проект
Успешно
Навигация по коду
Окружение->Параметры -> CodeTools ->Общие и указываем дополнительные пути через точку с запятой
Например /home/user/opt/mse/msegui/lib/common/db;/home/user/opt/mse/msegui/lib/common/designutils;/home/user/opt/mse/msegui/lib/common/dialogs;/home/user/opt/mse/msegui/lib/common/editwidgets;/home/user/opt/mse/msegui/lib/common/i18n;/home/user/opt/mse/msegui/lib/common/ifi;/home/user/opt/mse/msegui/lib/common/image;/home/user/opt/mse/msegui/lib/common/kernel;/home/user/opt/mse/msegui/lib/common/kernel/i386-linux;/home/user/opt/mse/msegui/lib/common/kernel/i386-win32;/home/user/opt/mse/msegui/lib/common/opengl;/home/user/opt/mse/msegui/lib/common/pascalscript;/home/user/opt/mse/msegui/lib/common/printer;/home/user/opt/mse/msegui/lib/common/regcomponents;/home/user/opt/mse/msegui/lib/common/report;/home/user/opt/mse/msegui/lib/common/serialcomm;/home/user/opt/mse/msegui/lib/common/sysutils;/home/user/opt/mse/msegui/lib/common/unicode;/home/user/opt/mse/msegui/lib/common/widgets
Теперь можно изучать исходники MSE
Работает даже автодополнение
Русский язык
Если вы сейчас попробуете воспользоваться русским языком то у вас скорее всего ничего не получиться. Поэтому открываем ваш проект на MSEIDE . Открываем Project->Options->Editor. Устанавливаем Encoding в utf8
Открываем ~/.fpc.cfg и добавляем строчку -Fcutf8
Теперь можно указывать строковые константы на русском.
Отладка
Для того чтобы отлаживать наши приложения необходимо отключить оптимизацию и включить отладочную информация
Заходим проект-> параметры проекта->Код
Отключаем Стиль модулей в умное связывание; Приоритет размера над скоростью ; умное связывание . Включаем отладочную информацию генерировать отладочную информацию для GDB и Выдавать номера строк в ошибках
Опционально
Создаём кнопки быстрого запуска для Lazarus и MSEIDE
Для Lazarus путь запуска ~/opt/lazarus/usr/lib/lazarus/lazarus
Для MSEIDE ~/opt/mse/mseide
Статья с картинками в odf http://narod.ru/disk/18396189000/lazarus_and_mse.odt.html и pdf http://narod.ru/disk/18396226000/lazarus_and_mse.pdf.html
Компиляция проектов MSEIDE из Lazarus.
Данная статья не претендует на полноту публикации. Ответы на многочисленные проблемы с Lazarus и MSEIDE можно найти на форуме http://www.freepascal.ru/forum/
Помимо всего прочего здесь будет рассказано как установить Lazarus,fpc,MSEIDE в свою домашнюю директорию.
Примечания: ~/ -домашняя папка пользователя
user название вашей домашней папки
Lazarus
Итак приступим. Для начала скачиваем свежую сборку fpc http://www.freepascal.org/download.var . Например fpc-2.4.0.i386-linux.tar и распаковываем (я использовал mc) . Переходим в папку с скриптом установки и устанавливаем (не из под root)
sh install.sh
Указываем папку назначения. Например /home/user/opt/fpc (Замените user на свою домашнюю папку)
Соглашаемся со всеми запросами установшика
Поскольку исходники fpc у меня были в виде rpm то я их просто распаковал в папку ~/opt/fpc/usr
Также я поступил и с Lazarus, распаковав в ~/opt/lazarus
Внимание все остальные rpm пакеты необходимые для lazarus нужно установить через менеджер управления. Например в Fedora gpk-application или перейдите а в папку с rpm Lazarus и дайте команду rpm -ivh lazarus*. Она покажет недостающие пакеты
Скачать можно Lazarus отсюда http://sourceforge.net/projects/lazarus/files/
Запускаем lazarus из терминала
~/opt/lazarus/usr/lib/lazarus/lazarus
При первым запуске Lazarus выдаст несколько предупреждений игнорируем их
Заходим в Environment->Environment Options-> Files
Указываем путь к компилятору (compiler path) ~/opt/fpc/bin/fpc
и исходникам ~/opt/fpc/usr/share/fpcsrc
Проверяем установки Lazarus. Создаем пустой консольный проект File->New...->Console application
И пробуем компилировать Ctrl+F9
После успешной компиляции можно продолжать дальше
MSEIDE
Скачиваем MSEIDE(бинарник и исходники ) http://msegui.org/content/download
Распаковываем все,например, ~/opt/mse_2_2
Делаем символическую ссылку на ~/opt/mse_2_2
ln -s /home/user/opt/mse_2_2 /home/user/opt/mse
Открываем конфигурационный файл ~/.fpc.cfg (в корне домашней папки) . Например gedit
Добавляем следующие строки
-Fu/home/user/opt/mse/msegui/lib/addon/*/
-Fi/home/user/opt/mse/msegui/lib/addon/*/
-Fu/home/user/opt/mse/msegui/lib/common/kernel/i386-linux/
-Fu/home/user/opt/mse/msegui/lib/common/kernel/
-Fi/home/user/opt/mse/msegui/lib/common/kernel/
-Fu/home/user/opt/mse/msegui/lib/common/*/
Запускаем MSEIDE. Настраиваем Settings->Configure MSEIDE
Указываем ${FPCDIR} ~/opt/fpc . ${FPCLIBDIR} ~/opt/fpc/lib/fpc/2.4.0/units/i-386-linux.
${MSEDIR} ~/opt/mse/msegui
Создаём тестовый проект в MSEIDE . Project-> New-> From Template. Указываем
default.prj
Я назвал проект test_mse. Сохраняем и открываем test_mse.pas в Lazarus
Соглашаемся и создаём новый проект
Компиляция
Заходим проект-> параметры проекта->Код
Устанавливаем Стиль модулей в умное связывание. Опционально устанавливаем приоритет размера над скоростью . Включаем умное связывание и отключаем отладочную информацию
Открываем другие и указываем наш конфигурационный файл ~/.fpc.cfg
Пробуем собрать проект
Успешно
Навигация по коду
Окружение->Параметры -> CodeTools ->Общие и указываем дополнительные пути через точку с запятой
Например /home/user/opt/mse/msegui/lib/common/db;/home/user/opt/mse/msegui/lib/common/designutils;/home/user/opt/mse/msegui/lib/common/dialogs;/home/user/opt/mse/msegui/lib/common/editwidgets;/home/user/opt/mse/msegui/lib/common/i18n;/home/user/opt/mse/msegui/lib/common/ifi;/home/user/opt/mse/msegui/lib/common/image;/home/user/opt/mse/msegui/lib/common/kernel;/home/user/opt/mse/msegui/lib/common/kernel/i386-linux;/home/user/opt/mse/msegui/lib/common/kernel/i386-win32;/home/user/opt/mse/msegui/lib/common/opengl;/home/user/opt/mse/msegui/lib/common/pascalscript;/home/user/opt/mse/msegui/lib/common/printer;/home/user/opt/mse/msegui/lib/common/regcomponents;/home/user/opt/mse/msegui/lib/common/report;/home/user/opt/mse/msegui/lib/common/serialcomm;/home/user/opt/mse/msegui/lib/common/sysutils;/home/user/opt/mse/msegui/lib/common/unicode;/home/user/opt/mse/msegui/lib/common/widgets
Теперь можно изучать исходники MSE
Работает даже автодополнение
Русский язык
Если вы сейчас попробуете воспользоваться русским языком то у вас скорее всего ничего не получиться. Поэтому открываем ваш проект на MSEIDE . Открываем Project->Options->Editor. Устанавливаем Encoding в utf8
Открываем ~/.fpc.cfg и добавляем строчку -Fcutf8
Теперь можно указывать строковые константы на русском.
Отладка
Для того чтобы отлаживать наши приложения необходимо отключить оптимизацию и включить отладочную информация
Заходим проект-> параметры проекта->Код
Отключаем Стиль модулей в умное связывание; Приоритет размера над скоростью ; умное связывание . Включаем отладочную информацию генерировать отладочную информацию для GDB и Выдавать номера строк в ошибках
Опционально
Создаём кнопки быстрого запуска для Lazarus и MSEIDE
Для Lazarus путь запуска ~/opt/lazarus/usr/lib/lazarus/lazarus
Для MSEIDE ~/opt/mse/mseide
Статья с картинками в odf http://narod.ru/disk/18396189000/lazarus_and_mse.odt.html и pdf http://narod.ru/disk/18396226000/lazarus_and_mse.pdf.html