我們經常在執行二進制bin程序時,會遇到提示not found/no such file or directory/not executable等錯誤信息,在什么情況下會出現這種問題呢,我們一起羅列下幾種常見的幾種場景:
1.可執行bin程序確實不存在
這個錯誤就比較低級了,你的可執行bin沒有打包或者拷貝進來,執行的時候,自然找不到了
2.可執行bin程序的路徑不對
我們的bin不在$PATH包含的路徑中,無法自動找到,則需要加上完整的路徑執行
3.可執行程序bin為動態鏈接,且系統沒有動態加載器
helloworld為動態鏈接,且系統沒有/system/bin/linker
4.交叉編譯器類型不相同
其中hello_world為x86編譯的bin程序,無法在arm架構上運行
5.64位的bin程序運行在32位的系統
6.可執行程序bin為動態鏈接,缺少依賴的動態庫
7.可執行程序bin存在,但是可執行bin為符合鏈接,源文件已經刪除
8.可執行成bin存在,為動態鏈接,所依賴的動態庫為符合鏈接,動態庫鏈接的源文件已經刪除