Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Mi Jul 09, 2025 07:36

Foren-Übersicht » Programmierung » Einsteiger-Fragen
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 24 Beiträge ]  Gehe zu Seite Vorherige  1, 2
Autor Nachricht
 Betreff des Beitrags:
BeitragVerfasst: Mi Mai 27, 2009 17:10 
Offline
DGL Member
Benutzeravatar

Registriert: Do Sep 02, 2004 19:42
Beiträge: 4158
Programmiersprache: FreePascal, C++
Sorry, ich habe auf die sache mit den headern nicht geantwortet, weil ich dachte, dass es sich mit Lazarus vielleicht erledigt.

Die eleganteste Art, in Lazarus sowas mit Headern zu realisieren, ist sie in ein Package zu tun (und daher in den Suchpfad dieses Packages), dieses dann zu Speichern, Kompilieren und Installieren. Wann immer du die Header dann brauchst, gehst du einfach in den Project Inspector (findet sich im Project-Menü) und fügst das Paket als Abhängigkeit hinzu. Vielleicht geht das sogar automatisch, weiss ich gerade nicht (ich machs immer manuell).
Dann musst du nicht die projektspezifischen Suchpfade zuspammen sondern hast das alles schön in Ordnung ;).

Gruß Lord Horazont

_________________
If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung.
current projects: ManiacLab; aioxmpp
zombofant networkmy photostream
„Writing code is like writing poetry“ - source unknown


„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Mai 27, 2009 21:30 
Offline
DGL Member
Benutzeravatar

Registriert: Di Sep 20, 2005 13:18
Beiträge: 1054
Wohnort: Dresden
Programmiersprache: C, C++, Pascal, OPL
Hm, würde es sich da nicht anbieten so ein fertiges Package auf der Seite zum Download zu Verfügung zu stellen?

_________________
Denn wer nur schweigt, weil er Konflikte scheut, der macht Sachen, die er hinterher bereut.
Und das ist verkehrt, denn es ist nicht so schwer, jeden Tag zu tun als ob's der letzte wär’.
Und du schaust mich an und fragst ob ich das kann.
Und ich denk, ich werd' mich ändern irgendwann.

_________________Farin Urlaub - Bewegungslos


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Mai 28, 2009 10:52 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 05, 2002 10:35
Beiträge: 4234
Wohnort: Dortmund
Ein Package für einen Header? Also wenn die Packages in Lazarus nur ansatzweise so arbeiten wie in Delphi, dann ist ein Package schon mehr Aufwand. Zu mal die Packages vermutlich nicht mal kompatibel sein werden. Also Lazarus Linux/Lazarus Windows bzw Delphi/Lazarus. Und dann noch nicht mal FPC sondern wirklich nur Lazarus.

Das Einzige was man für einen Header oder irgendwelche anderen Units machen muss ist diese in die Uses Klauses mit einzubeziehen. Wenn in der IDE oder beim Kompiler ein globales Verzeichniss gesetzt ist, dann findet er die automatisch. Mehr gibts da nun wirklich nicht zu tun.

Wie das bei FreePascal geht hat Waran schon gesagt und bei Lazarus könnte man das wahrscheinlich in der IDE einstellen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Mai 28, 2009 11:51 
Offline
DGL Member
Benutzeravatar

Registriert: Di Sep 20, 2005 13:18
Beiträge: 1054
Wohnort: Dresden
Programmiersprache: C, C++, Pascal, OPL
Naja, ich meinte für jede beliebtere Kombo ein Package:
Linux, Windows, Lazarus, Delphi => das macht 4 Kombinationen. :-)

_________________
Denn wer nur schweigt, weil er Konflikte scheut, der macht Sachen, die er hinterher bereut.
Und das ist verkehrt, denn es ist nicht so schwer, jeden Tag zu tun als ob's der letzte wär’.
Und du schaust mich an und fragst ob ich das kann.
Und ich denk, ich werd' mich ändern irgendwann.

_________________Farin Urlaub - Bewegungslos


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Mai 28, 2009 17:31 
Offline
DGL Member
Benutzeravatar

Registriert: Do Sep 02, 2004 19:42
Beiträge: 4158
Programmiersprache: FreePascal, C++
Naja, unter Delphi ist das mit den Suchpfaden zugegebenermaßen etwas einfacher als unter Lazarus. Da passieren manchmal schon komische Dinge und das komfortabelste, was ich bisher gefunden habe, waren halt Packages. Und zu dem Package würde dann halt der komplette Lib-Ordner vom DGL gehören, sodass man das alles auf einen Schlag zur verfügung hat, wenn man das Package einbindet. Das bedeutet ja nicht, dass alle Units einkompiliert werden, aber dass sie halt von der IDE und vom Compiler gefunden werden.

Von der Packageinstallation unter Lazarus darf man scih nicht abschrecken lassen, selbst wenn man dabei die IDE neu kompiliert - das geht reibungslos und so einfach wie eine Packageinstallation bei Delphi - man sagt, Install, der sagt, er will die IDE neu kompilieren, man sagt okay, wartet nen paar Minuten (nur beim ersten mal, wenn erstmal alle Units kompiliert wurden, gehts jedes folgende Mal schneller) und hats installiert.

Gruß Lord Horazont

_________________
If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung.
current projects: ManiacLab; aioxmpp
zombofant networkmy photostream
„Writing code is like writing poetry“ - source unknown


„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Mai 29, 2009 18:15 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 05, 2002 10:35
Beiträge: 4234
Wohnort: Dortmund
@Lord Horazont: Aber im Endeffekt genügt es doch auch, wenn man dem Kompiler einen Suchpfad mitteilt oder? Wenn das in Lazarus schwieriger ist als ein Packet zu installieren und damit die IDE neu zu kompilieren ist meiner Meinung nach irgendwas falsch gelaufen.

Ziz hat geschrieben:
Naja, ich meinte für jede beliebtere Kombo ein Package:
Linux, Windows, Lazarus, Delphi => das macht 4 Kombinationen. :-)

Da bleibt mir nur übrig dir viel Spaß beim Erstellen zu wünschen. ;) Ich kann mir nämlich nicht vorstellen, dass jemand da so viel Sinn drin sieht um das freiwillig machen zu wollen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Mai 30, 2009 10:26 
Offline
DGL Member
Benutzeravatar

Registriert: Do Sep 02, 2004 19:42
Beiträge: 4158
Programmiersprache: FreePascal, C++
Klar, es ist einfacher, den Suchpfad hinzuzufügen. Aber dann sollte man auch einen Output-Pfad für Binaries hinzufügen (und sei es einfach nur das Projektverzeichniss), sonst hat man irgendwann das totale PPU-Chaos (sowas wie DCU). Und was passiert, wenn der FPC zwei PPUs zur selben Unit findet, ist einfach nur nervig. Fehlermeldung, kann nicht kompilieren, er findet eine Unit angeblich nicht, die aber da ist, und das zu debuggen ist grausam. Daher habe ich mir Packages angewöhnt, die gleich ein eigenes Ausgabeverzeichniss haben - das erhöht gleichzeitig die Kompiliergeschwindigkeit, wenn die PPUs nur einmal erzeugt werden und nicht für jedes Projekt wieder neu.
Und man sollte, um den Compiler nicht zu "verwirren" und leitung einzusparen für jede Plattform nen eigenes Ausgabeverzeichniss haben. Für nur-Windows oder nur-Linux oder nur-sonstwas programmierer ist das aber irrelevant.

Gruß Lord Horazont

_________________
If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung.
current projects: ManiacLab; aioxmpp
zombofant networkmy photostream
„Writing code is like writing poetry“ - source unknown


„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Mai 30, 2009 13:01 
Offline
DGL Member
Benutzeravatar

Registriert: Di Sep 20, 2005 13:18
Beiträge: 1054
Wohnort: Dresden
Programmiersprache: C, C++, Pascal, OPL
Lord Horazont hat geschrieben:
Und man sollte, um den Compiler nicht zu "verwirren" und leitung einzusparen für jede Plattform nen eigenes Ausgabeverzeichniss haben. Für nur-Windows oder nur-Linux oder nur-sonstwas programmierer ist das aber irrelevant.

Das kann ich nur bestätigen, wenn auch mit GCC unter Linux und Windows. Hat mich echt ne Menge Zeit gekostet, eh ich gecheckt habe, dass Windows probiert die Linux-Objekt-Dateien und Linux die von Windows probiert zu nehmen. Das gibt dann natürlich massig unerklärbare Linkfehler. :lol:

_________________
Denn wer nur schweigt, weil er Konflikte scheut, der macht Sachen, die er hinterher bereut.
Und das ist verkehrt, denn es ist nicht so schwer, jeden Tag zu tun als ob's der letzte wär’.
Und du schaust mich an und fragst ob ich das kann.
Und ich denk, ich werd' mich ändern irgendwann.

_________________Farin Urlaub - Bewegungslos


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Mai 31, 2009 10:24 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 05, 2002 10:35
Beiträge: 4234
Wohnort: Dortmund
Das Choas mit alten DCUs/PPUs hat man so oder so. Da muss jeder drauf achten muss. Zu mal es nur für Lazarus von nutzen wäre. Und im Vergleich zum Aufwand ist das in meinen Augen absolut nicht verhältnissmäßig. Aber das führt jetzt hier auch eindeutig zu weit. Für solche Anregungen haben wir spezielle Sparten.


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 24 Beiträge ]  Gehe zu Seite Vorherige  1, 2
Foren-Übersicht » Programmierung » Einsteiger-Fragen


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 19 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.008s | 14 Queries | GZIP : On ]