Не работает пересборка Lazarus на OpenSUSE 11.4

Вопросы программирования и использования среды Lazarus.

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

Не работает пересборка Lazarus на OpenSUSE 11.4

Сообщение DmSer » 05.06.2011 14:47:27

Быть может имеется подробная, пошаговая инструкция установки Lazarus на OpenSUSE? Наличие подобного документа, имхо, было бы полезным для многих счастливых обладателей этой версии Linux. Если для установки Lazarus в Windows достаточно скачать инсталлятор с sourceforge.net и все необходимое окажется установленным на компьютере, то для установки в Linux для начинающего пользователя данной ОС это настоящее испытание. Вот краткая история моих мучений:
- зашел на сайт: http://software.opensuse.org/114/ru , задал в поиске "lazarus", запустил установку "в один клик", в результате программа скачалась и установилась;
- запустил лазарус, бросил на форму одну кнопку, запустил приложение - приложение с одной кнопкой появилось на экране;
- попытался создать обработчик для данной кнопки, в результате чего лазарус ругнулся на отсутствие модуля classes. На первый взгляд странная ситуация. Этот модуль для нового приложения появляется в списке uses автоматически. И в прошлый раз он был, но приложение запустилось, а с обработчиком - уже не хотит.
- после нескольких часов разбирательств, экспериментов и эксплуатирования google выяснилось, что нужны дополнительные пакеты: fpc и fpc-src. Скачал их с того же самого сайта. После этого появилась возможность полноценного программирования.
- очевидно, что в ближайшее время возникнет необходимость установки дополнительных компонентов. В связи с этим решил попробовать пересобрать лазарус с помощью меню "Сервис\Пересобрать лазарус по профилю "Собрать все"". Не не тут то было. Лазарус выдал сообщение "Программа "make" не найдена. Это средство нужно, чтобы собрать Lazarus.". Опять же после нескольких часов разбирательств, экспериментов и эксплуатирования google выяснилось во-первых, что из себя представляет "make", во-вторых оказалось, что утилита "make" в OpenSUSE по умолчанию не ставится. Пришлось воспользоваться средством "Установка/удаление программ" и установить "make".
- теперь при попытке пересборки лазаруса выдается следующее:

Код: Выделить всё
Compiling resource ../units/i386-linux/lazarus.or
/usr/lib/lazarus/ide/lazarus.pp(130,1) Error: Error while compiling resources
/usr/lib/lazarus/ide/lazarus.pp(130,1) Fatal: There were 1 errors compiling module, stopping


и накакие танцы с бубнами не помогают. И по колесу стучал, и фары протирал, и следующие действия сделал:
- настроил полный доступ к каталогам "/usr/lib/lazarus/", "/usr/lib/fpc/" (а также всем вложенным элементам);
- удалял пакет лазарус и заново его ставил;
- корректировал /etc/fpc.cfg (комментировал параметр, соответствующий "Write always a nice FPC logo", как некоторые советуют);
- пробовал собирать вручную с помощью команды: "/usr/lib/lazarus> make clean bigide". Однако результат оказался следующим:

Код: Выделить всё
........................
make -C fpcunit
make[2]: Вход в каталог `/usr/lib/lazarus/components/fpcunit'
/bin/rm -f lib/i386-linux/fpcunittestrunner.ppu
/usr/bin/ppc386 -MObjFPC -Scgi -O1 -gl -vewnhi -l -dLCL -dLCLgtk2 -Fu../synedit/units/i386-linux -Fu../../ideintf/units/i386-linux -Fu../../lcl/units/i386-linux -Fu../../lcl/units/i386-linux/gtk2 -Fu../../packager/units/i386-linux -Fu. -Fu/usr/lib/fpc/2.4.2/units/i386-linux/rtl -Fi. -FE. -FUlib/i386-linux -di386 fpcunittestrunner.pas
Hint: Start of reading config file /etc/fpc.cfg
Hint: End of reading config file /etc/fpc.cfg
Free Pascal Compiler version 2.4.2 [2011/05/16] for i386
Copyright (c) 1993-2010 by Florian Klaempfl
Target OS: Linux for i386
Compiling fpcunittestrunner.pas
14 lines compiled, 0.8 sec
2 hint(s) issued
/bin/cp -fp Makefile.compiled lib/i386-linux/FPCUnitTestRunner.compiled
/bin/cp: «Makefile.compiled» и «lib/i386-linux/FPCUnitTestRunner.compiled» - один и тот же файл
make[2]: *** [compiled] Ошибка 1
make[2]: Выход из каталога `/usr/lib/lazarus/components/fpcunit'
make[1]: *** [bigidecomponents] Ошибка 2
make[1]: Выход из каталога `/usr/lib/lazarus/components'
make: *** [bigidecomponents] Ошибка 2


полный текст приведен в приложенном файле:
makeout.zip


Из приведенного текста видно, что ошибки "Error while compiling resources" не возникло, однако вместо нее возникла другая.

Таким образом, никикие из приведенных действий результата не дали.

Версия Лазаруса: 0.9.30 от 16.05.2011
Версия FPC: Free Pascal Compiler version 2.4.2 [2011/05/16] for i386
Версия OpenSUSE: 11.4, x86, графическая оболочка KDE, запущена под Virtual Box 4.0.4

Если не трудно, помогите разобраться с проблемой!
Спасибо!
У вас нет необходимых прав для просмотра вложений в этом сообщении.
DmSer
незнакомец
 
Сообщения: 5
Зарегистрирован: 05.06.2011 13:36:27

Re: Не работает пересборка Lazarus на OpenSUSE 11.4

Сообщение Mr.Smart » 05.06.2011 15:15:25

удалите каталог /usr/lib/lazarus/components/fpcunit/lib/
Mr.Smart
долгожитель
 
Сообщения: 1796
Зарегистрирован: 29.03.2008 01:01:11
Откуда: из леса!

Re: Не работает пересборка Lazarus на OpenSUSE 11.4

Сообщение DmSer » 05.06.2011 15:45:27

Уже лучше, спасибо!
Процесс сборки значительно продвинулся. На экран вывелось следующее:

Код: Выделить всё
Compiling resource ../units/i386-linux/lazarus.or
Error: No known file format detected for file '/usr/lib/lazarus/lcl/units/i386-linux/finddlgunit.lfm'
lazarus.pp(130,1) Error: Error while compiling resources
lazarus.pp(130,1) Fatal: There were 1 errors compiling module, stopping


Видимо из среды сборка не проходила по той же самой ошибке. Плохо, что самое главное сообщение об ошибке, а именно "No known file format detected for file..." из среды определить нельзя.
Итак, причина ошибки "No known file format detected for file..." в том, что файл "finddlgunit.lfm" имеет нулевой размер. Удивительно, что нулевых lfm-файлов в папке lazarus набралось аж 112 штук. Видимо, придется в третий раз переустанавливать лазаруса.

Добавлено спустя 1 час 13 минут 29 секунд:
Собрать лазарус под линуксом к сожалению так и не удалось. Все усилия совершенно тщетны. Видимо процесс сборки в линуксе толком не отлаживали. Придется прервать знакомство в лазарусом до тех пор, пока не появится собирабельная под линуксом версия, или не появится внятная инструкцию с пошаговым описанием установки.
Если у кого-нибудь имеется время, попробуйте установить лазарус на OpenSUSEx86, хотя бы под VirtualBox и проверьте пересборку лазаруса, может быть все-таки решение существует.
Спасибо!
DmSer
незнакомец
 
Сообщения: 5
Зарегистрирован: 05.06.2011 13:36:27

Re: Не работает пересборка Lazarus на OpenSUSE 11.4

Сообщение Padre_Mortius » 05.06.2011 18:55:09

Я бы порекомендовал два варианта.
1. Поставить lazarus и fpc через yast. Зачем пытаться ставить из фабрики не очень понятно.
2. Скачать rpm с freepascal.org и уставить их руками через rpm -ivh <имя пакета>
Padre_Mortius
энтузиаст
 
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Re: Не работает пересборка Lazarus на OpenSUSE 11.4

Сообщение DmSer » 05.06.2011 21:32:00

До сих пор ничего не получилось :(

Столкнулся с такой проблемой. После вызова команды "make clean bigide" происходит удаление (или обнуление) файла ресурсов "/usr/lib/lazarus/ide/editoroptions.res", после чего этот файл оказывается размером 0 байт и выдается следующее сообщение:

Код: Выделить всё
Compiling resource ../units/i386-linux/lazarus.or
Error: No known file format detected for file 'editoroptions.res'
lazarus.pp(130,1) Error: Error while compiling resources
lazarus.pp(130,1) Fatal: There were 1 errors compiling module, stopping
Fatal: Compilation aborted


Пробовал вернуть исходный файл "editoroptions.res", не помогает, результат тот же :(

Добавлено спустя 22 минуты 38 секунд:
Padre_Mortius писал(а):Я бы порекомендовал два варианта.
1. Поставить lazarus и fpc через yast. Зачем пытаться ставить из фабрики не очень понятно.


Спасибо.
Фактически только начал разбираться с линуксом, еще не освоился как следует, поэтому устанавливаю по принципу "как могу". Качаю из репозитория OpenSUSE, поскольку сразу после установки линукс предложил ссылку именно на этот сайт. Причем скачивал пакет с лазарусом (почти 50 МБ) раз шесть, пока не сообразил, что на "установку в 1 клик" лучше забить и проще скачать rpm-пакет :)

Padre_Mortius писал(а):2. Скачать rpm с freepascal.org и уставить их руками через rpm -ivh <имя пакета>


Смущает вот что. С сайта freepascal.org, насколько я понял, можно скачать только снапшоты. Для скачивания рабочей версии отсылает на sourceforge.net, но там последняя версия от 31.03.2011, тогда как с сайта OpenSUSE (http://software.opensuse.org/search?q=l ... debug=true) скачалась версия от 16.05.2011 (это дата исполняемого файла "lazarus"). С другой стороны вот еще что странно. На сайте OpenSUSE пакет называется "lazarus-0.9.30-1.1.i586.rpm", а на sf - "lazarus-0.9.30-0.i686.rpm". Что означает окончание "i586" и "i686" я не совсем понимаю (точнее не понимаю совсем). Какая версия является более свежей?

Добавлено спустя 16 минут 31 секунду:
Еще такой вопрос. Верно ли я понимаю, что если мой процессор - 64-битный (AMD Athlon 64 Dual Core 4600+), то я могу смело устанавливать пакет x86_64 ?
DmSer
незнакомец
 
Сообщения: 5
Зарегистрирован: 05.06.2011 13:36:27

Re: Не работает пересборка Lazarus на OpenSUSE 11.4

Сообщение Mr.Smart » 05.06.2011 22:41:57

в терминале наберите команду uname -m
Mr.Smart
долгожитель
 
Сообщения: 1796
Зарегистрирован: 29.03.2008 01:01:11
Откуда: из леса!

Re: Не работает пересборка Lazarus на OpenSUSE 11.4

Сообщение DmSer » 05.06.2011 22:48:12

Пишет i686
Спасибо!
DmSer
незнакомец
 
Сообщения: 5
Зарегистрирован: 05.06.2011 13:36:27

Re: Не работает пересборка Lazarus на OpenSUSE 11.4

Сообщение Mr.Smart » 05.06.2011 22:52:49

значит дистрибутив у вас 32х битный и соответственно Lazarus должен быть тоже.
Mr.Smart
долгожитель
 
Сообщения: 1796
Зарегистрирован: 29.03.2008 01:01:11
Откуда: из леса!

Re: Не работает пересборка Lazarus на OpenSUSE 11.4

Сообщение Padre_Mortius » 05.06.2011 23:46:06

DmSer,
1. набрать в консоли
Код: Выделить всё
sudo zypper install fpc fpc-src lazarus

2. ваша ссылка на Лазарус, а fpc лучше поставить через zypper. Лазарус нужно устанавливать следующей командой в папке с загруженным rpm-пакетом
Код: Выделить всё
rpm -ivh lazarus-0.9.30-0.i686.rpm
Padre_Mortius
энтузиаст
 
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Re: Не работает пересборка Lazarus на OpenSUSE 11.4

Сообщение VirtUX » 06.06.2011 10:44:45

Не ставится в 11.4 Лазарь 0,9,30! Так и не разобрался в чем глюк, НО...
У меня на 11.4 стал нормально только 0.9.30.1 из ночных сборок. Попробуйте поставить последний из SVN.


Добавлено спустя 8 минут 40 секунд:
В стандартных репозах его нет. Есть здесь, но безглючность не гарантируется. А вот 0.9.30.1 работает замечательно под Qt в любом KDE.
Аватара пользователя
VirtUX
энтузиаст
 
Сообщения: 880
Зарегистрирован: 05.02.2008 10:52:19
Откуда: Крым, Алушта

Re: Не работает пересборка Lazarus на OpenSUSE 11.4

Сообщение DmSer » 06.06.2011 17:05:08

Padre_Mortius, огромное спасибо! Все получилось!

Снес у себя все три установленных из репозитория OpenSUSE пакета (fpc, fpc-src, lazarus). Далее скачал пакеты fpc, fpc-src, lazarus по указанному Вами адресу (ftp://ftp.freepascal.org/pub/lazarus/re ... %200.9.30/), разместил в локальном репозитории и выполнил команду "sudo zypper install fpc fpc-src lazarus" и все установилось. Вторую предложенную Вами команду использовать не стал.
Дополнительно пришлось открыть полный доступ к каталогу "/usr/lib/lazarus".
Теперь все работает (по крайней мере на первый взгляд). Пересборка лазаруса заработала с первого раза!
DmSer
незнакомец
 
Сообщения: 5
Зарегистрирован: 05.06.2011 13:36:27


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 42

Рейтинг@Mail.ru