What is the difference between `-fpic` and `-fPIC` gcc parameters?

I've already read the gcc manpage, but I still can't understand the difference between -fpic and -fPIC. Can someone explain it, in a very simple and clear way?


Related questions:

89
задан Community 23 May 2017 в 12:02
поделиться

1 ответ

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

Используйте -fPIC или -fpic , чтобы сгенерировать независимый от позиции код . Использование -fPIC или -fpic для генерации независимого от позиции кода зависит от цели. Выбор -fPIC всегда работает, но может дать больший код, чем -fpic (нужно помнить, что PIC имеет больший корпус, поэтому он может производить больший объем кода) . Использование опции -fpic обычно генерирует меньший и более быстрый код, но будет иметь ограничения, зависящие от платформы, такие как количество глобально видимых символов или размер кода. Компоновщик скажет вам, подходит ли он, когда вы создадите общую библиотеку. В случае сомнений я выбираю -fPIC , потому что он всегда работает.

104
ответ дан 24 November 2019 в 07:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: