Klasa TBitmap w Lazarusie

0

W Lazarusie jestem nowy; stworzyłem nową aplikację konsolową za pomocą Plik->Nowy->Program.
Jak dodaję moduł Graphics, to nie może go odnaleźć.
Co należy ustawić/zmienić aby można było korzystać z tego modułu (dokładniej: potrzebny jest mi dostęp do klasy TBitmap).

1

Zamiast

uses 
  Graphics;

daj

uses
  Graphics in 'C:\lazarus\lcl\graphics.pp';
0

Wtedy doczepia się includowania tego:

{$I graphicsobject.inc}
{$I graphic.inc}
{$I picture.inc}
{$I sharedimage.inc}
{$I sharedrasterimage.inc}
{$I sharedcustombitmap.inc}
{$I rasterimage.inc}
{$I custombitmap.inc}
{$I bitmapcanvas.inc}
{$I pen.inc}
{$I brush.inc}
{$I region.inc}
{$I font.inc}
{$I canvas.inc}
{$I pixmap.inc}
{$I png.inc}
{$I pnm.inc}
{$I jpegimage.inc}
{$I cursorimage.inc}
{$I icon.inc}
{$I icnsicon.inc}
{$I fpimagebitmap.inc}
{$I bitmap.inc}
{$I tiffimage.inc}
{$I gifimage.inc}   

Tzn.nie może ich odnaleźć.

2

daj
uses
Graphics in 'C:\lazarus\lcl\graphics.pp';

Arr, nie obchodź problemu!

Dodaj sobie w inspektorze projektu LCL (albo jakaś jego część) i będzie.

0
-123oho napisał(a):

daj
uses
Graphics in 'C:\lazarus\lcl\graphics.pp';

Arr, nie obchodź problemu!

Dodaj sobie w inspektorze projektu LCL (albo jakaś jego część) i będzie.

Próbowałem.
Znalazło moduł Graphics, ale brakowało mu m.in.

Undefined symbol: WSRegisterCustomImageList
Undefined symbol: WSRegisterMenuItem
Undefined symbol: WSRegisterMenu
  • i dziesiątki więcej *
    Dodałem moduł Interfaces; problem niby rozwiązany, ale aplikacja zajmuje wtedy 15 MB :|
1

Dodałem moduł Interfaces; problem niby rozwiązany, ale aplikacja zajmuje wtedy 15 MB

strip --strip-all project1.exe i ile wtedy ma. Pewnie po prostu tyle symboli debugujących ew. wyłączone smartlinking.

http://lists.lazarus.freepascal.org/pipermail/lazarus/2009-May/043306.html
Chyba nie ma innego rozwiązania niż dodanie Interfaces.

0

Po wykonaniu strip zajmuje już ~1.45 MB.


Jest inny sposób, czy za każdym razem będę musiał wykonywać to `strip`?
1

Jest inny sposób, czy za każdym razem będę musiał wykonywać to strip?

Ja tam zazwyczaj osiągam rozmiary 12mb bez stripa i dzięki temu dobrze się debugguje. Jest oczywiście opcja żeby zmusić kompilator żeby nie generował symboli debugowania (albo zmniejszył ich ilość), żeby całkowicie wywalić symbole debuggujące jest opcja -Xs (generalnie popatrz sobie na zakładkę 'łączenie' w opcjach projektu, znajdziesz coś dla siebie pewnie).

Po wykonaniu strip zajmuje już ~1.45 MB.

Możesz jeszcze zobaczyć czy pomoże ci -CX i -XX. Mi się udawało dochodzić do 1mb w przypadku pełnej aplikacji z Formami etc. i ~600Kb z UPXem.

1 użytkowników online, w tym zalogowanych: 0, gości: 1