【问题标题】:Difference between pic Vs pie [duplicate]图片与馅饼之间的区别[重复]
【发布时间】:2013-04-08 01:35:57
【问题描述】:

我正在寻找二进制加密代码生成的选项,并找到了两个可用的选项,即 PIC 和 PIE。我试图找到两者之间的差异,但没有找到合适的文章。如果有人可以用专业人士和玉米的例子来解释区别,或者提供好文章的链接,那就太好了。

我的基本动机是保护编译后的代码,因为 ELF/PE 格式可能会受到病毒的攻击,也可能被黑客入侵,或者借助反向技术可以重新生成代码。还请提供任何其他方法来保护已编译代码免受攻击和 d-compling。

我通过 Cygwin 使用 GCC 编译器来构建跨平台应用程序。

【问题讨论】:

标签: c++ c shared-libraries linker-flags


【解决方案1】:

来自gcc documentation

-fpic
生成适合在共享库中使用的与位置无关的代码 (PIC)...

-fpie
这些选项与 -fpic 和 -fPIC 类似,但生成的与位置无关的代码只能链接到可执行文件中......

【讨论】:

  • 喜欢阅读手册页并出于好奇而在谷歌上搜索更多信息并再次查看手册页
  • @AustinAdams - OP 似乎对这个答案很满意。你有更具体的事情想知道吗?也许在这里提出一个新问题是解决这个问题的好方法?
  • 我怀疑上面第一条评论中的链接答案恰好比这里提供的答案更好地回答了这个问题。
  • @CarlNorum 这是 Google 搜索 fPIC vs -fpie 的第一个结果。应该利用这个机会使答案更有帮助。
  • 这是一个更好的答案:stackoverflow.com/a/5030518/995714(特别是它确实解释了这个答案没有做的区别。)
猜你喜欢
  • 2019-03-05
  • 2012-02-08
  • 1970-01-01
  • 1970-01-01
  • 2019-06-22
  • 2014-08-16
  • 2011-04-08
  • 2012-11-24
  • 2013-06-05
相关资源
最近更新 更多