【C++】c++filt

 

调试方法

c++filt 还原符号名:

 
echo "_ZN5hf3fsfuseRC..." | c++filt

这样能看到它到底是 hf3fs::fuse::RC::something,还是一个全局对象。

然后你就能判断:

  • 如果它是一个类方法 → 确认实现文件是否编进了 .so

  • 如果它是个全局对象 → 你可能在 .so 里引用了一个 主程序里才有的对象,但主程序没导出。解决方法是:

    • ganesha.nfsdCMakeLists.txt 里加 -Wl,--export-dynamic

    • 或者把需要的符号放到一个独立库里,.so 和主程序都链接它。

posted @ 2025-08-20 09:25  苏格拉底的落泪  阅读(20)  评论(0)    收藏  举报