假设我有某个程序的源代码,该源代码使用 GNU 自动工具,为了简单起见,假设该程序绝不是任何类型的开发工具。如果我有一个方便的交叉工具链,我可以configure
针对平台进行交叉编译fooproc-barvendor-bazos
使用--host
option:
./configure --host=fooproc-barvendor-bazos
然而,在包括 Linux 2.6 在内的各种源代码构建所采用的安静(呃)输出风格中,
HOSTCC foo.c
意味着 foo.c 是使用我正在构建的系统的本机编译器构建的,以区别于
CC bar.c
这意味着 bar.c 正在使用交叉编译器为我正在为其构建程序的系统构建。
我是否在某处感到困惑,或者“主持人”是否在HOSTCC
只是不是意义上的主机./configure --host
?
autoconf https://www.gnu.org/software/autoconf//automake https://www.gnu.org/software/automake/确实没有主机编译器的概念。$CC
始终是目标编译器。如果你曾经看到$HOSTCC
,它是您正在查看的包的开发人员手动添加的。
--host
指定生成的程序要在什么主机类型上运行。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)