Sign in Join
Wiki copytemporary

Lazarus Packages/sk: what changed

Revision 0 to 1. Removed lines have a minus sign; added lines have a plus sign.

Title: Lazarus Packages/sk

OldNewLine
1+# Prehlad balíkového systému Lazarus
2+
3+## Čo je balík v Lazaruse?
4+
5+Balíček v Lazarus je zoznam unít a komponentov, ktoré obsahujú informácie o tom ako majú byť skompilované a ako môžu byť použité inými balíkmi, alebo IDE. Oproti Delphi, balíky niesu obmedzené len na knižnice a môžu byť nezávislé od operačného systému. (Delphi: [[packages|Balíček v Delphi]] je špecialne skompilovaná knižnica používaná aplikáciami, prostredím alebo obomi. Balíky Delphi vyžadujú od prekladača špeciálnu funkciu ktorú fpc v tomto momente ešte nemá a ktorá je závislá na operačnom systéme).
6+
7+Momentálne podporuje prekladač [[Free Pascal]] len statické balíky. Kvôli tomu musíte skompilovať a reštartovať prostredie pri každej inštalácií alebo odinštalácií balíka.
8+
9+Balík lazarusu je identifikovaný menom a verziou.
10+
11+## FAQ
12+
13+**Otázka**: Potrebujem inštalovať balíček?
14+
15+**Odpoveď**: Balíček potrebujete inštalovať len, ak obsahuje položky pre dobu návrhu (*designtime*), ako komponenty pre Paletu komponentov IDE. Ak tieto položky nepoužívate, balíček inštalovať nepotrebujete. Ak chcete len použiť balíček vo svojom projekte, neinštalujte ho.
16+
17+**Otázka**: Nainštaloval som balíček, ale IDE nevie nájsť jednotky
18+
19+**Odpoveď**: Inštalácia balíčka znamená, že balíček je integrovaný do IDE, nei do Vášho projektu. To sú dve odlišné veci. Pre použitie balíčka vo svojom projekte, použite **Project -\> Project Inspector -\> Add -\> New Requirement** a odinštalujte balíček, ak neobsahuje žiadne rozšírenie IDE.
20+
21+## Rýchly štart
22+
23+Aby ste videli balíkový systém v akcií urobte následovné:
24+
25+Vytváranie nového balíku:
26+
27+- **File-\>New... -\> Package -\> Standard Package**
28+- Otvorí sa editor balíkov
29+- Použite tlačidlo Save hore vlavo.
30+- V závislosti od Vášho nastavenia 'naming' vo Voľbách prostredia sa vás IDE opýta, či má uložiť súbor s malými písmenami. Stlačte Áno.
31+
32+Gratulujem: Práve ste vytvorili svôj prvý balík.
33+
34+Pridávanie nového komponentu:
35+
36+- Použite tlačidlo **Add -\> New component**
37+- Vyberte si komponent v zozname predkov typu combobox. Napr.: TBevel.
38+- Kliknite OK
39+- Súbor bude pridaný do balíčka a otvorený v editore.
40+- Nainštalujte balík pomocou tlačidla 'install' na vrchu editora balíkov.
41+- Lazarus uloží balík a spýta sa či má byť IDE prebudované. Sltačte Áno.
42+- Balíky sú staticky linkované takže je potrebný reštart IDE.
43+- Reštartujte Lazarus a pozrite či máte svoj komponent v lište komponentov (Napr.: TBevel1 bude na 'Additional' stránke).
44+
45+Gratulujem: Práve ste nainštalovaly svoj prvý balík so svojim prvým komponentom.
46+
47+## Položky menu IDE pre balíčky
48+
49+File-\>New... -\> Package -\> Standard Package
50+
51+- vytvorí nový balíček
52+
53+Project -\> Project Inspector
54+
55+- zobrazuje, ktoré balíčky sú vyžadované projektom, ktorý je práve otvorený
56+- môžete tu pridať/odobrať závislosti
57+
58+Run -\> Compiler options -\> Inherited
59+
60+- zobrazuje voľby prekladača, a z ktorého balíčka sú zdedené
61+
62+Components -\>
63+
64+- **Open loaded package**: dialóg zobrazujúci všetky otvorené balíčky a ich stav
65+- **Open package file (.lpk)**: otvoriť súbor .lpk
66+- **Open package of current unit**: otvoriť súbor .lpk, ktorý patrí súboru v Editore zdrojového kódu
67+- **Open recent package**: otvoriť súbor naposledy otvoreného balíčka (súbor .lpk)
68+- **Add active unit to a package**: pridá jednotku v Editore zdrojového kódu do balíčka
69+- **Package Graph**: Diagram balíčkov, zobrazuje všetky otvorené balíčky a ich závislosti
70+- **Configure installed packages**: upraviť zoznam balíčkov nainštalovaných v IDE - nainštalovať/odinštalovať viacero balíčkov naraz
71+
72+Project -\> Project Inspector
73+
74+- tu možno upravovať všetky balíčky použité projektom
75+
76+## Teória
77+
78+Každý balíček Lazarus má súbor .lpk. Balíček je identifikovaný svojim menom a verziou. Meno musí súhlasiť s menom súboru .lpk. Napríklad:
79+
80+`Name: Package1, Version: 1.0, Filename: /home/.../package1.lpk.`
81+
82+- IDE automaticky vytvára hlavný súbor zdrojového kódu (package1.pas). Súbor .lpk obsahuje informácie o vyžadovaných balíčkoch, použitých súboroch, ako ich kompilovať a čo je potrebné pre použitie balíčka inými balíčkami/projektmi. Adresár, v ktorom sa nachádza súbor .lpk, je volaný "adresár balíčka".
83+- IDE udržiava zoznam všetkých balíčkových súborov (\<config directory\>/packagelinks.xml). Vždy keď otvoríte balíček v IDE, je pridaný do tohoto zoznamu. Keď otvoríte balíček, IDE automaticky otvorí všetky vyžadované balíčky pomocou tohoto zoznamu.
84+- Tri základné balíčky: FCL, LCL a SynEdit, sú súčasťou IDE a tak sú vytvorené automaticky, len na čítanie a nemajú súbor .lpk.
85+- Bežné balíčky majú zdrojový adresár s jednotkami Pascalu. Normálne je tam aj súbor .lpk. Balíček má aj výstupný adresár, predvolene to je podadresár 'lib/\$(TargetCPU)-\$(TargetOS)/' a adresári balíčka.
86+- Pred samotnou kompiláciou balíčka IDE skontroluje všetky vyžadované balíčky a ak ich je potrebné aktualizovať a majú nastavený príznak autoaktualizácie, sú najprv preložené. Potom IDE vytvorí hlavný súbor zdrojového kódu, ak bol súbor .lpk napríklad package1.lpk, potom hlavný súbor zdrojového kódu bude package1.pas. Tento súbor obsahuje v sekcii uses všetky jednotky a procedúru 'Register', ktorá je volaná v sekcii intialization.
87+
88+Napríklad
89+
90+`This file was automatically created by Lazarus. Do not edit!`\
91+`This source is only used to compile and install`\
92+`the package GTKOpenGL 1.0.`\
93+` unit GTKOpenGL;`\
94+`interface`\
95+`uses GTKGLArea, GTKGLArea_Int, NVGL, NVGLX, LazarusPackageIntf;`\
96+`implementation`\
97+`procedure Register;`\
98+`begin`\
99+`  RegisterUnit('GTKGLArea', @GTKGLArea.Register);`\
100+`end;`\
101+`initialization`\
102+`  RegisterPackage('GTKOpenGL', @Register)`\
103+`end.`
104+
105+- Potom je volaný prekladač a balíček je preložený do výstupného adresára.
106+- Po úspešnom preklade je vytvorený stavový súbor. Stavový súbor je vložený do výstupného adresára, volá sa \<menobalíčka\>.compiled a obsahuje informácie o tom, ako bol balíček preložený. Tento stavový súbor je použitý v IDE pre kontrolu či jepotrebná aktualizácia.
107+
108+Príklad: gtkopengl.compiled:
109+
110+`<?xml version="1.0"?>`\
111+`<CONFIG>`\
112+`  <Compiler Value="/usr/bin/ppc386" Date="781388725"/>`\
113+`  <Params Value=" -Rintel -S2cgi -CD -Ch8000000 -OG1p1`\
114+`    -Tlinux -gl -vewnhi -l -Fu../../../lcl/units`\
115+`    -Fu../../../lcl/units/gtk -Fu../../../packager/units`\
116+`    -Fu. -FElib/ gtkopengl.pas"/>`\
117+`</CONFIG>`
118+
119+- IDE otvára všetky potrebné balíčky automaticky. To znamená, že otvára všetky nainštalované balíčky, všetky balíčky označené pre inštaláciu (auto install), všetky balíčky s otvoreným Editor, všetky balíčky vyžadované projektom a všetky balíčky vyžadované inými balíčkami. Nepotebné balíčky sú automaticky uvoľnené, keď má IDE trochu času.
120+- IDE nikdy neotvára dva balíčky s rovnakým menom naraz. Keď používateľ otvorí iný balíček s rovnakým menom ako má už otvorený balíček, IDE sa spýta na jeho nahradenie.
121+- IDE spravuje dve samostatné množiny balíčkov: **nainštalované** balíčky a **automaticky nainštalované** balíčky. Automaticky nainštalované balíčky budú pripojené k IDE pri nasledujúcom preklade IDE. Na to si vytvára v konfiguračnom adresári dva nové súbory: staticpackages.inc a idemake.cfg. Potom pre preloženia seba samého volá:
122+
123+`make ide OPT=@/path/to/your/config/idemake.cfg`
124+
125+## Pokyny a tipy
126+
127+Prosím, pridajte každý pokyn, či tip tu.
128+
129+- pre premenovanie balíčka použite 'Save as'.
130+
131+Príklad
132+
133+Ako príklad použijem tiOPF. tiOPF má takúto štruktúru adresára, keďže je preložený pre FPC, Delphi 5-7, D2005 a D2006.
134+
135+`Source                <= úplná cesta \Programming\3rdParty\tiOPF\Source`\
136+` \Compilers`\
137+`    \Delphi7          <= tu je balíček pre Delphi 7`\
138+`    \D2005`\
139+`    \FPC              <= tu je tiOPF.lpk`\
140+` \Core                <= súbory základných jednotiek`\
141+` \Options             <= súbory voliteľných jendotiek, pre dodatočné funkcie`\
142+` \GUI`
143+
144+Pre použitie tohoto príkladu som pridal do "Options - Usage - Units" nasledujúce cesty:
145+
146+`"$(PkgOutDir);..\..\Core;..\..\Options;..\..\GUI" `
147+
148+ktoré budú pridané do každého projektu používajúceho tento balíček.
149+
150+## Pridanie existujúcej komponenty do balíčka
151+
152+Pokiaľ chcete pridat súbor obsahujúci nejakú komponentu do existujúceho balíčka, postupujte takto:
153+
154+- Otvorte súbor balíčka
155+- Kliknite na 'Add', aby ste pridali novú položku do balíčka
156+- Vyberte zalóžku v okne 'Add to package'
157+- Vyberte súbor ktorý chcete pridať
158+- Zaškrtnite políčko 'Has Register procedure' v prípade, že súbor obsahuje registrovaciu procedúru (Register). Ak toto nespravíte, komponenta sa nezobrazí na palete komponentov.
159+- Kliknite 'Add unit'
160+- Prekompilujte a nainštalujte balíček.
161+
162+To je všetko - komponenta by teraz mala byť na palete komponentov.
163+
164+## Registrovacia procedúra Register
165+
166+Aby sa mohla komponenta zobraziť na palete komponentov, musí byť zaregistrovaná v Lazarovi. Toto sa deje v registrovacej procedúre. Táto procedúra sa musí objaviť v interface sekcii unity a musí obsahovať jeden alebo viacej volaní RegisterComponent, takisto tiež parametre inštalácie a editor pre komponenty.
167+
168+V balíčku sa môže nachádzať viac ako jedna procedúra Register. V editore balíčko (Package Editor) musí Lazarovi povedať, ktoré unity majú procedúru Register, aby vedel, ktorú zavolať po nainštalovaní balíčka.
169+
170+Sú dva spôsoby, ako označiť unitu obsahujúci procedúru Register:
171+
172+- Môžete tak spraviť pri pridávaní unít do balíčka (pozri tiež Pridanie existujúcej komponenty do balíčka)
173+- Alebo môžete vybrať unitu v nastavení balíčka a zaškrtnúť políčko "Register" v okne Details
174+
175+Nezabudnite prekompilovať a nainštalovať balík po zmene parametrov.
176+
177+## Spolupracovníci a komentáre
178+
179+This page has been converted from the epikwiki [version](http://lazarus-ccr.sourceforge.net/index.php?wiki=LazarusPackages).
180+
181+- dokončenie prekladu a aktualizácia z originálu --Komunista 18:45, 2 January 2008 (CET)
182+
183+---
184+*From the Free Pascal wiki, page "Lazarus Packages/sk", as it stood on 2008-12-29 after a change by Adamm, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*

Back to history