Проблема с компиляцией пустой формы

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

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

Проблема с компиляцией пустой формы

Сообщение Climber » 05.06.2007 20:17:19

Только поставил lazarus, запускаю компиляцию пустой формы. Компилятор не находит половину модулей (Interfaces, Forms, Controls...) Эти модули вроде бы лежат в папках, указанных в настройках... Что я не так делаю?
Climber
постоялец
 
Сообщения: 415
Зарегистрирован: 03.06.2007 20:09:57
Откуда: Москва

Сообщение v-t-l » 05.06.2007 21:36:33

У меня на днях была таже проблема, когда ставил 0.9.23/2.1.5 на 0.9.22/2.0.4. Разбираться не стал - удалил все, кроме сторонних компонентов, и поставил начисто. Все прошло. :lol:
v-t-l
энтузиаст
 
Сообщения: 734
Зарегистрирован: 13.05.2007 16:27:22
Откуда: Belarus

Сообщение Attid » 06.06.2007 22:29:14

ОС ?
пробывал пересобрать лазарус из ком строки ?
Аватара пользователя
Attid
долгожитель
 
Сообщения: 2585
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E

Сообщение Climber » 07.06.2007 21:55:34

У меня вчера появилось подозрение, что я не все пути правильно прописал...
Каталоги, в которых задается местонахождение модулей, прописываются в меню Окружение ->настройки окружения->Файлы или еще где-то?
Climber
постоялец
 
Сообщения: 415
Зарегистрирован: 03.06.2007 20:09:57
Откуда: Москва

Сообщение Climber » 07.06.2007 22:44:47

Attid писал(а):вопросы по твоему для красоты ?

Вот я ишак! Прошу прощения, почему-то думал, что в первом сообщении написал... :oops:
ОС - Ubuntu 7.04.
Пересобрать не пробовал пока, времени мало, а делов много. Я сначала скачал исходники и компилировал их, но они не компилировались (подробности тут http://freepascal.ru/forum/viewtopic.ph ... e09ecc2943), поэтому я поставил из deb файла...
Climber
постоялец
 
Сообщения: 415
Зарегистрирован: 03.06.2007 20:09:57
Откуда: Москва

Сообщение Attid » 08.06.2007 12:23:15

в общем как ставил для начало уточни.
надо примерно так
http://sourceforge.net/project/showfile ... _id=204004
от туда fp_all_deb.tar распаковываем ставим все что внутри.
потом
lazarus_0.9.22-1_i386.deb
тоже ставим смотрим что запуска .

проверяем что работает компилятор
Код: Выделить всё
$fpc

должен показать версию
удаляем настройки
$ sudo rm -fr ~/.lazarus

запускаем лазарус, пробуем создать формачку.
если не идет
$ cd lazarus
$ make clean all


проверяем снова.
если ошибки по пути то думай над ними или пиши сюда.
Аватара пользователя
Attid
долгожитель
 
Сообщения: 2585
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E

Сообщение Climber » 08.06.2007 20:35:04

Ок, спасибо, буду разбираться...
Climber
постоялец
 
Сообщения: 415
Зарегистрирован: 03.06.2007 20:09:57
Откуда: Москва

Сообщение Climber » 09.06.2007 08:31:59

переустановка не помогла.
Удалил все пакеты free pascal, поставил все заново. Форма не скомпилировалась. Зашел в папку lazarus, выполнил команду make clean all. Выполнение завершилось сообщением:

graphics.pp(41,38) Fatal: Can't find unit Contnrs
Fatal: Compilation aborted
make[1]: *** [alllclunits.ppu] Error 1
make[1]: Leaving directory `/usr/share/lazarus/lcl'
make: *** [lcl] Error 2
Climber
постоялец
 
Сообщения: 415
Зарегистрирован: 03.06.2007 20:09:57
Откуда: Москва

Сообщение shade » 09.06.2007 10:39:14

Требуется настройка FPC.
В ~/.fpc.cfg или /etc/fpc.cfg
Нужно прописать пути к юнитам
-Fu/usr/local/lib/fpc/x.x.x/units/$FPCTARGET/
-Fu/usr/local/lib/fpc/x.x.x/units/$FPCTARGET/*
-Fu/usr/local/lib/fpc/x.x.x/units/$FPCTARGET/rtl
(проверь, может у тебя другие пути к юнитам...)
$FPCTARGET - это макрос которой замениться на что-то типа i386-linux
Где x.x.x версия FPC для этого есть макрос, точно не помню как называется, $FPCVERSION или что-то типа того..
Аватара пользователя
shade
энтузиаст
 
Сообщения: 879
Зарегистрирован: 21.02.2006 20:15:48
Откуда: http://shamangrad.net/

Сообщение Attid » 09.06.2007 14:24:32

в бубунте будет вот так :
Код: Выделить всё
-Fu/usr/lib/fpc/$fpcversion/units/$fpctarget
-Fu/usr/lib/fpc/$fpcversion/units/$fpctarget/*
-Fu/usr/lib/fpc/$fpcversion/units/$fpctarget/rtl
Аватара пользователя
Attid
долгожитель
 
Сообщения: 2585
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E

Сообщение Climber » 09.06.2007 19:39:58

Файл такой был и пути в нем точно такие же уже прописаны. :?
Climber
постоялец
 
Сообщения: 415
Зарегистрирован: 03.06.2007 20:09:57
Откуда: Москва

Сообщение shade » 09.06.2007 20:16:53

Тогда в меню лазаруса "Настройки -> Настройки окружения", вкладка "Файлы"
Пункт "Путь компилятора", убедись, что там прописан нужный компилятор...

Поищи есть ли contnrs.ppu в /usr/lib/fpc/$fpcversion/units/$fpctarget/*

Проверь работает ли компилятор без lazarus'а
потом по попробуй без lazarus'а но с подключенным uses Contnrs

Если в последнем случае файл не находиться, значит проблема в настройках fpc.cfg, по пробуй заменить $fpcversion и $fpctarget на соответствующие значения...
Аватара пользователя
shade
энтузиаст
 
Сообщения: 879
Зарегистрирован: 21.02.2006 20:15:48
Откуда: http://shamangrad.net/

Сообщение Climber » 10.06.2007 18:40:55

По пунктам:
1. В настройках лазаруса указано: "Путь компилятора" - "/usr/local/bin/ppc386"
2. Файл contnrs.ppu нашелся в папке /usr/lib/fpc/2.0.4/units/i386-linux/fcl.
3. Компилятор без лазаруса работает.
4. С подключенным Contnrs - нет. При компиляции пишет: Can't find unit Contnrs
5. Последнее я не очень понял. Н а всякий случай заменил строку "/usr/lib/fpc/$fpcversion/units/$fpctarget" на "/usr/lib/fpc/2.0.4/units/i386-linux". Не помогло...

Перекомпиляция лазаруса выдает все туже ошибку, компиляция формы все также не находит модуль Interfaces (да и все остальные тоже)...
Climber
постоялец
 
Сообщения: 415
Зарегистрирован: 03.06.2007 20:09:57
Откуда: Москва

Сообщение Attid » 10.06.2007 18:48:05

скачай лазарус в исходниках и попробуй скомпилить его в домашней папке предварительно удалив ~/.lazarus

больше идей нет, ощущение что Makefile у тебя левый.
Аватара пользователя
Attid
долгожитель
 
Сообщения: 2585
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E

Сообщение Climber » 10.06.2007 18:50:16

Небольшое уточнение: команда make clean all, будучи запущена из папки /usr/share/lazarus/, завершается такой ошибкой:

Compiling graphics.pp
PPU Loading /usr/lib/fpc/2.0.4/units/i386-linux/fcl/contnrs.ppu
PPU Invalid Version 53
graphics.pp(41,38) Fatal: Can't find unit Contnrs
Fatal: Compilation aborted
make[1]: *** [alllclunits.ppu] Error 1
make[1]: Leaving directory `/usr/share/lazarus/lcl'
make: *** [lcl] Error 2

Она и раньше так же завершалась, только первые три строки я раньше не писал. Не знаю только, имеет ли это какое-нибудь значение...
Climber
постоялец
 
Сообщения: 415
Зарегистрирован: 03.06.2007 20:09:57
Откуда: Москва

След.

Вернуться в Lazarus

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

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

Рейтинг@Mail.ru