2021-09-02 21:22:27 +08:00
|
|
|
|
# Autoconf 简易说明
|
|
|
|
|
|
|
|
|
|
## 1. Configure 编译配置选项
|
2021-09-02 17:45:49 +08:00
|
|
|
|
|
|
|
|
|
Configure 脚本是 Autoconf 工具的基本应用。
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
autoreconf -fvi
|
|
|
|
|
# 或
|
|
|
|
|
autogen.sh
|
|
|
|
|
|
2021-09-02 21:22:27 +08:00
|
|
|
|
./configure CFLAGS='-O3 -fomit-frame-pointer' [其他各种可选参数...]
|
2021-09-02 17:45:49 +08:00
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
可选参数如下:
|
|
|
|
|
|
2021-09-02 21:22:27 +08:00
|
|
|
|
### 1.1. --build
|
2021-09-02 17:45:49 +08:00
|
|
|
|
|
|
|
|
|
执行代码编译的主机,可选项如下:
|
|
|
|
|
|
|
|
|
|
* arm-linux
|
|
|
|
|
* x86-64-linux
|
|
|
|
|
* i386-linux
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
./configure --build=arm-linux
|
|
|
|
|
```
|
|
|
|
|
|
2021-09-02 21:22:27 +08:00
|
|
|
|
### 1.2. --host
|
2021-09-02 17:45:49 +08:00
|
|
|
|
|
|
|
|
|
指定该软件将运行的平台,可选项与 --build 一致。
|
|
|
|
|
|
|
|
|
|
示例如下:
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
./configure --host=arm-linux
|
|
|
|
|
```
|
|
|
|
|
|
2021-09-02 21:22:27 +08:00
|
|
|
|
### 1.3. --target
|
2021-09-02 17:45:49 +08:00
|
|
|
|
|
|
|
|
|
这个选项只有在建立交叉编译环境的时候用到,正常编译和交叉编译都不会用到。他用 build 主机上的编译器,编译一个新的编译器(binutils, gcc,gdb 等),这个新的编译器将来编译出来的其他程序将运行在 target 指定的系统上。
|
|
|
|
|
|
2021-09-02 21:22:27 +08:00
|
|
|
|
### 1.4. --prefix
|
2021-09-02 17:45:49 +08:00
|
|
|
|
|
|
|
|
|
指定 install 路径,比如:
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
./configure --prefix=$(pwd)/install
|
|
|
|
|
```
|
2021-09-02 21:22:27 +08:00
|
|
|
|
|
|
|
|
|
### 1.5. --exec-prefix
|
|
|
|
|
|
|
|
|
|
指定与架构有关的输出到该目录下,默认等于 --prefix。
|
|
|
|
|
|
|
|
|
|
### 1.6. --enable-debug/--disable-debug
|
|
|
|
|
|
|
|
|
|
使能/禁能 debug 调试信息,相当于控制 -g 参数。
|
|
|
|
|
|
|
|
|
|
### 1.7. --enable-strip/--disable-strip
|
|
|
|
|
|
|
|
|
|
gcc strip 使能/禁能。
|
|
|
|
|
|
|
|
|
|
## 2. 编译目标
|
|
|
|
|
|
|
|
|
|
* make install
|
|
|
|
|
* make install-strip
|
|
|
|
|
* make uninstall
|