Installing Octave on Cygwin

来源:互联网 发布:java 干10年工资多少 编辑:程序博客网 时间:2024/05/01 16:06

GNU Octave is a high-level interactive language, primarily intended for numerical computations, that is mostly compatible with MATLAB®. (Another widely used alternative to Matlab is the Scilab, which seems to be more compatible with Windows platforms but more diverse from Matlab.) The following are the steps of installing Octave 3.6.4 within Cygwin 1.7.17 on Windows 8 Pro.


1. Installation

Use the cygwin setup.exe to selectoctave, octave-forge (octave-forge is similar to the MATLAB® toolboxes),gnuplot, and xinit packages. Other dependencies, such as xorg-server, will also be installed automatically.

During the installation, there is a error "pango1.0.sh exit code 1". But it does not seem to have caused any obvious issues [1].


2. Configuration

To launch X Window System (X11) and use xterm, the environmental variable DISPLAY should be set in ~/.bashrc.

export DISPLAY=:0

Otherwise, the error "DISPLAY is not set" will occur.

To make sure the plotting works well, run gnuplot in xterm (use "startx" or "xinit" to start X-Windows), and do "plot x w lines" to see whether a figure appears.

There might be strange errors related to "fork()" or .dll loading, after updating or installing packages [2]. This can be resolved by rebasing cygwin files, following the eight steps listed in [3].


3. Testing

As an example, start Octave in xterm, and test the scripts below. Printing and saving plots in Octave are described in [4].

octave:1> plot(sin(1:0.1:10))octave:2> print -djpg foo.jpg

A prettier xterm may be set according to the steps in [5] (untested).


UPDATE: xterm setting

According to "man startx", when X starts, the configuration file in user's home directory '.xinitrc' will work, in which another configuration file ".Xresources" get called. Contents of both files are as below on my machine:

  • .xinitrc
    #!/bin/shxrdb -load $HOME/.Xresourcesexec xterm -geometry 174x48+0+0 -name login

  • .Xresources
    Xft*antialias:          trueXft*autohint:           trueXTerm*background:       blackXTerm*foreground:       greyXTerm*cursorColor:      greyXTerm*scrollBar:        trueXTerm*rightScrollBar:   trueXTerm*saveLines:        10000XTerm*faceName:         ConsolasXTerm*faceSize:         10XTerm*toolBar:          offXTerm*trueType:         trueXTerm*scrollTtyOutput:  False

UPDATE2: python plotting in Cygwin

http://blog.csdn.net/lllcfr1/article/details/8628019


===========

[1] http://verahill.blogspot.hk/2013/03/353-cygwin-with-octave-and-gnuplot-on.html

[2] http://cygwin.wikia.com/wiki/Rebaseall

[3] http://stackoverflow.com/questions/9300722/cygwin-error-bash-fork-retry-resource-temporarily-unavailable

[4] http://www.gnu.org/software/octave/doc/interpreter/Printing-and-Saving-Plots.html

[5] http://stackoverflow.com/questions/7811314/change-default-xterm-font-size-in-cygwin