![/usr/local/bin 中不存在可執行文件,但 /usr/bin 中存在可執行文件,但仍失敗](https://rvso.com/image/1289061/%2Fusr%2Flocal%2Fbin%20%E4%B8%AD%E4%B8%8D%E5%AD%98%E5%9C%A8%E5%8F%AF%E5%9F%B7%E8%A1%8C%E6%96%87%E4%BB%B6%EF%BC%8C%E4%BD%86%20%2Fusr%2Fbin%20%E4%B8%AD%E5%AD%98%E5%9C%A8%E5%8F%AF%E5%9F%B7%E8%A1%8C%E6%96%87%E4%BB%B6%EF%BC%8C%E4%BD%86%E4%BB%8D%E5%A4%B1%E6%95%97.png)
我必須為某個補丁手動編譯 wine,但我不再需要它了。
所以我做了一個make distclean
(我想我應該從一開始就做一個make uninstall
,但哦,好吧)它仍然在那裡。可執行檔位於/usr/local/bin/wine
另一個可執行檔位於 中/usr/bin
,因此我認為只需刪除另一個可執行檔即可解決此問題。
它沒。
為什麼不?我該如何解決它?
答案1
在你的$PATH
,/usr/local/bin
是之前/usr/bin
。因此,將首先找到並調用 中不需要的可執行文件,/usr/local/bin
而不是 中的同名所需可執行文件/usr/bin
。
以 root 身分(使用sudo
或su
)從 中刪除不需要的可執行檔/usr/local/bin
。
更新:
訊息
bash: /usr/local/bin/wine: Bestand of map bestaat niet
意味著命令或腳本明確嘗試wine
使用錯誤的路徑執行/usr/local/bin/wine
。
如果您鍵入了foo
產生此訊息的某個命令,請使用which foo
來尋找該命令的位置,然後使用file /full/path/to/foo
來查找它是否是您可以編輯、刪除或替換的腳本。