LinuxCNC Documentation

SYNOPSIS

halcompile [--compile|--preprocess|--document|--adoc|--view-doc] compfile…​

sudo halcompile [--install|--install-doc] compfile…​

halcompile --compile --userspace cfile…​

sudo halcompile --install --userspace cfile…​

sudo halcompile --install --userspace pyfile…​

Wenn Persönlichkeiten in einer Comp-Datei verwendet werden, dann werden die HAL-Instanzen nacheinander exportiert (typischerweise durch die sich gegenseitig ausschließenden Parameter count= oder names=). Wenn die Anzahl der Exporte die maximale Anzahl der Persönlichkeiten überschreitet, werden die nachfolgenden Persönlichkeiten modulo der maximal zulässigen Anzahl von Persönlichkeiten zugewiesen.

Standardmäßig beträgt die maximale Anzahl von Persönlichkeiten 64. Um diese Grenze zu ändern, verwenden Sie die Option B←-personalities⇒ mit halcompile. Zum Beispiel, um die maximale Anzahl der Persönlichkeitselemente auf 4 zu setzen: [sudo] B<halcompile --personalities=4> --install …​

Verwenden Sie nicht [sudo] für die RIP-Installation.

OPTIONEN

-a, --adoc

Extrahiere nur die Asciidoc-Format Dokumentation der Komponente.

-c, --compile

Kompilieren einer Komponente oder eines C-Quellcode Moduls.

-d, --document

Extrahiert eine Dokumentation im man-page-Format aus der Komponente (erstellt zunächst Asciidoc und konvertiert diese anschließend in eine Manpage). Diese Option erfordert, dass asciidoctor(1) oder a2x(1) auf Ihrem System installiert ist.

-h, -?, --help

Eine kurze Erklärung für den Start des Progamms anzeigen und dann beenden.

-i, --install

Erstellen und installieren einer Komponente.

-J, --view-doc

Veraltet. Zeigt die Manpage der Komponente live an (erstellt Asciidoc, konvertiert diese in eine Manpage und ruft man(1) auf). Diese Option erfordert, dass asciidoctor(1) oder a2x(1) auf Ihrem System installiert ist.

-j, --install-doc

Installiere die manpage Dokumentation in usr/share/man1 oder usr/share/man9, abhängig davon ob dies eine userspace oder realtime Komponente ist.

-k Datei, --keep-adoc=Datei

Behält die erzeugte Asciidoc-Datei bei der Generierung der Manpage-Dokumentation. Die Datei wird unter Datei gespeichert. Bei Verwendung dieser Option können keine mehreren Eingabedateien angegeben werden, und sie hat keine Wirkung, wenn ausschließlich Asciidoc-formatierte Dokumentation mit der Option -a oder --adoc angefordert wird.

-l, --require-license

Nicht mehr benötigt. Eine Komponente muss immer einen licence-Tag (eine Lizenz Markierung) haben.

-o Datei, --outfile=Datei

Schreibe Ausgabe in Datei. Kann nur genutzt werden zusammen mit --preprocess, --adoc oder --document.

-P int, --personalities=int (Voreingestellt: 64)

Setzt die maximale Anzahl an Persönlichkeiten (engl. personalities) in der Komponente.

-p, --preprocess

Generiere nur eine C-Datei von der Komponenten-Datei.

-U, --unix

Verlang die Quelldatei UNIX-übliche Zeilenenden zu haben mit einem alleinigen newline.

-u, --userspace

Lege eine userspace C-Quelldatei an (nicht-Realtime). Standard ist das Erstellen von Realtime-Komponenten.

--extra-compile-args=args

Zusätzliche Argument, die an den C-Compiler durchgereicht werden.

--extra-link-args=args

Extra Argumente zur Weitergabe an den Linker.

BESCHREIBUNG

halcompile performs many different functions:

  • Kompilieren von .comp- und .c-Dateien in .so- oder .ko-HAL-Echtzeitkomponenten (Flag --compile)

  • Kompilieren von .comp- und .c-Dateien in HAL-Nicht-Echtzeit-Komponenten (das Flag --compile --userspace)

  • Vorverarbeiten von .comp-Dateien in .c-Dateien (das --preprocess-Flag)

  • Extrahieren der Dokumentation aus .comp-Dateien in asciidoc oder Manpage-Dateien der Unterteilungen 1 oder 9 (--adoc und --document-Flags)

  • Anzeige der Dokumentation von .comp-Dateien auf dem Bildschirm (das Flag --view-doc)

  • Kompilieren und installieren Sie die Dateien .comp und .c in das richtige Verzeichnis für die HAL-Echtzeitkomponenten (das Flag --install), was möglicherweise sudo zum Schreiben in Systemverzeichnisse erfordert.

  • Installieren Sie die Dateien .c und .py in das richtige Verzeichnis für HAL-Nicht-Echtzeit-Komponenten (das Flag --install * *--userspace), was möglicherweise sudo zum Schreiben in Systemverzeichnisse erfordert.

  • Extrahieren der Dokumentation aus .comp-Dateien in .1 oder .9-Manpage-Dateien im richtigen Systemverzeichnis (das --install-Flag), was sudo zum Schreiben in Systemverzeichnisse erfordern kann.

  • Vorverarbeiten von .comp-Dateien in .c-Dateien (das --preprocess-Flag)

SIEHE AUCH

  • Halcompile / HAL Component Generator in the LinuxCNC documentation for a full description of the .comp syntax, along with examples

  • pydoc, HAL and Creating Non-realtime Python Components in the LinuxCNC documentation for documentation on the Python interface to HAL components