我通过将 Julia 解压到一个文件夹中来在本地安装它。然后我尝试将可执行文件添加到,/usr/local/bin
因为我不想修改$PATH
。
sudo ln -s bin/julia-1.5.3/bin/julia /usr/local/bin/julia
如果我现在在新 shell 窗口中执行 Julia,则会弹出以下消息:
$ julia
zsh: command not found: julia
$ ls -l /usr/local/bin/
total 12
lrwxrwxrwx 1 root root 25 Jan 1 10:08 julia -> bin/julia-1.5.3/bin/julia
显然符号链接存在,但我的 shell 却告诉我未找到命令。这里的问题是什么?
答案1
解决方案相当简单。使用绝对符号链接这里的第一个参数ln -s
是一个完整路径。
sudo ln -s /home/user/bin/julia-1.5.3/bin/julia /usr/local/bin/julia
现在它正确打开并按预期执行。
第二个更复杂的解决方案是使用相对符号链接。但是它必须与将要创建符号链接的文件夹相关。因此,从/usr/local/bin
1 开始必须向上移动三个文件夹/
,然后下降到相应的文件夹。
sudo ln -s ../../../home/user/bin/julia-1.5.3/bin/julia /usr/local/bin/julia
更新:以下评论是正确的,我相应地编辑了答案。相对符号链接很好,存在是有充分理由的,但在这里它们没有任何意义,因为它们使路径变得非常复杂。