How to load packages in Octave permanently?

2019-03-18 09:00发布

问题:

I am using Octave on Window vista. I am using 4 package in my code. But every time I restart octave, I have to load manually from command line, 'pkg load ...' Is there a way to load them permanently so that whenever Octave is started it finds them in its path.

回答1:

When Octave starts, it runs ~/.octaverc. If you want Octave to automatically load a package, simply add a pkg load pkg-name command to it. If the files does not exist, create it.

If you do this, remember that other people may not have Octave configured to load packages at startup. Therefore, if you write code for others, remember that your programs still need to load the packages they require.

Do not use pkg install -auto ... or pkg rebuild -auto .. because that will stop working on the next Octave release.



回答2:

I got the answer. It can be set at the time of package installation. install with following command pkg install -auto [package name] It will be load every time octave is started.



回答3:

create a file named "startup.m" with this content:

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

in the directories "octave-home/share/octave/version/m/startup/octaverc" and "octave-home/share/octave/site/m/startup/octaverc". (https://www.gnu.org/software/octave/doc/v4.2.1/Startup-Files.html) So it loads all packages at startup.



回答4:

Install the packages on your working directory. Then add "pkg load pkg_name" command to octave-1.1~\share\octave\site\m\startup\octaverc. It will load the package every time.