您好,登錄后才能下訂單哦!
本篇內容主要講解“Autoconf中rpm包的詳細制作步驟”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Autoconf中rpm包的詳細制作步驟”吧!
Autoconf rpm***步:
在root下建立目錄hello-cxf-1.0,然后在該目錄下新建子目錄src和doc(doc幾乎存放一些文檔,但在這里暫時為空)。
#mkdirhello-cxf-1.0
#cdhello-cxf-1.0
#mkdirsrc
#mkdirdoc
Autoconf rpm第二步:
在src目錄下編輯文件main.c
#cdsrc
#vimain.c
#include<stdio.h>
intmain(void)
{
printf("thisishello-cxf-1.0testing!\n");
return0;
}
Autoconf rpm第三步:
回到hello-cxf-1.0目錄下,編輯configure.ac(或者叫做configure.in)和Makefile.am文件。
configure.ac的例子:
AC_PREREG(2.59)
#AC_INIT(FULL-PACKAGE-NAME,VERSION,BUG-REPORT-ADDRESS)
AC_INIT(hello-cxf,1.0)
AM_INIT_AUTOMAKE([foreign])
AC_CONFIG_SRCDIR([src/main.c])
AC_CONFIG_HEADER([src/config.h])
#Checksforprograms.
AC_PROG_CC
#Checksforlibraries.
#Checksforheaderfiles.
#Checksfortypedefs,structures,andcompilercharacteristics.
#Checksforlibraryfunctions.
AC_CONFIG_FILES([Makefile
src/Makefile
doc/Makefile
])
AC_OUTPUT
Autoconf rpm第四步:
運行aclocal,它根據configure.ac或者configure.in生成一個“aclocal.m4”文件和一個緩沖文件夾autom4te.cache,該文件主要處理本地的宏定義。
在hello-cxf-1.0目錄下運行aclocal。
#aclocal
#ls
Autoconf rpm第五步:
運行autoconf,根據configure.ac和aclocal.m4生成configure腳本。
#autoconf
#ls
Autoconf rpm第六步:
運行autoheader,它負責生成config.h.in文件。該工具通常會從“acconfig.h”文件中復制用戶附加的符號定義。即autoheader根據configure.ac,運行m4,生成config.h.in(該文件名由AC_CONFIG_HEADER([src/config.h])的定義而定)
#autoheader
#ls
Autoconf rpm第七步:
使用automake根據Makefile.am和aclocal.m4生成Makefile.in文件,在這里使用選項“—adding-missing”可以讓automake自動添加有一些必需的腳本文件,如depcomp,install-sh,missing等。
#automake–adding-missing
Autoconf rpm第八步:
運行./configure根據makefile.in和config.h.in(如果有的話)生成makefile和config.h(如果有config.h.in)文件,及config.status,config.log用于記錄檢測到的一些狀態。即通過運行自動配置設置文件configure,把Makefile.in變成了最終的Makefile。
#./configure
#ls
其中,autoreconf相當于連續執行aclocalautoconfautoheaderautomake--add-missing。
第九步:
運行make,對配置文件Makefile進行測試一下。
#make
….
#ls
#lssrc/
可以看到,在src文件下面生成了main.c的輸出文件hello-cxf。
Autoconf rpm第十步:
運行生成的文件hello-cxf
#./src/hello-cxf
thisishello-cxf-1.0testing!
makedist-創建發布包:PACKAGE-VERSION.tar.gz.
到此,相信大家對“Autoconf中rpm包的詳細制作步驟”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。