Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/sharepoint/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
什么';gcc中--host和--target的区别是什么?_Gcc_Cross Compiling - Fatal编程技术网

什么';gcc中--host和--target的区别是什么?

什么';gcc中--host和--target的区别是什么?,gcc,cross-compiling,Gcc,Cross Compiling,构建知道三个系统名称: 你正在构建的机器,你正在构建的机器 为(主机)和GCC将生产的机器构建 (目标)的代码。配置GCC时,需要指定 它们具有“--build=”、“--host=”和“--target=” 不是您为之构建的机器吗和不是GCC将要构建的机器吗 是否为同一事物生成代码?区别是什么?根据“配置术语”,“主机”和“目标”之间的区别仅适用于为不同的机器构建GCC交叉编译器 可以将gcc构建为交叉编译器。也就是说,您可以构建一个在一个体系结构(主机)上运行,但为另一个体系结构(目标)生成

构建知道三个系统名称: 你正在构建的机器,你正在构建的机器 为(主机)和GCC将生产的机器构建 (目标)的代码。配置GCC时,需要指定 它们具有“--build=”、“--host=”和“--target=”

不是您为之构建的机器吗
不是GCC将要构建的机器吗
是否为同一事物生成代码?区别是什么?

根据“配置术语”,“主机”和“目标”之间的区别仅适用于为不同的机器构建GCC交叉编译器


可以将gcc构建为交叉编译器。也就是说,您可以构建一个在一个体系结构(主机)上运行,但为另一个体系结构(目标)生成代码的gcc

在为嵌入式平台构建代码时,您经常会遇到这种情况。如果你在冰箱里为处理器编写代码,你可能会想把它放在桌面上,而不是冰箱里


有些人使用交叉编译器为同一体系结构上的不同操作系统构建代码。例如,可以使用工具链从Linux主机上以Windows为目标。

可能与之重复,因此,对于冰箱类比,主机是我们的桌面,目标是冰箱?如果我错了,请纠正我。。想到这篇文章,我只想说这似乎是一个错误的答案。。如果我们准备将gcc作为冰箱的编译器,那么host=fredge将是合适的。我现在很困惑,因为有7个以上的投票。build=我在哪里编译编译器,host=编译器将在哪里运行,target=编译器将生成什么代码。如果我在我的桌面上构建一个新的编译器,它将在我的桌面上运行并为我的冰箱生成代码,那么build=desktop,host=desktop,target=fredge。