Hallo!
Jede fpc-Unit besitzt eine *.ppu Datei und eine *.o Datei. Kann die *.o Datei auch unabhängig von der *.ppu Datei verwendet werden. Zum Beispiel, um neue Bibliotheken zusammen zu stellen?
Wenn das funktionieren würde, könnte ich, wie schon gesagt, den Code der Units auch in denderen neu zusammenzustellenden Bibliotheken verwenden. Ich frage aber liber vorher mal, bevor ich hier Zeit investiere, nur um am Ende festzustellen, daß die *.ppu Datei doch zwingend mit benötigt wird.
.
Freepascal -> *.ppu versus *.o -> *.o unabhängig von *.ppu
-
- Beiträge: 199
- Registriert: Di 20. Okt 2015, 23:13
-
- Lazarusforum e. V.
- Beiträge: 3177
- Registriert: Di 22. Jul 2008, 19:27
- OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
- CPU-Target: 32bit x86 armhf
- Wohnort: Köln
- Kontaktdaten:
Re: Freepascal -> *.ppu versus *.o -> *.o unabhängig von *.p
Die *.o-Datei ist Compilierunabhängier Maschinen-Code. Diese Dateien könntest du prinzipiell auch in C-Programme hineinlinken; hier brauchst du dann aber eine C-Header-Datei, die die vorhandenen Funtkionen bekannt gibt. In den *.ppu-Dateien speichert der FPC den Interface-Teil der Units, damit er diese verlinken kann; Die *.ppu-Dateien sind also Header-Dateien auf Compiler-Ebene.fpGUIcoder hat geschrieben:Jede fpc-Unit besitzt eine *.ppu Datei und eine *.o Datei. Kann die *.o Datei auch unabhängig von der *.ppu Datei verwendet werden. Zum Beispiel, um neue Bibliotheken zusammen zu stellen?
Wenn das funktionieren würde, könnte ich, wie schon gesagt, den Code der Units auch in denderen neu zusammenzustellenden Bibliotheken verwenden. Ich frage aber liber vorher mal, bevor ich hier Zeit investiere, nur um am Ende festzustellen, daß die *.ppu Datei doch zwingend mit benötigt wird.
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
-
- Beiträge: 1102
- Registriert: Di 5. Aug 2008, 09:37
- OS, Lazarus, FPC: Windows ,Linux,FreeBSD,Dos (L trunk FPC trunk)
- CPU-Target: 32/64,PPC(+64), ARM
- Wohnort: Eindhoven (Niederlande)
Re: Freepascal -> *.ppu versus *.o -> *.o unabhängig von *.p
Was Socke sagt stimmt, aber die Namen der Prozeduren und Variabelen in FPC units sind standard Gemangelt (mangled). Und die Ermanglung kann wie auf C++ von Version bis Version anders sein.
Man soll also mindestens die Prozeduren die man extern nutzen will mit public alias oder so eine entmangelnde Namen geben.
Man soll also mindestens die Prozeduren die man extern nutzen will mit public alias oder so eine entmangelnde Namen geben.