2016-06-23 15 views
9

Ich verwende Octave auf Window Vista. Ich verwende 4 Pakete in meinem Code. Aber jedes Mal, wenn ich die Oktave neu starte, muss ich manuell von der Kommandozeile laden, 'pkg load ...' Gibt es eine Möglichkeit, sie permanent zu laden, so dass Octaves immer dann in seinem Pfad gefunden wird.Wie werden Pakete in Octave dauerhaft geladen?

+2

Siehe [Wie lade ich automatisch ein Paket beim Octave-Start?] (Http://wiki.octave.org/FAQ#How_do_I_automatically_load_a_package_at_Octave_startup.3F) – carandraug

Antwort

3

Ich habe die Antwort bekommen. Es kann zum Zeitpunkt der Paketinstallation festgelegt werden. Installation mit folgendem Befehl pkg install -auto [Paketname] Es wird jedes Mal geladen, wenn die Oktave gestartet wird.

+0

Oder, einmal installiert, können Sie 'pkg rebuild -auto image 'ausführen B. für das 'image' -Paket –

+1

In Octave 4.2.1 erhalten wir dies, wenn wir versuchen, die Option -auto zu verwenden:' warning: pkg: autoload wird nicht mehr unterstützt. Fügen Sie stattdessen einen Befehl 'pkg load ...' zu octaverc hinzu. ' –

16

Wenn Octave gestartet wird, wird ~/.octaverc ausgeführt. Wenn Octave automatisch ein Paket laden soll, fügen Sie einfach einen pkg load pkg-name Befehl hinzu. Wenn die Dateien nicht existieren, erstellen Sie sie.

Wenn Sie dies tun, denken Sie daran, dass Octave möglicherweise nicht so konfiguriert ist, dass Pakete beim Start geladen werden. Wenn Sie Code für andere schreiben, denken Sie daran, dass Ihre Programme immer noch die Pakete laden müssen, die sie benötigen.

Do nicht Verwendung pkg install -auto ... oder pkg rebuild -auto .. denn das wird auf der nächsten Oktave Release aufhören zu arbeiten.

+0

Zur Vervollständigung wäre die octaverc-Datei in Windows ausführbar unter: * C: \ Octave \ Octave-4.2.1 \ share \ octave \ site \ m \ startup \ oktaverc *. Ich hoffe, es hilft denen, die nach der Datei suchen, da ich eine Weile gebraucht habe, um die Octaverc-Datei zu finden. –

+1

@LyeHengFoo nicht vollständig wahr. Das ist die systemweite Octaverc-Datei. Änderungen an dieser Datei gelten für * alle * Benutzer im System. Diese Art von Änderungen sollte in der Benutzer-Datei "octaverc" vorgenommen werden, so dass sie niemanden betrifft (vielleicht nicht wichtig, wenn Sie der einzige Benutzer sind). Die Datei, nach der Sie suchen, befindet sich in Ihrem Home-Verzeichnis (was auch immer '~' auf Windows erweitert). – carandraug

+1

Sie haben absolut Recht. Das ist die Site-Einstellung octaverc, die für alle Benutzer gilt. Ich habe gerade herausgefunden, dass ~/.octaverc in Linux tatsächlich% USERPROFILE% /. Octaverc ist. Und nach dem manuellen Erstellen dieser Datei% USERPROFILE% /. Octaverc funktioniert es wie erwartet, aber nur für mich dieses Mal. Danke, dass du meinen Fehler hervorgehoben hast. –

1

eine Datei erstellen namens "startup.m" mit diesem Inhalt:

packs = pkg('list'); 
for jj = 1:numel(packs), 
    pkg('load', packs{jj}.name); 
end 

in den Verzeichnissen "Oktav-home/share/Oktave/Version/m/startup/octaverc" und „Oktave-home/teilen/oktave/site/m/startup/octaverc ". (https://www.gnu.org/software/octave/doc/v4.2.1/Startup-Files.html) So lädt es alle Pakete beim Start.