ffreestanding
gcc 中有什么?它是干什么用的 ?我遇到了以下情况:
gcc -ffreestanding -m32 -c kernel.c -o kernel.o
并且不明白,这到底是什么意思。
ffreestanding
gcc 中有什么?它是干什么用的 ?我遇到了以下情况:
gcc -ffreestanding -m32 -c kernel.c -o kernel.o
并且不明白,这到底是什么意思。
环境是标准库可能不存在的freestanding
环境,程序启动可能不一定在“主”。该选项-ffreestanding
指示编译器不假定标准函数具有其通常的定义。
默认情况下,GCC 将充当托管实现的编译器,定义__STDC_HOSTED__
为 1 并假定使用 ISO C 函数的名称时,它们具有标准中定义的语义。要使其充当独立环境的符合标准的独立实现,请使用选项-ffreestanding
. 然后它将定义__STDC_HOSTED__
为 0,并且不对标准库中函数名称的含义做出假设。
有关更多信息,此链接可能会有所帮助。