AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Die Delphi-IDE PAS-Dateien im Suchpfad nicht neu kompilieren wenn nicht nötig
Thema durchsuchen
Ansicht
Themen-Optionen

PAS-Dateien im Suchpfad nicht neu kompilieren wenn nicht nötig

Offene Frage von "galex9"
Ein Thema von Der schöne Günther · begonnen am 15. Nov 2016 · letzter Beitrag vom 22. Nov 2016
Antwort Antwort
Der schöne Günther

Registriert seit: 6. Mär 2013
6.196 Beiträge
 
Delphi 10 Seattle Enterprise
 
#1

PAS-Dateien im Suchpfad nicht neu kompilieren wenn nicht nötig

  Alt 15. Nov 2016, 16:41
Es gibt so viele tolle Bibliotheken da draußen. Man "installiert" sie und kann fortan bunte Vierecke auf seine Formulare ziehen. Noch wichtiger: Man hat die Sourcen einmal kompiliert, nun DCUs im Bibliothekspfad liegen und braucht sie nicht jedes mal kompilieren.

Alles gut soweit.

Nun gibt es Leute die haben keine Lust nach jedem RAD Studio-Release auf X Geräten Komponenten zu ziehen und zu installieren. Ich möchte die Quelltexte der Libraries nun an die Projekte selbst mit dranhängen.

Das klappt auch: Man legt die Bibliothek z.B. als Sub-Repository des Projekts an, stellt in den Projekt-Optionen noch als Suchpfad z.B.
Code:
.\..\libs\Graphics32
und fertig. Man muss halt jetzt darauf verzichten im Formular-Designer die Dinge aufs Formular zu ziehen aber das stört nicht. Weiterer Bonus: Verschiedene Projekte können mit verschiedenen Versionen von Libraries arbeiten und man kann sie sehr einfach auswechseln (Subrepo updaten)

Das Problem: Ich gehöre zu den Leuten die nichts gegen Komponenten-Installationen haben. Ich möchte nicht jedes mal die Sourcen neu kompilieren, denn die DCUs habe ich ja in meinem Bibliothekspfad liegen. Was kann ich tun?

Folgende Ideen hatte ich bislang:
  • Subrepo für mich lokal auf "leer" stellen: Somit werden im Suchpfad keine PAS-Dateien gefunden und er nimmt die DCUs aus dem Bibliothekspfad
  • Neben Debug und Release eine weitere Gruppe "Debug_NoLocalLibraries" oder so ähnlich, diese hat den Suchpfad dann nicht

Geändert von Der schöne Günther (15. Nov 2016 um 16:44 Uhr)
  Mit Zitat antworten Zitat
Ghostwalker

Registriert seit: 16. Jun 2003
Ort: Schönwald
1.299 Beiträge
 
Delphi 10.3 Rio
 
#2

AW: PAS-Dateien im Suchpfad nicht neu kompilieren wenn nicht nötig

  Alt 15. Nov 2016, 18:47
hmm...oder beim Installieren der Componenten den DCU-Pfad auf ein Zentrales Verzeichnis biegen.
(Das ergibt zwar ein "Sumpf" Verzeichnis, aber gut).

Dann nur im Bib-Pfad das Sumpfverzeichnis rein und wie bei Subrepo vorgehen.

Bietet den zusätzlichen Vorteil das auch der Bibleothekspfad entschlackt wird
Uwe
e=mc² or energy = milk * coffee²
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.196 Beiträge
 
Delphi 10 Seattle Enterprise
 
#3

AW: PAS-Dateien im Suchpfad nicht neu kompilieren wenn nicht nötig

  Alt 15. Nov 2016, 18:59
Das Problem ist dass die Leute hier keine Lust mehr auf Komponenten installieren haben und Projekte möglichst "out of the box" laufen sollen.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.629 Beiträge
 
Delphi 12 Athens
 
#4

AW: PAS-Dateien im Suchpfad nicht neu kompilieren wenn nicht nötig

  Alt 15. Nov 2016, 19:25
Das Problem ist dass die Leute hier keine Lust mehr auf Komponenten installieren haben und Projekte möglichst "out of the box" laufen sollen.
Das Komponenten installieren kann man aber auch deutlich vereinfachen. Wenn die compilierten Dateien bereits vorliegen, dann genügt ein Doppelklick auf eine entsprechend gefüllte REG-Datei. Es muss sich halt nur einer einmal die Arbeit machen.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
4.168 Beiträge
 
Delphi 12 Athens
 
#5

AW: PAS-Dateien im Suchpfad nicht neu kompilieren wenn nicht nötig

  Alt 19. Nov 2016, 09:40
Ich weiss nicht ob die vorkompilierten DCUs so eine gute Idee sind, schon gar nicht wenn du alte/neue Versionen
benutzen willst.
Da hat sich schnell mal eine alte reingeschlichen, und solche Fehler sind sehr schlecht zu finden,
am ehesten noch durch die verschobenen Debug-Positionen beim testen.
Oder gibt es etwa eine sichere Methode mit der man diese alten Leichen verhindern oder zumindest warnen kann ?

Natürlich fände ich soetwas auch super wenn es solche Leichen beim Linken aussortieren könnte.

Ich würde auf jeden Fall einmal im aktuellen Projekt BuildAll vorziehen, und dann sollte alles einmal
aktualisiert sein.
Von da aus wäre natürlich das Kompilieren bei Bedaf sehr sinnvoll wenn es 100% sicher funktioniert,
aber ehrlich gesagt auch da verlasse ich mich selten drauf.

Rollo
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.629 Beiträge
 
Delphi 12 Athens
 
#6

AW: PAS-Dateien im Suchpfad nicht neu kompilieren wenn nicht nötig

  Alt 20. Nov 2016, 10:20
Ich weiss nicht ob die vorkompilierten DCUs so eine gute Idee sind, schon gar nicht wenn du alte/neue Versionen
benutzen willst.
Da hat sich schnell mal eine alte reingeschlichen, und solche Fehler sind sehr schlecht zu finden,
am ehesten noch durch die verschobenen Debug-Positionen beim testen.
Grunsätzlich bin ich auch auf der "alles aus dem Source compilieren" Seite. Bei den Design-Packages gibt es aber einen durchaus relevanten Aspekt für die globalen DCU-Suchpfade: in der Regel entsprechen die DCUs dann nämlich auch den zur Designzeit verwendeten Komponenten.

Dies ist auch einer der Gründe, weswegen ich meinen Package Magician geschrieben habe. Damit kann man die für ein Projekt benötigten Design-Packages dynamisch mit dem Projekt laden. In dem Fall sind dann die projektbezogenen Suchpfade auf die Bibliotheken wieder sinnvoll.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:45 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz