![]() |
Zwei Compiles mit unterschiedlichen Bedinungen
Wie kann ich folgendes in einem Arbeitsgang erledigen:
Projekt erzeugen, ohne spezielle Bedingung in Ordner XY. Dann eine Compiler-Direktive setzen und in einen anderen Orner YZ erzeugen. Hilfreich wäre zum Beispiel wenn sich die Buildkonfiguration im Postcompile umschalten liesse und dort noch ein Compilevorgang angestoßen werden könnte. Hat jemand Erfahrung mit soetwas und möchte die teilen? Sherlock |
Re: Zwei Compiles mit unterschiedlichen Bedinungen
Nach PostCompile wird nur eine Datei erzeugt,
also sind zwei Unterschiedliche nicht möglich. Verwende den Kommandozeilen-Compiler von Delphi. Diese kannst zweimal hintereinander über eine Batch-Datei aufrufen und ihm über Parameter die entsprechdenen Bedingungen (Compilerschalter) mitgeben. |
Re: Zwei Compiles mit unterschiedlichen Bedinungen
Ah, OK! Daran hatte ich gar nicht gedacht. Merci.
Sherlock |
Re: Zwei Compiles mit unterschiedlichen Bedinungen
Als Hilfe könnte da mein altes Projekt dienen, das automatisch die Pfadangaben aus der Registry holt und den Compiler füttert:
![]() Mangels Interesse habe ich das Projekt nicht mehr weiter veröffentlicht, so dass für Delphi 2009 und 2010 noch die Unterstützung eingebaut werden müsste. |
Re: Zwei Compiles mit unterschiedlichen Bedinungen
Oh, das liest sich ja gut. Bin da nur leider nicht registriert...und woltle es auch dabei belassen ;)
Ich hab nämlich bei meinen kläglichen Versuchen die dcc32.exe zu verwenden bisher nur Fehler bekommen und weiss eigentlich noch nicht so recht woran es liegt :) Kann es sein, daß die .dproj den compiler irgendwie nicht wirklich interessiert? Edit: Hab mich registriert und das Tool runtergeladen...jetzt mal spielen :) Edit2:
Delphi-Quellcode:
Schade...geht doch nicht so einfach.
********************************************************************************
* * * * * * * * * * Delphi Batch Compiler * * * * * * * * * * * * * * * * * * * 1.1p * * * * * * * * * * * * * * * * * * * * Copyright (c) 2007 by Sebastian Jänicke * * * * * * * * * * ******************************************************************************** Bitte warten, kompiliere... --> Fertig! Ausgabe: CodeGear Delphi für Win32 Compiler-Version 18.5 Copyright (c) 1983,2007 CodeGear Schwerwiegend: F1026 Datei nicht gefunden: 'Dateien\tmssoftware\TMS.dpr' Sherlock |
Re: Zwei Compiles mit unterschiedlichen Bedinungen
Seit mindestens D2009 zeigt doch Delphi im Meldungsfenster welche Parameter man so alles setzen könnte, damit es so kompiliert wird, wie es Delphi gerade macht (vermutlich macht es D2007 auch schon).
PS: ruf mal den Compiler so aus einer Console auf
Code:
dcc32 -?
|
Re: Zwei Compiles mit unterschiedlichen Bedinungen
Ja, da kommen zahllose Optionen, aber ich bin ja vermutlich IDE verwöhnt. Ich schau mir das morgen ausgeschlafen nochmal an ;)
Sherlock |
Re: Zwei Compiles mit unterschiedlichen Bedinungen
Zitat:
Raten würde ich dazu es in das selbe Verzeichnis oder so zu legen, das macht es am einfachsten. Bei mir z.B. habe ich normalerweise mit relativen Verzeichnissen gearbeitet, aber wenn Anführungszeichen gesetzt sind, sollte es auch mit Leerzeichen klappen. Bei mir sieht ein Aufruf z.B. so aus:
Code:
Damit wird z.B. mit Delphi 7 kompiliert. Im selben Verzeichnis sollte es reichen die Projektdatei selbst nach dem -p anzugeben ohne Pfad.
..\Bin\CompileProject.exe -ver 7 -p ..\Tools\SFX_GUI\Sfx_GUI.dpr
|
Re: Zwei Compiles mit unterschiedlichen Bedinungen
Kompilieren wollte ich ein anderes Projekt, das halt TMS-Komponenten verwendet. Mein eigenes Projekt hat keine Leerzeichen im Namen oder Pfad.
Edit: Achso...Aufruf im Ordner des Projekts. also einfach
Code:
Sherlock
compileproject myproject.dproj
|
Re: Zwei Compiles mit unterschiedlichen Bedinungen
Code:
So muss das sein, das erste (-p) ist der Schalter, der anzeigt, dass da die Projektdatei folgt. So habe ich es gemacht, damit .dpr, .dproj oder was auch immer der Compiler akzeptiert funktionieren. Denn sonst hätte ich ja schauen müssen was ein Schalter und was die Projektdatei sein könnte. (Jedenfalls erinnere ich mich so, dass es nur mit -p geht. :mrgreen: )
compileproject -p myproject.dproj
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:51 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