Lazarus и School Linux Lite
Модератор: Модераторы
-
Александр Яшин
- новенький
- Сообщения: 67
- Зарегистрирован: 21.11.2009 08:31:01
Lazarus и School Linux Lite
Установил Lazarus на школьный линукс (School Linux Lite 4.0.0). Установилось нормально с первого раза, но при компиляции даже пустого проекта выдает ошибку
project1.lpr(17,1) Error: Ошибка при компоновке
Никак не могу найти причину. Подскажите, кто знает.
В Windows такое происходило, если новый проект не сохраняешь. После сохранения компилировалось.
А здесь и сохранение не помогает.
project1.lpr(17,1) Error: Ошибка при компоновке
Никак не могу найти причину. Подскажите, кто знает.
В Windows такое происходило, если новый проект не сохраняешь. После сохранения компилировалось.
А здесь и сохранение не помогает.
Re: Lazarus и School Linux Lite
2 Light13: Посмотрел ссылку. Не понял, а с какого бока kdevelop & lazarus ... И по чему я не видел записи в bugzilla.altlinux.ru по данному поводу? ...
Проблема в не выявленных зависимостях вида requires в rpm. А вот что именно надо мне не понятно. Ни разу ещё такой ошибки не встречал ...
2 Александр Яшин: Как ставили лазарь в школном линуксе то? Что то вы криво его поставили ...
А ещё поставьте себе свежий школьный линукс.
iso можно взять здесь:
ftp://ftp.altlinux.ru/pub/distributions ... so/school/
Проблема в не выявленных зависимостях вида requires в rpm. А вот что именно надо мне не понятно. Ни разу ещё такой ошибки не встречал ...
2 Александр Яшин: Как ставили лазарь в школном линуксе то? Что то вы криво его поставили ...
А ещё поставьте себе свежий школьный линукс.
iso можно взять здесь:
ftp://ftp.altlinux.ru/pub/distributions ... so/school/
-
Александр Яшин
- новенький
- Сообщения: 67
- Зарегистрирован: 21.11.2009 08:31:01
Re: Lazarus и School Linux Lite
Sorry!
При установке не отметил пункт "Образование". Если его отметить, Lazarus ставится автоматически.
Свежую версию, к сожалению, скачать не могу. У меня очень ограниченный Интернет.
Теперь у меня два вопроса.
1. При создании пустого проекта Lazarus автоматически создает Unit1, содержание которого следующее:
Я попробовал удалить весь этот код и написал просто:
Все откомпилировалось и выполнилось.
Вопрос: можно ли так делать. Если можно, то зачем весь этот длинный код. Если нельзя, то почему?
2. Нашел дистрибутив Ubunta 9.04 установил его. На первый взгляд он мне нравится больше. У меня есть rpm файлы fpc и Lazarus. А установить не получается. Пошарил по форуму, вроде нужны deb файлы. А что через rpm нельзя что ли?
Неужели придется скачивать deb-файлы?
При установке не отметил пункт "Образование". Если его отметить, Lazarus ставится автоматически.
Свежую версию, к сожалению, скачать не могу. У меня очень ограниченный Интернет.
Теперь у меня два вопроса.
1. При создании пустого проекта Lazarus автоматически создает Unit1, содержание которого следующее:
Код: Выделить всё
program Project1;
{$mode objfpc}{$H+}
uses
{$IFDEF UNIX}{$IFDEF UseCThreads}
cthreads,
{$ENDIF}{$ENDIF}
Classes, SysUtils, CustApp
{ you can add units after this };
type
{ TMyApplication }
TMyApplication = class(TCustomApplication)
protected
procedure DoRun; override;
public
constructor Create(TheOwner: TComponent); override;
destructor Destroy; override;
procedure WriteHelp; virtual;
end;
{ TMyApplication }
procedure TMyApplication.DoRun;
var
ErrorMsg: String;
begin
// quick check parameters
ErrorMsg:=CheckOptions('h','help');
if ErrorMsg<>'' then begin
ShowException(Exception.Create(ErrorMsg));
Terminate;
Exit;
end;
// parse parameters
if HasOption('h','help') then begin
WriteHelp;
Terminate;
Exit;
end;
{ add your program here }
// stop program loop
Terminate;
end;
constructor TMyApplication.Create(TheOwner: TComponent);
begin
inherited Create(TheOwner);
StopOnException:=True;
end;
destructor TMyApplication.Destroy;
begin
inherited Destroy;
end;
procedure TMyApplication.WriteHelp;
begin
{ add your help code here }
writeln('Usage: ',ExeName,' -h');
end;
var
Application: TMyApplication;
{$IFDEF WINDOWS}{$R project1.rc}{$ENDIF}
begin
Application:=TMyApplication.Create(nil);
Application.Title:='My Application';
Application.Run;
Application.Free;
end.
Я попробовал удалить весь этот код и написал просто:
Код: Выделить всё
program Project1;
uses Crt;
begin
writeln('Hello, World');
readkey;
end.Все откомпилировалось и выполнилось.
Вопрос: можно ли так делать. Если можно, то зачем весь этот длинный код. Если нельзя, то почему?
2. Нашел дистрибутив Ubunta 9.04 установил его. На первый взгляд он мне нравится больше. У меня есть rpm файлы fpc и Lazarus. А установить не получается. Пошарил по форуму, вроде нужны deb файлы. А что через rpm нельзя что ли?
Неужели придется скачивать deb-файлы?
-
serg_iv
- постоялец
- Сообщения: 276
- Зарегистрирован: 15.10.2005 18:45:46
- Откуда: Миасс
- Контактная информация:
Re: Lazarus и School Linux Lite
Нашел дистрибутив Ubunta 9.04 установил его. На первый взгляд он мне нравится больше. У меня есть rpm файлы fpc и Lazarus. А установить не получается. Пошарил по форуму, вроде нужны deb файлы. А что через rpm нельзя что ли?
Неужели придется скачивать deb-файлы?
Когда то пробовал конвертировать rpm в deb. Но установка закончипась неудачно.
Через Synaptic ставится, но в Бубунте 9.10 не установился по зависимостям fp-units, часа два думал куда подевалась Libс.
Re: Lazarus и School Linux Lite
Александр Яшин писал(а):Нашел дистрибутив Ubunta 9.04 установил его. На первый взгляд он мне нравится больше. У меня есть rpm файлы fpc и Lazarus. А установить не получается. Пошарил по форуму, вроде нужны deb файлы. А что через rpm нельзя что ли?
Неужели придется скачивать deb-файлы?
Лучше скачать deb, так как модификация rpm в deb c помощью alien ничего путного не дает. Наилучший способ установки под Ubuntu обсуждается Lazarus в Ubuntu
- Astralis
- новенький
- Сообщения: 45
- Зарегистрирован: 06.06.2007 20:33:05
- Откуда: Tvercity-Annet
- Контактная информация:
Re: Lazarus и School Linux Lite
Код: Выделить всё
program Project1;
uses Crt;
begin
writeln('Hello, World');
readkey;
end.
Все откомпилировалось и выполнилось.
ошибка в компоновке связана с неправильной сборкой LCL на Altlinux 4.0 она возникает только при попытке собрать графические приложения.
вы можете заново пересобрать весь LCL, но лучше скачать уже пятую платформу, где данного недостатка уже нет, да и версия новее.
Re: Lazarus и School Linux Lite
2 Александр Яшин:
ещё раз перечитал ваше сообщение. Это бага https://bugzilla.altlinux.org/show_bug.cgi?id=17531, которая давно исправлена. Либо обновитесь до бранча школьного линукса 2007-ого года, либо обновитесь до бранча 4.1, а ещё лучше обновитесь до бранча p5.
2 Astralis: не верно, проблема не в неправильной сборке LCL, а в отсутствии нужной зависимости в пакете, которая решилоась установкой kdevelop'а. А точнее не хватки glibc-devel. Ну а теперь объясните, как "ошибка в компоновке связана с неправильной сборкой LCL"?
ещё раз перечитал ваше сообщение. Это бага https://bugzilla.altlinux.org/show_bug.cgi?id=17531, которая давно исправлена. Либо обновитесь до бранча школьного линукса 2007-ого года, либо обновитесь до бранча 4.1, а ещё лучше обновитесь до бранча p5.
2 Astralis: не верно, проблема не в неправильной сборке LCL, а в отсутствии нужной зависимости в пакете, которая решилоась установкой kdevelop'а. А точнее не хватки glibc-devel. Ну а теперь объясните, как "ошибка в компоновке связана с неправильной сборкой LCL"?
-
Александр Яшин
- новенький
- Сообщения: 67
- Зарегистрирован: 21.11.2009 08:31:01
Re: Lazarus и School Linux Lite
Если при установке школьного лазаруса отметить пункт "Установить пакет "Образование", то Лазарус ставится автоматически и в этом случае такого бага нет. Но у меня был еще вопрос (наверное не очень понятно сформулировал).
При создании консольного приложения Лазарус автоматически создает достаточно длинный код, который я приводил. Вопрос был в том правильно ли будет, если этот код вообще убрать, а написать например, так:
Ведь программа нормально компилируется и выполняется.
При создании консольного приложения Лазарус автоматически создает достаточно длинный код, который я приводил. Вопрос был в том правильно ли будет, если этот код вообще убрать, а написать например, так:
Код: Выделить всё
program Project1;
uses Crt;
begin
writeln('Hello, World');
readkey;
end.Ведь программа нормально компилируется и выполняется.
Re: Lazarus и School Linux Lite
Я думаю правильно в данном случае использовать fpc, а не lazarus для создания консольного приложения.
На фига тянуть графику в консоль?
Если "слишком навороченное" консольное, использующие ООП в своей основе то, то что создаёт лазарь думаю оставить как есть.
А для простых вещей чистый fpc. Можно для разработки использовать fp - IDE fpc, но ни текcт русcкий там не введёшь, ни комментарий по русски не напишешь (но это уже отдельная тема).
В bp я спокойно создавал программы использующие тоько ООП и ни каких проблем отсуствия визуализации аля Delphi не испытывал.
На фига тянуть графику в консоль?
Если "слишком навороченное" консольное, использующие ООП в своей основе то, то что создаёт лазарь думаю оставить как есть.
А для простых вещей чистый fpc. Можно для разработки использовать fp - IDE fpc, но ни текcт русcкий там не введёшь, ни комментарий по русски не напишешь (но это уже отдельная тема).
В bp я спокойно создавал программы использующие тоько ООП и ни каких проблем отсуствия визуализации аля Delphi не испытывал.
-
Александр Яшин
- новенький
- Сообщения: 67
- Зарегистрирован: 21.11.2009 08:31:01
Re: Lazarus и School Linux Lite
IDE FPC мне не нравится. Раз Lazarus позволяет создавать консольные приложения, то, наверное, можно все же так как я, при условии, что не применяешь ООП.
Re: Lazarus и School Linux Lite
Хозяин барин ... 
Раз у вас получилось из лазаря сделать прогу, не использующию ООП, то значит можно.
Просто лазарь создаёт консольное приложение, на основе шаблона, где программа это объект TApplication, от сюда всё остальное и тянется.
Раз у вас получилось из лазаря сделать прогу, не использующию ООП, то значит можно.
Просто лазарь создаёт консольное приложение, на основе шаблона, где программа это объект TApplication, от сюда всё остальное и тянется.
-
Александр Яшин
- новенький
- Сообщения: 67
- Зарегистрирован: 21.11.2009 08:31:01
Re: Lazarus и School Linux Lite
Типа программы Hello, что я приводил в качестве примера. Мы ООП еще не проходили, хотя я о нем слышал.
Re: Lazarus и School Linux Lite
Вы в школе учитесь или в ВУЗ'е/СУЗ'е?
- Astralis
- новенький
- Сообщения: 45
- Зарегистрирован: 06.06.2007 20:33:05
- Откуда: Tvercity-Annet
- Контактная информация:
Re: Lazarus и School Linux Lite
не верно, проблема не в неправильной сборке LCL, а в отсутствии нужной зависимости в пакете, которая решилоась установкой kdevelop'а. А точнее не хватки glibc-devel. Ну а теперь объясните, как "ошибка в компоновке связана с неправильной сборкой LCL"?
Это одно и тоже, потому что собрать LCL без glibc-devel, который указан в BuildRequires, все равно не удастся. Просто при повторная сборка быстрее и очевиднее нашла бы проблему.
