GCC能否为独立环境创建位置无关的代码?
我一直认为位置无关代码(PIC)的生成基本上只取决于编译的CPU。但是,在阅读了以下内容后: 对于386,GCC支持System V的PIC,但不支持Sun 386i (声明创建PIC的能力取决于操作系统),我想知道:GCC能否为独立环境创建位置无关的代码?,c,gcc,freestanding,C,Gcc,Freestanding,我一直认为位置无关代码(PIC)的生成基本上只取决于编译的CPU。但是,在阅读了以下内容后: 对于386,GCC支持System V的PIC,但不支持Sun 386i (声明创建PIC的能力取决于操作系统),我想知道: 在没有操作系统的情况下,GCC能否为独立环境创建位置无关的代码?是。用于嵌入式系统的gcc交叉编译器将创建PIC。在386i上运行的有20年历史的Solaris版本可能不支持PIC。相关信息如下。简而言之,gcc无法使用本机工具(如汇编程序、链接器和动态加载程序)生成可在386i
在没有操作系统的情况下,GCC能否为独立环境创建位置无关的代码?是。用于嵌入式系统的gcc交叉编译器将创建PIC。在386i上运行的有20年历史的Solaris版本可能不支持PIC。相关信息如下。简而言之,gcc无法使用本机工具(如汇编程序、链接器和动态加载程序)生成可在386i上使用的PIC代码。如果您负责将PIC代码加载到目标计算机上,GCC可以为无操作系统的环境生成PIC代码。那么386i是另一种计算机吗?在我看来,文档中的词语选择不当。不,不是。这是一种不同的操作系统。那么为什么FAQ会说“386i上唯一运行的操作系统是Sun操作系统”?