开发者

Debugging symbols shipped on deploy

开发者 https://www.devze.com 2022-12-22 15:40 出处:网络
I wonder why software shall be deployed with its related debugging symbols. What are 开发者_JAVA技巧advantages and disadvantages? Are there code revealing issues (information security related issues)?

I wonder why software shall be deployed with its related debugging symbols. What are 开发者_JAVA技巧advantages and disadvantages? Are there code revealing issues (information security related issues)?


You can compile with or without debug info, or on unix systems, you can run strip to remove debugging info from a compiled executable.

A lack of debug info will:

  • shrink your binary size. Removing all the debug info can drop the file size by 50%
  • enable more compiler optimizations. Some compiler optimizations don't really work if you're still adding debug info.
  • make debugging harder.
    • You generally don't want to make it easier for your competitors and hackers to disassemble your product.
    • Although any core files will be less useful to developers.

So in general development, you want debug info, but for QA and release, you generally want to leave it out. If you supply libraries to customers that you trust more, you may be more inclined to leave it in.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号