如何让Scilab 6.0.1在Ubuntu 18.04 LTS上运行?

我安装了干净的Ubuntu MATE 18.04 LTS,并在此处从存储库安装了Scilab

sudo apt-get update sudo apt-get install scilab 

安装后我尝试从GUI( 应用程序→其他→Scilab )启动它 – 它无法启动。
然后我尝试用scilab命令从终端启动它。 终端输出如下:

 $ scilab /usr/bin/scilab-bin: error while loading shared libraries: libjava.so: cannot open shared object file: No such file or directory 

所以它找不到Java。 我报告了有关此问题的错误1762999 。

我检查了libjava.so存在:

 $ dpkg -S libjava.so openjdk-11-jre-headless:amd64: /usr/lib/jvm/java-11-openjdk-amd64/lib/libjava.so 

所以它到位了。

我应该怎么做才能让Scilab 6.0.1在Ubuntu 18.04 LTS上运行?

*基于存储库的方法(ATOMS不起作用)

首先我们需要安装Scilab(如果之前没有安装):

 sudo apt-get install scilab 

据我所知,在仿生Scilab的早期开发阶段成功运行。

所以我怀疑OpenJDK 11是个问题。 我决定从Ubuntu 16.04 LTS安装以前版本的OpenJDK-8。

 sudo apt-get install openjdk-8-jre openjdk-8-jre-headless 

我们需要使用以下命令将OpenJDK 8设置为默认值:

 sudo update-java-alternatives --set \ java-1.8.0-openjdk-$(dpkg --print-architecture) 

在此scilab命令之后会出现警告消息:

 $ scilab Warning: Could not find Java package '/usr/share/java/jlatexmath-fop-1.0.6.jar'. Some problems during the loading of the Java libraries occurred. This could lead to inconsistent behaviours. Please check SCI/etc/classpath.xml. 

我报告了关于这个的错误1767082 。

作为一种解决方法,我从Internet下载了所需的软件包并手动安装:

 cd ~/Downloads wget http://http.kali.org/pool/main/libj/libjlatexmath-java/libjlatexmath-fop-java_1.0.6-1_all.deb sudo apt-get install ./libjlatexmath-fop-java_1.0.6-1_all.deb --allow-downgrades sudo tee /etc/apt/preferences.d/pin-jlfop >/dev/null < 

之后,scilab通常从终端开始。

但它不是从GUI开始的(参见错误1739476 )。 我们需要在其桌面文件中添加控制终端来修复此错误:

 sudo sed -i 's/^Terminal=false$/Terminal=true/' /usr/share/applications/scilab.desktop 

注1:Scilab颜色主题与黑暗的Gtk主题不兼容,因此用户应该设置一个亮点 (这是错误1547561 ),例如RadianceRadiant-MATE

注2:由于HDF5的问题,Scilab ATOMS系统也被破坏(见错误1765503 )。


结论:Scilab 6.0.1软件包在Bionic Beaver存储库中被严重破坏,用户需要使用上述黑客来使其正常工作。 所有这些问题都发生在我报告错误报告官方地点的错误 - Launchpad之后。


*二进制下载方法(全function)

因此,如果您需要function齐全的Scilab,您应该从官方站点使用二进制存档6.0.1并运行以下命令(下载,解压缩,添加到PATH,设置shotcuts和MIME关联):

 mkdir ~/Software cd ~/Software wget http://www.scilab.org/download/6.0.1/scilab-6.0.1.bin.linux-x86_64.tar.gz tar -xzf scilab-6.0.1.bin.linux-x86_64.tar.gz cd scilab-6.0.1 echo "PATH=$PATH:/home/$USER/Software/scilab-6.0.1/bin" >> ~/.bashrc echo "PATH=$PATH:/home/$USER/Software/scilab-6.0.1/bin" >> ~/.profile mkdir -p ~/.local/share/applications sed -i 's/^Terminal=false$/Terminal=true/' ~/Software/scilab-6.0.1/share/applications/{scilab,scinotes,xcos}.desktop cp -a ~/Software/scilab-6.0.1/share/{icons,applications,mime} ~/.local/share/ update-mime-database ~/.local/share/mime/ 

如果你想让Scilab 5.5.2在Ubuntu 18.04.1 LTS上运行,请参阅其他答案 。

  1. 请访问http://www.scilab.org/en/download/6.0.1并下载例如scilab-6.0.1.bin.linux-x86_64.tar.gz

  2. 解压缩下载的存档并在以下位置运行可执行文件:

     sudo tar xvf ~/Downloads/scilab-6.0.1.bin.linux-x86_64.tar.gz cd scilab-6.0.1 cd bin ./scilab 

它适用于Ubuntu 18.04和Fedora 28。