Призначення: Параметр -fPIE подібний до -fPIC, але спеціально розроблений для створення виконуваних файлів, а не бібліотек. Він наказує компілятору створити
для всього виконуваного файлу, що покращує безпеку за допомогою таких механізмів, як рандомізація адресного простору (ASLR).
Параметри компілятора -fPIC і -fpic колекції компіляторів GNU (GCC) служать тій самій меті, а саме створенню позиційно-незалежного коду (PIC). Різниця між двома варіантами полягає в тому -fPIC більш агресивний, ніж -fpic, щодо розміру коду, використання пам'яті та продуктивності.
З прапором -fpic або -fPIC, gcc створює об'єктний файл із позиційно-незалежним кодом. Зазвичай це необхідно при створенні спільного об’єкта.
позиційно-незалежний код -fPIC є прапорцем для компілятора C gcc, який створює код, незалежний від позиції.');})();(функція(){window.jsl.dh('4APtZtHFOY6XwbkP2MmF6Q4__26','
Коли спільний об’єкт створено з позиційно-незалежного коду, Переміщувані посилання генеруються як непрямі дані через дані в сегменті даних спільного об’єкта. Код у текстовому сегменті не потребує змін. Усі оновлення переміщення застосовуються до відповідних записів у сегменті даних.
На деяких архітектурах, включаючи x86, –fPIC генерує набагато гірший код (тобто виклик функції) для завантаження/збереження даних. Хоча це допустимо для бібліотек, це небажано для виконуваних файлів.