从 C++ 二进制文件中剥离某些信息是否安全?
Is striping certain information from a C++ binary safe?
我是 C++ 的新手,正在尝试创建一个程序来读取 Linux 屏幕上的像素。
我目前在没有任何优化标志的情况下编译项目,因为我不确定它对程序做了什么,但这将是另一个问题,这是我的:
从 C++ 二进制文件中剥离某些信息是否安全?
我找到了一个可能有用的 manual page of strip
程序。
因为我真的不知道在这种情况下条带化意味着什么,我不确定它是否像条带化一样简单:
-s --strip-all Remove all symbol and relocation information
但是,当然,我希望程序能够完美运行,那么它是否会干扰程序的执行?
至于我剥离的动机:我想知道它是否安全,正如我已经说过的,我再说一遍:
I don't really know what striping means in this context.
我认为回答者也可以涵盖这一点。由我决定。
符号用于调试。
如果您删除它们,您的应用程序将继续运行而不会出现问题;但如果出现问题,您可能会发现更难调试。
重定位信息用于动态库加载和地址space布局随机化(谢谢@interjay);从 strip documentation
--remove-relocations=sectionpattern
... Note that using this option inappropriately may make the output file unusable. ...
我是 C++ 的新手,正在尝试创建一个程序来读取 Linux 屏幕上的像素。
我目前在没有任何优化标志的情况下编译项目,因为我不确定它对程序做了什么,但这将是另一个问题,这是我的:
从 C++ 二进制文件中剥离某些信息是否安全?
我找到了一个可能有用的 manual page of strip
程序。
因为我真的不知道在这种情况下条带化意味着什么,我不确定它是否像条带化一样简单:
-s --strip-all Remove all symbol and relocation information
但是,当然,我希望程序能够完美运行,那么它是否会干扰程序的执行?
至于我剥离的动机:我想知道它是否安全,正如我已经说过的,我再说一遍:
I don't really know what striping means in this context.
我认为回答者也可以涵盖这一点。由我决定。
符号用于调试。
如果您删除它们,您的应用程序将继续运行而不会出现问题;但如果出现问题,您可能会发现更难调试。
重定位信息用于动态库加载和地址space布局随机化(谢谢@interjay);从 strip documentation
--remove-relocations=sectionpattern
... Note that using this option inappropriately may make the output file unusable. ...