我正在使用一个GNU Ada编译器GNAT不完整安装的系统。脚本(在gdb testsuite中)找到/usr/bin/gnatmake
并假设它可以运行Ada编译。这些失败是因为链接器找不到libgnat.so
。
我没有root访问权限,因此无法安装libgnat.so
或删除/usr/bin/gnatmake
。
有没有办法阻止脚本在/usr/bin
中找到gnatmake?我显然无法从路径中删除/usr/bin
。
答案 0 :(得分:2)
您可以安装gnatmake
的私有工作版吗?
如果可以,那么您可以在gnatmake
目录中为$HOME/bin
的工作版本创建符号链接:
ln -s /path/to/real/gnatmake ~/bin/gnatmake
然后将您自己的$HOME/bin
目录插入$PATH
:
export PATH="$HOME/bin:$PATH"
现在,shell会在gnatmake
之前找到您的/usr/bin
版本。
答案 1 :(得分:0)
尝试sudo
脚本作为您自己(sudo -u you ./script
)。如果您不允许sudo
,也可以尝试exec VAR=val ./script
。第三种方法是使用“假”空脚本向$PATH
添加另一个目录,以遮蔽ADA文件。