[英]Symbol Look up error: undefined symbol: _ZNSt8messagesIwE2idE
我有一個使用gcc 4.9.2構建的應用程序。 我已將libstdc ++和libgcc靜態鏈接以解決兼容性問題。 該程序在我測試過的許多Linux發行版中都能正常運行。 但是在一個系統中,我發現以下錯誤
Symbol Look up error: undefined symbol: _ZNSt8messagesIwE2idE
我在錯誤的結果上運行了c ++ filt
回聲_ZNSt8messagesIwE2idE | C ++ FILT
std::messages<wchar_t>::id
運行文件命令給出以下結果
文件應用
app: ELF 32-bit LSB executable, Intel 80386, version 1 (GNU/Linux), for GNU/Linux 2.6.32, dynamically linked (uses shared libs), for GNU/Linux 2.6.32, not stripped
運行ldd給出
ldd應用不是動態可執行文件
但這是一個動態的可執行文件。 同一文件在其他類似計算機上運行。
優柔寡斷
優名
Linux el-rhel5-1 2.6.18-164.el5PAE #1 SMP Tue Aug 18 15:59:11 EDT 2009 i686 i686 i386 GNU/Linux
謝謝。
為什么我得到“不是動態可執行文件”消息,即使它是可執行文件?
如果無法識別文件格式或發生其他錯誤, ldd
也會顯示該消息。
您確定文件與其他計算機上的文件完全相同嗎? 您可以使用md5sum
來驗證每台計算機上的md5sum
是否相同,並且在ldd
無法讀取它的計算機上沒有損壞,並且它給出了符號查找錯誤。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.