[Lazarus] converted Delphi unit in a lazarus package

Mattias Gaertner nc-gaertnma at netcologne.de
Sat Jul 9 12:20:01 CEST 2011


On Sat, 09 Jul 2011 12:01:32 +0200
John Landmesser <JohnML at online.de> wrote:

>[...]
> >> Kann die Datei "findfile1.pas" nicht finden.
> >> Falls sie zum Projekt gehört, prüfen Sie den Suchpfad in der Startseite von
> >> Projekt->Compilereinstellungen ... unter Andere Unit-Dateien. Wenn die
> >> Datei zu einem Package gehört, müssen dessen Einstellungen geprüft
> >> werden. Falls die Datei zu Lazarus gehört, muß sichergestellt sein, daß
> >> die IDE sauber kompiliert ist. Gehört die Datei zu FPC muß die fpc.cfg
> >> überprüft werden. Bei Unklarheiten hilft der Button Test unter Projekt
> >> ->  Compilereinstellungen ... ->  Test
> >>
> >> In Package settings, other units:
> >> $(PkgOutDir);findfile
> > The dependent packages/projects only need the $(PkgOutDir). Change the
> > compiler paths of the package instead.
> >
> >
> 
> New in Package settings, other units:
> $(PkgOutDir)

Set the 'Package Options / Usage' to default values:
Package Options / Usage / Unit := $(PkgOutDir)
Package Options / Usage / all other := leave empty

Add the 'findfile' directory to
Compiler options / Paths / Other Unit Files 

Remove the 'findfile' directory from any other search path you have
altered.

When you add an unit to the package the IDE normally asks if it
should do this for you.


> but no success, same error message
> 
> I'll try to write a clean new lazarus unit findfile1 an try again.
> 
> p.s.
> The button Test in package settings gives the following hint:
> ANMERKUNG: using config file /etc/fpc.cfg
> WARNUNG: ppu ist zweimal vorhanden: /usr/lib/fpc/2.4.2/units/i386-linux/httpd20/httpd.ppu, /usr/lib/fpc/2.4.2/units/i386-linux/httpd13/httpd.ppu
> WARNUNG: ppu ist zweimal vorhanden: /usr/lib/fpc/2.4.2/units/i386-linux/httpd22/apriconv.ppu, /usr/lib/fpc/2.4.2/units/i386-linux/httpd20/apriconv.ppu
> WARNUNG: ppu ist zweimal vorhanden: /usr/lib/fpc/2.4.2/units/i386-linux/httpd22/apr.ppu, /usr/lib/fpc/2.4.2/units/i386-linux/httpd20/apr.ppu
> WARNUNG: ppu ist zweimal vorhanden: /usr/lib/fpc/2.4.2/units/i386-linux/httpd22/aprutil.ppu, /usr/lib/fpc/2.4.2/units/i386-linux/httpd20/aprutil.ppu
> WARNUNG: ppu ist zweimal vorhanden: /usr/lib/fpc/2.4.2/units/i386-linux/httpd22/httpd.ppu, /usr/lib/fpc/2.4.2/units/i386-linux/httpd20/httpd.ppu

The aboves are only warnings. If you don't use these units you can
ignore them.
BTW, I recommend to use 2.4.4 with Lazarus svn trunk.

> WARNUNG: Das Ausgabeverzeichnis von mycomps 0.0 ist im Unit-Suchpfad von mycomps 0.0 aufgeführt.Das Ausgabeverzeichnis sollte ein eigenes Verzeichnis sein und keine Quelldateien enthalten.
> 
> That's my first package in lazarus so i have to think about last WARNUNG

Yes.
Maybe this helps:
A normal package has some sources and creates ppu/o files that
are put into the output directory. The project is compiled
separately and only needs the ppu files.


> 
> But even if i insert findfile1 to an existing, working package ( not from me! ) i get this  error message, strange !

Use Run / Clean up build files.

 
> Uh, its saturday and i have to get something to eat for next week :-))
> 
> Do we have another object TFileFind in a standard lazarus IDE ?

You can find out with Search / Find in Files or View / Codebrowser.

Mattias




More information about the Lazarus mailing list