由于GNU Octave自3.8.0版本起就带有GUI,因此我认为应该进行检查。
因此,由于我运行Windows,并且只能为Cygwin找到Octave 3.8,因此我安装了Cygwin以及软件包octave
,xinit
,xlaunch
和gnuplot
(根据this page,但是我不知道是否需要所有这些软件包)。
然后,当尝试使用octave --force-gui
从Cygwin用GUI启动Octave时,我最初收到了错误消息
octave: X11 DISPLAY environment variable not set
并且Octave将以控制台模式启动。所以我找到了this page,它告诉我运行
echo "export DISPLAY=:0.0" >>~/.bash_profile
从Cygwin,永久摆脱错误消息,这是可行的。但是,我却收到了以下错误消息:
octave: unable to open X11 DISPLAY
在同一页面上还说,您必须通过依次单击开始-> Cygwin-X-> XWin Server运行X Server。那行得通,但是由于我不想启动xterm终端,因为它不需要,所以我发现this page告诉我运行
touch ~/.startxwinrc
从Cygwin创建一个空的
.startxwinrc
文件,以防止默认情况下启动xtrem终端。在同一页面上还提到可以使用startxwin
命令从Cygwin直接启动X Server。因此,现在我可以通过运行Cygwin的GUI启动Octave
startxwin
octave --force-gui
但是,我只想双击桌面图标即可启动并运行所有程序。
所以,我的问题是:我可以以某种方式将其放在脚本文件中,运行该脚本文件时,该文件将在Cygwin中打开,以便该脚本文件中的命令将在Cygwin中运行吗?在Octave终止后,是否有某种方法可以自动关闭X Server?我尝试编写一个文件
octave.bat
,该文件启动Cygwin并提供第二个批处理文件作为参数,而该文件又包含我要执行的命令。但是当我运行第一个脚本时,我只是受到命令提示符(不是Cygwin提示符)的轰炸,所有人都说'startxwin' is not recognized as an internal or external command, operable program or batch file.
为什么在Cygwin中没有打开第二个脚本,如何才能尽可能简单地实现我想要的?
最佳答案
请从此处获取Octave:http://mxeoctave.osuv.de/
安装程序应为您配置所有内容。
GNU Octave现在提供Windows二进制本身。转到ftp://ftp.gnu.org/gnu/octave/windows/