Ccache


Ccache
ccache
Betriebssystem: unixoide
Kategorie: Compiler
Lizenz: GNU General Public License
http://ccache.samba.org/

ccache ist ein Computer-Programm, das das Produkt eines C/C++ Compilers zwischenspeichert (engl. 'to cache'), um somit das erneute Kompilieren desselben Quellcodes zu beschleunigen.

Der Quellcode eines Computer-Programmes besteht üblicherweise aus mehreren Dateien (bei größeren Projekten können das mehrere hundert bis etliche tausend Dateien sein), die nicht alle gleichzeitig verändert werden. Sobald das Programm kompiliert wird, müssen jedoch alle Quell-Dateien einzeln in Objekt-Dateien übersetzt werden. Da aber die unveränderten Dateien bereits in der Form, in der sie vorliegen, bereits kompiliert wurden, wäre es nicht sinnvoll, sie erneut zu übersetzen (was viel Zeit kosten kann). Stattdessen benutzt ccache das bereits existierende Produkt.

Dafür wird es stets vor dem eigentlichen Compiler ausgeführt. Es prüft dabei, ob die zu kompilierende Datei bereits im Cache vorliegt, und ruft den Compiler erst dann auf, wenn dies nicht der Fall ist. Das Produkt (die Objekt-Datei) wird dann im Cache abgelegt, um beim nächsten Kompiliervorgang zur Verfügung zu stehen. Befindet sich eine kompilierte Datei im Cache, wird der Compiler nicht ausgeführt, stattdessen wird die Kopie aus dem Cache ins Arbeitsverzeichnis kopiert (restauriert).

ccache legt dabei großen Wert darauf, dass nicht versehentlich die falsche Version der Datei restauriert wird. Dazu wird beim Vergleich mit den zwischengespeicherten Dateien nicht nur auf den Dateinamen geachtet, sondern auf den Inhalt samt den inkludierten Header-Dateien. Dies schließt versehentliche falsche Cache-Hits aus, so dass immer dasselbe Endprodukt erzeugt wird, als hätte man alle Dateien neu kompiliert.

Siehe auch

Weblinks


Wikimedia Foundation.

Schlagen Sie auch in anderen Wörterbüchern nach:

  • ccache — Betriebssystem unixoide Kategorie Compiler Lizenz GNU General Public License http://ccache.samba.org/ ccache ist ein …   Deutsch Wikipedia

  • ccache — 3.1.6 в среде Gentoo Linux Тип кэш компилятора Разработчик Эндрю Триджелл …   Википедия

  • Ccache — Environnement POSIX Type Outil de développement …   Wikipédia en Français

  • Ccache — ссache (сикэш)  хэширующий препроцессор компиляторов языка С и С++ для GNU/Linux. Использование ссache может значительно ускорить сборку некоторых пакетов или проектов, которые компилируются несколько раз, так как заново компилироваться… …   Википедия

  • Ccache — infobox software name = ccache license = GNU General Public License genre = software development website = http://ccache.samba.org/In software development, ccache is a tool which caches the output of C/C++ compilation so that the next time, the… …   Wikipedia

  • SCons — Développeur Steven Knight Dernière version 2.0.1 …   Wikipédia en Français

  • SCons — Infobox Software name = SCons caption = developer = Steven Knight latest release version = 1.0.1 latest release date = September 7, 2008 operating system = Windows, POSIX genre = Software development tools license = MIT License website =… …   Wikipedia

  • Avr-gcc — GNU Compiler Collection Entwickler: GCC Team Aktuelle Version: 4.4.0 (21. April 2009) …   Deutsch Wikipedia

  • EGCS — GNU Compiler Collection Entwickler: GCC Team Aktuelle Version: 4.4.0 (21. April 2009) …   Deutsch Wikipedia

  • GNU C-Compiler — GNU Compiler Collection Entwickler: GCC Team Aktuelle Version: 4.4.0 (21. April 2009) …   Deutsch Wikipedia