即使使用条带和优化标签,目标文件 (.o) 和共享对象 (.so) 也太大

问题描述

我正在尝试使用 ctypescdll.LoadLibrary 在我的 Python 代码中使用几个 C++ 函数。为此,我创建了 .so 文件.cpp,但大小太大 - .cpp 文件为 8 kB,但 .so 为 1.5 MB。尝试使用 strip -g-O2 进行优化,但大小仅减少到 800 kB。即使对于简单的 helloworld.cpp(100 字节),对应的 .so 也是 9 kB。我已经尝试了以下类似的结果:

  • g++ -std=c++11 -o eval.o -c -fpic eval.cpp 后跟 g++ -shared -o eval.so eval.o
  • g++ -std=c++11 -o eval.so -shared -fpic eval.cpp

Helloworld.cpp and its large .so file

创建小型共享对象的最佳方法是什么?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)