Tragbare OpenBSD ksh(1) . Kein offizielles OpenBSD -Projekt.
Weil alle Betriebssysteme eine gute Hülle verdienen.
Im Gegensatz zu anderen Häfen von OpenBSD KSH ist dieser Port vollständig in sich geschlossen und zielt darauf ab, über Betriebssysteme und C-Compiler hinweg maximal tragbar zu sein. Wir sind immer auf der Suche nach neuen Kombinationen, um Unterstützung hinzuzufügen.
oksh ist bekannt, dass es auf den folgenden Betriebssystemen ausgeführt wird:
Auf einem System ausführen, das hier nicht aufgeführt ist? Fügen Sie es hinzu und senden Sie eine Pull -Anfrage!
Wir glauben, dass oksh auf den folgenden Plattformen arbeiten wird, aber Tests sind erforderlich. Hilfe wird sehr geschätzt und ermutigt!
oksh ist dafür bekannt, mit den folgenden C -Compilern zu bauen:
Bauen mit einem hier nicht aufgeführten Compiler? Fügen Sie es hinzu und senden Sie eine Pull -Anfrage!
oksh ist in einigen Paketsystemen enthalten.
Darüber hinaus gibt es einige inoffizielle Pakete:
Verwenden eines hier nicht aufgeführten Pakets? Fügen Sie es hinzu und senden Sie eine Pull -Anfrage!
Ein C99 -Compiler ist der einfachste Weg, um sicherzustellen, dass oksh korrekt aufgebaut wird. In der oben genannten Liste der C -Compiler finden Sie eine Liste bekannter Arbeitskompiler.
Obwohl nicht erforderlich, wird die ncurses -Bibliothek für Bildschirmlösungsroutinen verwendet, wenn die Bibliothek während der configure gefunden wird. Dies kann vom Benutzer ausgeschaltet werden, indem das --disable-curses -Flag zum configure übergeht.
Ein configure , das ein POSIX Makefile erzeugt, wird bereitgestellt, um das Erstellen und die Installation zu erleichtern, und kann durch:
$ ./configure
$ make && sudo make install
Das configure erkennt außerhalb der Bräuche Builds, wenn Sie es vorziehen, außerhalb der Bräuche zu erstellen. Damit dies funktioniert, wird die VPATH -Erweiterung verwendet. Obwohl es nicht POSIX ist, arbeitet VPATH mit BSD Make und GNU Make. In-Tree-Builds erstellen eine vollständig posix Makefile .
Die Kreuzkompilierung kann erreicht werden, indem configure wie folgt ausgeführt werden:
CC=/path/to/cross/cc CFLAGS="any needed cflags" LDFLAGS="any needed ldflags" ./configure --no-thanks
Dadurch wird alle configure übersprungen und ein generisches Makefile und pconfig.h mit fast nicht eingeschalteten Optionen aufgestellt. Wenn Sie einen Cross GCC oder einen Klang verwenden, kann dies sehr gut funktionieren (mit allen zusammengesetzten Kompatenten). Sie können diese Dateien bearbeiten, um Ihr System vor dem make widerzuspiegeln.
Alle Umgebungsvariablen und Konfigurieren von Flags werden bei der Verwendung respektiert --no-thanks . Weitere Angabe --no-link Danach --no-thanks kompilieren Sie nicht nur die Quelldateien in Objektdateien, um sie auf die Zielmaschine zu übertragen und dort verknüpft zu werden.
Das Flag --no-thanks kann auch verwendet werden, um einen nativen oksh mit allen Kompatibilitätsfunktionen zu kompilieren, anstatt sich auf die Version dieser Funktionen des Systems zu verlassen.
Patches, die neue Plattformen hinzufügen und die Unterstützung für vorhandene Plattformen verbessern, sind immer willkommen.
Patches, die dazu führen, dass oksh vom Upstream OpenBSD KSH -Verhalten abweicht, sind besser geeignet, an die OpenBSD Tech@ Mailing -Liste gesendet zu werden. Bitte testen Sie Ihren Patch zuerst auf einem OpenBSD -Computer, bevor Sie ihn an Tech@senden. Ich werde mit dem Upstream OpenBSD -Code synchronisieren, sobald Ihr Patch akzeptiert wird. Wenn Sie hier ein Problem eröffnen möchten, um den Fortschritt Ihres Patchs auf Tech@zu verfolgen, ist das in Ordnung.
Die wichtigsten Korn -Shell -Dateien sind öffentlich -Domäne (siehe LEGAL ). Portabilitätsdateien sind BSD- oder ISC -lizenziert. Einzelheiten finden Sie in einzelnen Datei -Headern.
Siehe Registerkarte Releases. Die neueste Veröffentlichung ist OKSH-7.5, das dem KSH (1) von OpenBSD 7.5 entspricht, der am 5. April 2024 veröffentlicht wurde.