交叉编译

build/host/target

一般可以这么使用在gcc,gdb

./configure --build=编译平台 --host=运行平台 --target=目标平台 [各种编译参数]
参数 说明
build 当前的计算机环境 该参数在不指定的情况下将自动常识猜测目前平台的名称
host 编译出来的程序要在哪里运行 当不指定时host将自动使用build来定义自己
target 编译出来的一个新的编译器(gcc/gdb/binutils)它编译的程序在哪运行

mark

//https://blog.csdn.net/ChrisNiu1984/article/details/6620709
我有一个x86计算机,它上面工具很全,至少有gcc。这时我有了一个arm处理器的上网本。

我想为我的arm上网本写点程序,但是因为上网本性能很差我不想在arm上开发编译,于是我就想在自己电脑上开发然后copy过去给他用。这时我就需要一个在我的x86(build)上编译一个“可以在我x86(host)本机上运行的gcc,这个新gcc编出来的程序是可以在arm(target)上运行的”。 此时选项为 build=x86,host=x86,target = arm。
此时我用这个gcc编译一个helloworld,这个helloworld的build=x86,host=arm

后来我又得到了一个超强服务器计算机,假设框架叫Super。我想用服务器编译比用我的x86要快的多,于是我就想在Super上用Gcc编译arm程序。但是我怎么得到在Super上能跑起来的gcc呢?当然是自己编译。于是我就需要在我的x86(build)上编译一个能在Super(host)上运行的gcc,而且它编出来的程序是在arm(target)上运行。此时选项为 build=x86,host=Super,target = arm。
此时我用这个gcc编译一个helloworld,这个helloworld的build=Super,host=arm

prefix

使用这个参数,可以指定安装的目录

make install prefix=$PWD/tmp
或者
./configure  -prefix=/usr/xxx

参考链接

arm-none-linux-gnueabi- 环境搭建

工具链下载

posted @ 2019-01-28 20:06  zongzi10010  阅读(337)  评论(0编辑  收藏  举报