Lazarus
Lazarus 1.0
Beküldte falu - 2012, szeptember 4 - 09:41A Lazarus fejlesztőcsapata bejelentette a többplatformos fejlesztő eszköz 1.0-ás változatát.
Lazarus SVN + FreePascal 2.6.0 Ubuntu Linuxon
Beküldte falu - 2012, július 22 - 08:22Volt itt már egy hasonló post, de azóta megjelent a FreePascal 2.6.0. Ezzel viszont eddig nem tudtam lefordítani a Lazarust. A programjaim simán mentek az 2.4.4-es verzióval is, úgyhogy nem nagyon foglalkoztam vele. De azért furdalt a kíváncsiság, hogy vajon mi lehet a baj, miért nem tudom a 2.6.0-val is lefordítani a Lazarus forráskódját? Mindig ezt a hibaüzenetet kaptam:
Fatal: Can't find unit process used by RegisterFCL
Fatal: Compilation aborted
make[1]: *** [fcllaz.ppu] Error 1
make[1]: Leaving directory `/home/user/lazarus/packager/registration'
make: *** [registration] Error 2
Nem találja a process unitot, pedig fel van telepítve: /usr/lib/fpc/2.6.0/units/i386-linux/fcl-process/process.ppu és a forrás is: /usr/share/fpcsrc/2.6.0/packages/fcl-process/src/process.pp. A megoldás kicsit lejjebb, most kezdjük nulláról:
Lazarus 0.9.30
Beküldte falu - 2011, április 1 - 13:08A Lazarus fejlesztőcsapata bejelentette a 2.4.2-es FreePascalon alapuló, nyílt forráskódú fejlesztőrendszer 0.9.30-as változatát.
Ez a kiadás SourceForge szervereiről tölthető le: sourceforge.net/projects/lazarus/files
Minimális rendszer követelmények:
Lazarus URL rövidítés
Beküldte falu - 2010, november 30 - 11:11Lazarus Build profilok
Beküldte falu - 2010, november 17 - 13:36A Lazarus képes önmagát lefordítani, a fordítás beállításait a Tools/Configure "Build Lazarus..." menüben tehetjük meg. A párbeszédablakban beállíthatók, hogy fejlesztő környezet mely részei, milyen paraméterekkel legyenek lefordítva. A korábbi beállító ablak eléggé átláthatatlan volt, hogy finoman fogalmazzak akkor a használhatóság tekintetében erős kihívásokkal küszködött.
Lazarus - Delphi konverter fejlesztések
Beküldte falu - 2010, szeptember 28 - 09:57A Lazarus Delphi konvertere az elmúlt pár hónapban sokat fejlődött. A fő funkciók implementálásra kerültek, a legtöbb beállítás párbeszédablakon keresztül konfigurálható. Minden beállítás a Lazarus konfigurációs könyvtárában, a delphiconverter.xml fájlban kerül tárolásra.
A beállító ablak:
A beállításokról bővebben ezen a wiki oldalon lehet olvasni: Delphi Converter in Lazarus
Néhány főbb jellemző:
Lazarus 0.9.29 fejlesztői verzió Ubuntu Linuxon
Beküldte falu - 2010, augusztus 30 - 18:29A Lazarus 0.9.28-as stabil kiadása már egy kicsit öregnek mondható (2009. októberi) és azóta számos újdonság került a fejlesztői 0.9.29-es verzióba. Ha Ubuntu Linuxon szeretnénk használni a Lazarus legfrissebb fejlesztői változatát, akkor csak a szintén nem túl friss, 2010.06.21-i változatból vannak deb csomagok. Ha ezeket letöltjük, majd telepítjük, akkor a fordító nem fog működni. Valami baja van az erőforrások fordításával.
Ahelyett, hogy kibogoztam volna, hogy mi lehet a hiba oka, inkább valami más megoldást találtam: letöltöm a Lazarus forráskódját, majd fordítsok belőle magunknak futtatható fejlesztő környezetet.
Lazarus telepítés Mac OS X-re
Beküldte falu - 2010, május 19 - 11:20A következő néhány egyszerű lépéssel telepíthető a Lazarus Mac OS X-re. A telepítéshez Mac OS X 10.6.2 szükséges.
-
A Mac OS X CD-ről telepítsük a teljes XCODE-ot, vagy töltsük le az Apple oldaláról.
Lazarus 0.9.30 - Erőforrás kezelés
Beküldte falu - 2010, február 14 - 08:06A Lazarus következő verziójában megjelenő egyik legnagyobb változás az a módosított erőforrás kezelés lesz. A fő probléma a "régi" erőforrás kezeléssel az volt, hogy minden .lfm streamet egy .lrs fájlból be kellett illeszteni a unit initialization
részébe. Mi a rossz ebben?
- Először is az .lrs fájlokat is tárolni kell a projektben, ami elég tárhely igényes.
- Második rossz dolog az
initialization
rész használata (az ebből a részből hívott utasítások a program indulásakor hajtódnak végre). Ha pl. 200 form van az alkalmazásban, akkor a program indulásakor kétszáz rutint kell végrehajtani. Ez nem túl jó dolog, ha a sebesség is számít. - Végül pár szó az erőforrásokhoz szükséges memóriáról és a memória lefoglalásának módjáról. Az .lrs erőforrások a program kódjában (amelyek induláskor végrehajtódnak) és
TList
osztálban egyaránt tárolva vannak. Tehát minden erőforrás kétszer van tárolva. Sőt ha újabb erőforrást akarunk hozzáadni aTList
-hez, akkor az összes erőforrás memóriáját újra le kell foglalni:TList.Grow
Ezek a problémák tökéletesen megoldhatók az FPC 2.4.0 bevezetett natív erőforrás kezeléssel. Az FPC 2.4.0-s változatától kezdve lehetőség van a form erőforrások használatára az {$R *.lfm}
direktíva használatával. Természetesen nincs szükség az .lrs fájlok tárolására és az initialization
részre, valamint minden erőforrást is csak egyszer kell tárolni.
Mivel az erőforrás kezelésnek ezen módja sokkal hatékonyabb, a Lazarus fejlesztői úgy döntöttek, hogy ez legyen az alapértelmezett erőforrás kezelés. Természetesen az .lrs fájlok továbbra is használhatók maradnak, valamint a felhasználó eldöntheti, hogy az erőforrások tárolásának melyik módját választja.
Még egy az erőforrásokat érintő változás történt az XP manifest, a verzió információ és a projekt ikon kezelésben. Eddig több mint 5 fájlra volt szükség ezeknek az erőforrásoknak a tárolásához: egy ikont tartalmazó .lrs fájl, egy a manifest fájlra hivatkozó .rc fájl, verzió infó és projekt ikon fájlok. A projekt könyvtár leginkább egy állatkertre hasonlított. Ezentúl már csak egy .res és egy ikon fájlra lesz szükség. A .res fájt az új FreePascal állítja elő az fcl-res csomag segítségével. Ez azt jelenti, hogy nem kell többé a windres-t használni. A .res fájl minden platformon használható, míg korábban az .rc csak Windowson, az .lrs pedig a többi platformon volt használható.
Figyelem: a {$ifdef windows}{$R you_project.rc}{$endif}
sort manuálisan kell kitörölni a az .lpr fájlból (ha van benne). Elképzelhető, hogy a jövőben készül erre automatikus megoldás.
Az új erőforrás kezelés előnyei tehát:
- Kevesebb szemét a projekt könyvtárban, kisebb méret
- Kisebb és gyorsabb programok (nincs szükség az
initialization
részre) - Kevesebb memória használat
- Egységes erőforrás kezelés minden platformon