LD_PRELOAD 未使用正確的庫

LD_PRELOAD 未使用正確的庫

我正在嘗試覆蓋可執行檔中的動態連結。

我有一個可執行的“程序”

命令:

ldd program 

輸出:libstdc++.so.6 => /lib64/libstdc++.so.6

我有一個圖書館:

ldd a.so

輸出:libstdc++.so.6 => /mydir/libstdc++.so.6

我嘗試透過執行以下操作來覆蓋可執行程式中的連結:

setenv LD_PRELOAD a.so

現在,當我運行我的可執行檔時,我得到:

/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found

為什麼它要嘗試閱讀libstdc++.so.6/lib64/libstdc++.so.6並不是/mydir/libstdc++.so.6

相關內容