我使用GNAT Ada編譯器GNAT不完整安裝的系統。腳本(在gdb testsuite中)找到/usr/bin/gnatmake
並假定它可以運行Ada編譯。這些失敗是因爲鏈接程序找不到libgnat.so
。
我沒有root權限,所以我無法安裝libgnat.so
或刪除/usr/bin/gnatmake
。
有什麼辦法可以阻止腳本在/usr/bin
中找到gnatmake?我顯然無法從路徑中刪除/usr/bin
。
我使用GNAT Ada編譯器GNAT不完整安裝的系統。腳本(在gdb testsuite中)找到/usr/bin/gnatmake
並假定它可以運行Ada編譯。這些失敗是因爲鏈接程序找不到libgnat.so
。
我沒有root權限,所以我無法安裝libgnat.so
或刪除/usr/bin/gnatmake
。
有什麼辦法可以阻止腳本在/usr/bin
中找到gnatmake?我顯然無法從路徑中刪除/usr/bin
。
你能安裝一個私人的工作版本gnatmake
嗎?
如果可以的話,那麼你就可以在你的$HOME/bin
目錄創建符號鏈接的gnatmake
工作版本:
ln -s /path/to/real/gnatmake ~/bin/gnatmake
然後插入自己$HOME/bin
目錄複製到您的$PATH
:
export PATH="$HOME/bin:$PATH"
現在shell會在/usr/bin
之前找到您的版本gnatmake
。
嘗試sudo
作爲自己的腳本(sudo -u you ./script
)。如果您不允許登錄sudo
,則還可以嘗試exec VAR=val ./script
。第三種方法是將另一個目錄添加到$PATH
,並使用「假」空腳本來隱藏ADA文件。
設置CHMOD權限 – 2012-03-02 19:52:21
難道你不能配置你的腳本調用,或者改變它,以便你的'/ usr/bin/gnatmake'被忽略嗎?或者你不能把'/ usr/bin'放在你的路徑上嗎? – 2012-03-02 19:52:28
@Sam:那是怎麼回事? – 2012-03-02 19:53:09