Thread View: de.comp.lang.c++
3 messages
3 total messages
Started by Alexander Ehrler
Fri, 27 Oct 1995 13:48
BC++ precompiled headers
Author: Alexander Ehrler
Date: Fri, 27 Oct 1995 13:48
Date: Fri, 27 Oct 1995 13:48
30 lines
1599 bytes
1599 bytes
Hi,
ich frage mich ob es nicht moeglich ist, vorkompilierte Header _einmal_ zu
erzeugen und dann nur wiederzuverwenden.
Mein konkretes Problem: eine C++ Anwendung, bestehend aus ca. 20 Source
Files, die alle OWL Funktionalitaet benoetigen. Also taucht in jedem
Header die PP-Direktive #include <owlpch.h> auf.
Nun generiert BC++ fuer _jedes_ der Source Files die gesamten OWL Headers,
insgesamt ca. 120 MB *.csm File. Auch die Beschraenkung der Vorkompilierung
mittels #pragma -hdrstop auf _nur_ die OWL Headers bringt nichts.
Sieht jemand eine Moeglichkeit das ganze ressourcenfreundlicher ueber die
Buehne zu bekommen (ich moechte mir nicht fuer jedes Projekt eine neue
Festplatte kaufen muessen :-): also einmal die OWL Headers vorkompilieren
und dann fuer jedes Source File verwenden.
Thanx fuer jeden Tip...
Alex
,,,,, Alex Ehrler * University of Karlsruhe * Computer Science
( 0 @ ) Loetzenerstr. 18 * D - 76139 Karlsruhe * Germany
--oOO--(_)--OOo-- email: ukci@rz.uni-karlsruhe.de * phone: (0721)681609
Re: BC++ precompiled headers
Author: Karl-Heinz Krause
Date: Sat, 28 Oct 1995 12:25
Date: Sat, 28 Oct 1995 12:25
33 lines
1967 bytes
1967 bytes
Am 27. Okt 1995 schrieb Alexander Ehrler (ukci@rzstud1.rz.uni-karlsruhe.de): > Hi, > > ich frage mich ob es nicht moeglich ist, vorkompilierte Header _einmal_ zu > erzeugen und dann nur wiederzuverwenden. > > Mein konkretes Problem: eine C++ Anwendung, bestehend aus ca. 20 Source > Files, die alle OWL Funktionalitaet benoetigen. Also taucht in jedem > Header die PP-Direktive #include <owlpch.h> auf. > Nun generiert BC++ fuer _jedes_ der Source Files die gesamten OWL Headers, > insgesamt ca. 120 MB *.csm File. Auch die Beschraenkung der Vorkompilierung > mittels #pragma -hdrstop auf _nur_ die OWL Headers bringt nichts. > > Sieht jemand eine Moeglichkeit das ganze ressourcenfreundlicher ueber die > Buehne zu bekommen (ich moechte mir nicht fuer jedes Projekt eine neue > Festplatte kaufen muessen :-): also einmal die OWL Headers vorkompilieren > und dann fuer jedes Source File verwenden. Schwer zu sagen, woran es liegt. BC++ kann manchmal sehr launisch sein. Die einzelnen Quelldateien sollten vor dem #pragma -hdrstop absolut identisch sein, d. h. alle #include-Direktiven müssen in derselben Reihenfolge stehen, und auch solche, die in einer bestimmten Quelldatei nicht benötigt werden, müssen aufgeführt werden. Außerdem müssen alle Quellen mit denselben Optionen übersetzt werden. Also mal nachschauen, ob nicht für einige Dateien die Optionen anders gesetzt sind. Karl-Heinz Krause
Re: BC++ precompiled headers
Author: Mario Zimmermann
Date: Mon, 30 Oct 1995 15:59
Date: Mon, 30 Oct 1995 15:59
45 lines
2183 bytes
2183 bytes
ukci@rzstud1.rz.uni-karlsruhe.de (Alexander Ehrler) wrote:
>Mein konkretes Problem: eine C++ Anwendung, bestehend aus ca. 20 Source
>Files, die alle OWL Funktionalitaet benoetigen. Also taucht in jedem
>Header die PP-Direktive #include <owlpch.h> auf.
>Nun generiert BC++ fuer _jedes_ der Source Files die gesamten OWL Headers,
>insgesamt ca. 120 MB *.csm File. Auch die Beschraenkung der Vorkompilierung
>mittels #pragma -hdrstop auf _nur_ die OWL Headers bringt nichts.
>
Hi Alex,
folgende Schritte loesen Dein Problem:
1. Beschraenke die die Header-Files, die vorkompiliert sein sollen,
auf einige wenige Header, die in jedem Deiner Module benutzt
werden sollen. Bei mir sieht das z.B. so aus:
#include <owlall.h>
#include <string.h>
#include <dir.h>
#pragma hdrstop
#include <sonstige_header>
#include "meine_eigenen_header"
2. Das Entscheidende:
In _allen_ Dateien Deines Projektes muss jetzt derselbe Include-Kopf
stehen, d.h. welche Headerdateien eingebunden werden sollen UND in
dieser Reihenfolge.
Das gilt auch fuer Deine eigenen Header-Dateien, die o.g. Includes
aufnehmen sollen.
Auf diese Weise wird die csm-Datei bei mir nur 2,5MB gross und die Compilierung
laeuft erheblich schneller.
-----
Mario
--
# # ## # # LION Gesellschaft fuer Systementwicklung mbH
# # # # ## # Mario Zimmermann email: zimmerma@lion.de
# # # # # ## Universitaetsstr. 140 Phone: +49 9709-315
#### # ## # # D-44799 Bochum Fax: +49 9709-111
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads