Go 的 Makefile 中出現權限被拒絕錯誤
儘管成功運行了「go run」。直接地,使用者在呼叫「make run」透過 Makefile 執行相同的指令時會遇到權限被拒絕的錯誤。這種差異可以歸因於 GNU make 中的一個微妙之處,正如“make -d”調試輸出所揭示的那樣。
當 GNU make 嘗試定位 go 執行檔時,就會出現問題。如果 PATH 環境變數中指定的目錄(位於包含可執行檔的實際目錄之前)中存在名為「go」的目錄,GNU make 將錯誤地定位該目錄而不是可執行檔。
例如,如果目錄「/usr/bin/go/」存在且「/usr/bin」在PATH 中,GNU make 在嘗試執行「go run .」時會遇到權限被拒絕的錯誤。要解決此問題,請確保您的 PATH 不包含任何帶有“go”子目錄的目錄。
如果從 PATH 中刪除有問題的目錄不可行,您可以透過新增分號「;」到 Makefile 目標定義。這可確保正確解析 go 可執行文件,從而解決權限被拒絕的錯誤。
run: go run . ;
以上是為什麼涉及「go run」的 Makefile 指令會導致權限被拒絕錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!