首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安装GNU;路径错误

安装GNU;路径错误
EN

Ask Ubuntu用户
提问于 2015-06-13 09:45:40
回答 1查看 1.4K关注 0票数 0

我通过以下方式安装Octave:

代码语言:javascript
复制
cd /tmp
wget -c ftp://ftp.gnu.org/gnu/octave/octave-4.0.0.tar.gz
tar -xzf octave*.tar.gz
mv octave* octave && sudo mv octave /opt
sudo chmod 777 -R /opt/octave
./configure CPPFLAGS=-I/usr/include/hdf5/serial LDFLAGS=-L/usr/lib/$(dpkg-architecture -qDEB_HOST_MULTIARCH)/hdf5/serial JAVA_HOME='/usr/lib/jvm/java-1.7.0-openjdk-i386'
make
sudo make install DESTDIR=/opt/octave/build

DESTDIR变量最初被设置为/usr/local/share/octave,在运行可执行文件时遇到同样的问题。问题是,运行可执行文件/opt/octave/build/usr/local/bin/octave会产生错误:

代码语言:javascript
复制
➜  octave  '/opt/octave/build/usr/local/bin/octave' 
octave: failed to exec '/usr/local/libexec/octave/4.0.0/exec/i686-pc-linux-gnu/octave-gui'

显而易见的解决方案是将/opt/octave/build的内容移动到/,从而将可执行文件的路径更改为/usr/local/bin/octave。但是我正在尝试创建一个二进制目录,它可以被移动到文件系统上的任何位置,并且仍然可以工作。

但是我也想被告知如何在我的系统上安装Octave (以一种不像二进制包那样移动的方式)。如果这是我建议的方式,即将/opt/octave/build的内容移到/,请告诉我如何从命令行开始。

EN

回答 1

Ask Ubuntu用户

发布于 2015-09-16 21:36:02

简单地说,您应该使用--prefix=DIR构建Octave,而不是像注释中已经指出的那样在make install命令上指定DESTDIR=DIR

您更基本的问题是如何创建Octave的二进制安装,该安装可以在文件系统上的任何位置移动,并且仍然是完全功能的。答案是,目前不可能做到这一点。当Octave被编译时,它自己的库和脚本的几条路径被编译到可执行文件中,这样它就可以找到自己的运行时。其中一些可能会被重写(例如,一些覆盖默认路径的选项请参见octave --help ),但有些当前不能覆盖,例如mkoctfileoctave-gui的路径。这些辅助程序的位置完全取决于在构建--prefix时给出的值。

票数 0
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/635929

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档