Linux 中的 autoreconf 命令和示例
autoreconf是一个Autotool ,用于为类 Unix 系统创建可自动构建的源代码。 Autotool是 autoconf 、 automake等的通用名称。这些统称为Autotools 。
要点:
- 通过自动构建功能提供源代码包的可移植性。
- 提供常见的构建工具,如make install 。
- C/C++ 的自动依赖项生成。
句法:
autoreconf [OPTION]... [DIRECTORY]...
选项:
- -h, –help :打印帮助信息并退出。
- -V, –version :用于显示版本号,然后退出。
- -v, –verbose :详细报告处理。
- -d, –debug :不要删除临时文件。
- -f, –force :此选项用于考虑所有文件已过时。
- -i, –install :复制丢失的辅助文件。
- –no-recursive :不要重建子包。
- -s, –symlink :使用-i选项,它用于安装符号链接而不是副本。
- -m, –make :适用时,重新运行./configure && make。
注意: Autotools 用于制作可自动构建的源代码以用于分发目的。
重要配置文件:
- configure.ac :描述autoreconf 的配置。
- Makefile.am:描述程序文件的来源和automake 的编译器标志。
- 第一步:创建一个目录和一个C程序文件。
你好,世界计划
#include
void main()
{
printf("Hello, World");
}
- 第 2 步:为autoreconf制作一个configure.ac文件。
# initialize the process
AC_INIT([hello], [0.01])
# make config headers
AC_CONFIG_HEADERS([config.h])
#Auxiliary files go here
AC_CONFIG_AUX_DIR([build-aux])
# init automake
AM_INIT_AUTOMAKE([1.11])
#configure and create "Makefile"
AC_CONFIG_FILES([Makefile])
#find and probe C compiler
AC_PROG_CC
#End
AC_OUTPUT
- 第 3 步:为automake制作一个Makefile.am 。
#list of programs to be installed in bin directory
bin_PROGRAMS = hello
#sources for targets
hello_SOURCES = hello.c
- 第 4 步:在终端上运行以下命令。它会给出一个错误,因为它是用于分发目的,并且 VCS(版本控制系统)应该有一些标准的许可证文件。
- 第 5 步:让我们制作许可证文件。
- 第 6 步:重试
- 第 6 步:现在,让我们运行程序。看,现在你好,世界被打印在屏幕上