Compiling
-fPIC 標誌系統範圍?
位置無關程式碼意味著生成的機器程式碼不依賴於位於特定地址才能工作。跳躍是相對的。
那麼
-fPIC
在 Linux 發行版中聲明系統範圍是否可以。特別是普通的英特爾 PC 機器?
首先,PIC 是編譯器問題,而不是 Linux 發行版問題。應該允許 PIC 設置為編譯器標誌,而不是全域硬編碼。並非所有機器架構都支持 PIC。如果您的建構是靜態的(非共享的),則不需要 PIC,而且它可能效率低下。某些體系結構/編譯器可能具有不同的等效標誌,例如,IBM xl 編譯器具有
-qpic
標誌。當您要求使用英特爾 PC 機器時,如果您碰巧為某些軟體包創建建構文件,則可能會限制它們的可移植性。