我已经阅读了gcc联机帮助页,但仍然无法理解-fpic-fPIC之间的区别。有人可以用非常简单清晰的方式解释它吗?

相关问题:

  • What does -fPIC mean when building a shared library?
  • What, if any, are the implications of compiling objects with gcc -fPIC flag if they get used in executables?
  • 最佳答案

    http://tldp.org/HOWTO/Program-Library-HOWTO/shared-libraries.html

    使用-fPIC-fpic生成与位置无关的代码。使用-fPIC还是-fpic生成与位置无关的代码取决于目标。 -fPIC选择始终有效,但可能会产生比-fpic更大的代码(要记住这是PIC的情况更大,因此可能会产生更多的代码)。使用-fpic选项通常会生成更小,更快的代码,但是将具有与平台有关的限制,例如全局可见符号的数量或代码的大小。创建共享库时,链接器将告诉您是否适合。如有疑问,我选择-fPIC,因为它始终有效。

    关于gcc - `-fpic`和 `-fPIC` gcc参数有什么区别?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3544035/

    10-12 00:17