码迷,mamicode.com
首页 > 其他好文 > 详细

configure生成makefile的配置项说明

时间:2019-10-01 20:12:04      阅读:137      评论:0      收藏:0      [点我收藏+]

标签:spec   否则   uniq   tps   收集   article   ade   说明   安装   

编译出来的二进制程序所执行的主机,因为绝大多数是本机编译,本机执行,所以这个值就等于build。
只有交叉编译的时候(也就是本机编译,其他系统机器执行)才会build和host不同。
用host指定要编译的程序运行主机。

target
这个选项只有在建立交叉编译环境的时候用到,正常编译和交叉编译都不会用到。
它用build主机上的编译器,编译一个新的编译器(binutils, gcc,gdb等),这个新的编译器将交叉编译出来的其他程序 运行在target指定的系统上。
用target来指定生成交叉编译器时 交叉编译器编译的程序运行的平台。

如下举例说明:
1. `./configure --build=mipsel-linux --host=mipsel-linux --target=mipsel-linux‘ 
说明我们利用mipsel-linux的编译器对binutils进行编译,编译出来的binutils运行在mipsel-linux,这个binutils用来编译能够在mipsel-linux运行的代码。
“当然没有人会用这个选项来编译binutils”
 
2. `./configure --build=i386-linux --host=mipsel-linux --target=mipsel-linux‘ will cross-build native mipsel-linux binutils oni386-linux.
说明我们利用i386-linux的编译器对binutils进行编译,编译出来的binutils运行在mipsel-linux,这个binutils用来编译能够在mipsel-linux运行的代码。
“这个选项可以用来为其他的机器编译它的编译器”。
 
3. `./configure --build=i386-linux --host=i386-linux --target=mipsel-linux‘ will build mipsel-linux cross-binutils on i386-linux.
说明我们利用i386-linux的编译器对binutils进行编译,编译出来的binutils运行在i386-linux,这个binutils用来编译能够在mipsel-linux运行的代码。
“这个选项用来在i386主机上建立一个mipsel-linux的交叉编译环境”。
 
4. `./configure --build=mipsel-linux --host=i386-linux --target=mipsel-linux‘ will cross-build mipsel-linux cross-binutils for i386-linux on mipsel-linux.

说明我们利用mipsel-linux的编译器对binutils进行编译,编译出来的binutils运行在i386-linux,这个binutils用来编译能够在mipsel-linux运行的代码。

“这个选项可以用来在i386主机上建立一个mipsel-linux的交叉编译环境,但是交叉编译环境在mipsel-linux 编译出来,安装到i386-linux主机上,估计没有多少人会这么用吧”

总的来说,只有host !=build的时候编译才是交叉编译,否则就是正常编译。

 

参考:

1. ./configure -build,-host,-target设置

configure生成makefile的配置项说明

标签:spec   否则   uniq   tps   收集   article   ade   说明   安装   

原文地址:https://www.cnblogs.com/embedded-linux/p/11615855.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!