AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Es wird keine EXE erstellt

Ein Thema von kwhk · begonnen am 21. Jan 2019 · letzter Beitrag vom 26. Jan 2019
Antwort Antwort
Benutzerbild von Uwe Raabe
Uwe Raabe

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

AW: Es wird keine EXE erstellt

  Alt 22. Jan 2019, 11:26
da stand keine Erweiterung,
Also in der Datei, die du hochgeladen hast, schon! (siehe Bild 1)

Da dort auch ein Punkt vor dem EXE steht, wird auch eine HkMp3Dir..EXE erzeugt.

War da irgendwo eingestellt, beim Compilieren sollen OBJ erstellt werden anstelle EXE ?
Kann man so etwas einstellen ?
Nicht anstelle, aber zusätzlich zu den DCUs. (siehe Bild 2)
Angehängte Grafiken
Dateityp: png 22-01-_2019_12-19-08.png (28,9 KB, 29x aufgerufen)
Dateityp: png 22-01-_2019_12-22-03.png (46,8 KB, 24x aufgerufen)
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von kwhk
kwhk

Registriert seit: 25. Mär 2009
Ort: Dresden
168 Beiträge
 
Delphi 10.3 Rio
 
#2

AW: Es wird keine EXE erstellt

  Alt 22. Jan 2019, 20:35
Hallo Uwe,
Danke für Deine Mühe.
Ich habe den folgenden Artikel gefunden
http://docwiki.embarcadero.com/RADSt...lease-Hinweise
und dort folgenden Hinweis betreff Delphi 7:

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Upgrade von Delphi 7

Wenn Sie ein Upgrade eines in Delphi 7 oder einem anderen frühen Release erstellten Projekts ausführen und das Projekt über eine benutzerdefinierte Dateierweiterung verfügt, müssen Sie Projekt > Optionen > Anwendung wählen, und die Erweiterung der Zieldatei auf den mit Ihrem Projekt übereinstimmenden Typ setzen (.exe, .dll oder .bpl).
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Da stand ".EXE", also EXE mit einem Punkt.
Ich habe damit herumprobiert. EXE mit und ohne Punkt und ganz ohne einen Eintrag, so war es voreingestellt.
Es kann sein, dass zum Zeitpunkt als ich Datei hochgeladen habe, gerade .EXE eingestellt war.
Aber ganz egal, es wurde keine EXE erstellt, auch keine ..EXE, es wurden nur die OBJ-Dateien für C erstellt, wie es bei Delphi 7 versehentlich eingestellt war. Im Unterschied zu Delphi 7 wurde aber nicht zusätzlich die EXE trotz dieser Einstellung erstellt.

Bei Delphi 7 ist es mir deshalb nicht aufgefallen. Dass es OBJ-Dateien gab, war mir eigentlich egal. Es gab die EXE und darauf kam es an.

Für mich ergibt sich die Frage, für welche C/C++ Programme sind die OBJ-Dateien gedacht. Ich benutze auch C++ und C#, allerdings mit dem Visual Studio 2017 von MS. Kann man dort diese OBJ-Dateien benutzen ?
Man müsste ja dann auch OBJ-Dateien für C# erstellen können. C# gibt es ja auch seit mehreren Jahren. Es hat mehr Ähnlichkeiten mit Delphi als mit C++ oder C.

RAD Studio 10.3 kann auch C++ und C. Das habe ich bei mir aber nicht installiert, nur Delphi.
Hartmut

Geändert von kwhk (22. Jan 2019 um 20:41 Uhr)
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: Es wird keine EXE erstellt

  Alt 22. Jan 2019, 21:21
Hallo,
die OBJ-Dateien waren bestimmt für den C++-Builder.
Das Format ist je nach C/C++-Compiler natürlich inkompatibel ...

Ein Abschluss-Test, ob das wirklich die Einstellung war,
wäre im alten Delphi die OBJ-Datei-Erzeugung zu deaktivieren und es dann auszuprobieren.

Dazu hätte ich aber persönlich keine Lust
Heiko
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#4

AW: Es wird keine EXE erstellt

  Alt 22. Jan 2019, 21:37
Zitat:
Kann man dort diese OBJ-Dateien benutzen ?
Die frage wäre was willst du damit.

OBJ-Dateien (vom Compiler generierter Maschinencode) werden benötigt für den Linker um daraus exe Dateien erstellen zu können.
Es ist aber nicht nötig diese erzeugen zu lassen das macht der Compiler in Delphi denke ich mal im Speicher. (In VB6 werden sie auf die Platte gespeichert und nach dem erstellen der EXE automatisch gelöscht)

Leider wurde das Extension von anderen Programmen missbraucht von Wavefront Technologies zum Beispiel so das man nicht mehr mit Bestimmtheit sagen kann für was die Endung eigentlich steht.

gruss

Geändert von EWeiss (22. Jan 2019 um 22:00 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

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

AW: Es wird keine EXE erstellt

  Alt 22. Jan 2019, 23:18
OBJ-Dateien (vom Compiler generierter Maschinencode) werden benötigt für den Linker um daraus exe Dateien erstellen zu können.
Es ist aber nicht nötig diese erzeugen zu lassen das macht der Compiler in Delphi denke ich mal im Speicher.
Der Delphi Compiler benötigt für Delphi-Projekte keine OBJ-Dateien sondern erzeugt direkt DCU Dateien. Auch der Linker benötigt in diesem Fall keine OBJ-Dateien, sondern kann direkt mit den DCU Dateien arbeiten.

Die OBJ-Dateien können beim Compilieren aber (optional) zusätzlich erzeugt werden, falls diese für den C++ Builder benötigt werden. Damit können auch C++ Projekte auf Delphi-Units zurückgreifen. Die gesamte RTL/VCL/FMX wird auf diese Weise für den C++ Builder bereit gestellt.

Das Abschalten der OBJ-Erzeugung hat in manchen Fällen den Vorteil, daß C++ spezifische Warnungen nicht mehr ausgegeben werden. Wenn man also den C++ Builder nicht verwendet, kann man die OBJ-Erzeugung einfach abschalten und erhält weniger Warnungen, eine leicht bessere Performance und es wird weniger Plattenplatz verschwendet.

C++-Objektdatei
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#6

AW: Es wird keine EXE erstellt

  Alt 22. Jan 2019, 23:22
Zitat:
Der Delphi Compiler benötigt für Delphi-Projekte keine OBJ-Dateien sondern erzeugt direkt DCU Dateien
OK.. Dann lag ich wohl falsch was Delphi betrifft.
Die kochen dann wieder ihr eigenes Süppchen.

gruss
  Mit Zitat antworten Zitat
Benutzerbild von kwhk
kwhk

Registriert seit: 25. Mär 2009
Ort: Dresden
168 Beiträge
 
Delphi 10.3 Rio
 
#7

AW: Es wird keine EXE erstellt

  Alt 23. Jan 2019, 07:02
Ich habe es an einem anderen 10.3 Projekt mal ausprobiert...
Bei Projekt => Optionen => Erzeugung der C/C++-Ausgabedatei : C.objs erzeugen einstellen.
Fazit: Es werden OBJ-Dateien erzeugt, aber keine EXE.

Danach wieder zurückstellen auf Nur DCUs erzeugen
Und nun: Es wird keine OBJ- jedoch die EXE-Datei erstellt.

Das kann jeder ganz einfach ausprobieren. (Probieren geht über Studieren)

Irgendwie erscheint mir diese Arbeitsweise auch logisch.
Wenn ich OBJ-Dateien für C++ erstellen will, dann handelt es sich um Proceduren/Funktionen für das C++ Programm und nicht um eine lauffähige EXE.
Delphi 7 hat bei dieser Einstellung die OBJ-Dateien zusätzlich zur EXE erzeugt, so wie Uwe es in #20 auch sagt, das ist aber bei Delphi 10 nicht (mehr) so.
Hartmut

Geändert von kwhk (23. Jan 2019 um 07:13 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.303 Beiträge
 
Delphi 12 Athens
 
#8

AW: Es wird keine EXE erstellt

  Alt 23. Jan 2019, 07:50
Moin...
Code:
D:\Delphi10RAD\HK\HkMp3Dir>dir
 Datenträger in Laufwerk D: ist Hi_D_2000
 Volumeseriennummer: CAD9-24CB

 Verzeichnis von D:\Delphi10RAD\HK\HkMp3Dir

22.01.2019  11:13    <DIR>        .
22.01.2019  11:13    <DIR>        ..
22.01.2019  09:37    <DIR>        #SI
22.01.2019  00:30               345 HkMp3Dir.dpr
22.01.2019  11:13            30.273 HkMp3Dir.dproj
22.01.2019  11:13                62 HkMp3Dir.dproj.local
22.01.2019  10:40         2.478.080 HkMp3Dir.exe
22.01.2019  11:13               170 HkMp3Dir.identcache
22.01.2019  10:34             2.476 HkMp3Dir.res
22.01.2019  11:13               167 HkMp3Dir.stat
22.01.2019  10:34             9.357 HkMp3DirAuswahl.dcu
22.01.2019  09:46             1.550 HkMp3DirAuswahl.dfm
22.01.2019  09:46             2.206 HkMp3DirAuswahl.pas
22.01.2019  10:34            25.534 HkMp3DirPgm.dcu
22.01.2019  10:35             1.950 HkMp3DirPgm.dfm
22.01.2019  10:28            23.584 HkMp3DirPgm.pas
21.01.2019  21:11               766 HkMp3Dir_Icon.ico
              14 Datei(en),    2.576.520 Bytes
               3 Verzeichnis(se), 1.147.874.422.784 Bytes frei
Alle Dateien (exe, dpr, dcu, dfm, pas) in einem Ordner ist eher kontrapoduktiv. Wir hatten hier mal eine Thread warum das so ist. (u.a. die verschiedenen Plattformen).
Wenn ich den Link finde, hänge ich ihn an.
  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 08:06 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz