Ubuntu 18.04でのMatlabアプリケーションコマンドエイリアス生成エラー

Ubuntu 18.04でのMatlabアプリケーションコマンドエイリアス生成エラー

Ubuntu 18.04 PCにMATLAB 2017bをインストールし、次のように実行できます.

sudo /usr/local/MATLAB/R2017b/bin/matlab -desktop

また、今後ある時点で別のバージョンをインストールする予定です。

matlab2017bコマンドスタイルのターミナルランチャー(geditたとえば、他のアプリケーションを実行できる)を作成しようとしています。

sudo cp /usr/local/MATLAB/R2017b/bin/matlab /usr/local/sbin/matlab2017b

エラーが発生します。

/usr/local/sbin/matlab2017b: 454: .: Can't open /usr/local/bin/util/arch.sh

また、次のようにbashエイリアスを作成してみました~/.bashrc

alias matlab2017b='/usr/local/MATLAB/R2017b/bin/matlab'

また、上記と同じエラーが発生します。

ここで何の問題がありますか? $PATH内の任意のパスに実行可能ファイルを配置するだけでは十分ではありませんか?を実行して端末で実行する方法はmatlab2017b

答え1

スクリプトmatlabはスクリプトの場所を検索してMatlabディレクトリを見つけようとします(例:シンボリックリンクを介して実行すると、現在のスクリプトへのパスを取得します。)。スクリプトを別の場所にコピーすると失敗しますが、広く使用されているソリューションはシンボリックリンクをサポートしているため、シンボリックリンクを試すことができます。

sudo ln -sf /usr/local/MATLAB/R2017b/bin/matlab /usr/local/sbin/matlab2017b

関連情報