溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Unix 使用automake構(gòu)建工程

發(fā)布時間:2020-06-09 17:54:37 來源:億速云 閱讀:187 作者:元一 欄目:編程語言

automake

在Unix 上寫過程序的人一般都遇到過 Makefile,尤其是用 C 來開發(fā)程序的人。用 make 來開發(fā)和編譯程序的確很方便,可是要寫出一個MakeFile就不那么簡單了。偏偏介紹 Makefile 的文件不多,GNU Make 那份印出來要幾百頁的文件,光看完 Overview 自己就快要先Over了,難怪許多人聞 Unix色變。本文將介紹如何利用 GNU Autoconf 及 Automake 這兩套軟件來幫助『自動』產(chǎn)生 Makefile 文件,并且讓開發(fā)出來的的軟件可以象 Apache, MySQL 和常見的 GNU 軟件一樣,只要會 ``./configure'', ``make'', ``make install'' 就可以把程序安裝到系統(tǒng)中。如果您有心開發(fā) Open Source 的軟件,或只是想在 Unix 系統(tǒng)下寫寫程序。希望這份介紹文件能幫助您輕松的進(jìn)入 Unix Programming 的殿堂。

1.autoscan (autoconf):

掃描源代碼以搜尋普通的可移植性問題,比如檢查編譯器,庫,頭文件等,生成文件configure.scan,它是configure.ac的一個雛形。
然后直接將configure.scan該名為configure.ac,并編輯:configure.ac

2.aclocal (automake)

根據(jù)已經(jīng)安裝的宏,用戶定義宏和acinclude.m4文件中的宏將configure.ac文件所需要的宏集中定義到文件 aclocal.m4中。aclocal是一個perl 腳本程序.

3.automake

automake將Makefile.am中定義的結(jié)構(gòu)建立Makefile.in,然后configure腳本將生成的Makefile.in文件轉(zhuǎn)換 為Makefile

4.autoconf

將configure.ac中的宏展開,生成configure腳本。這個過程可能要用到aclocal.m4中定義的宏。

5.configure

./configure 生成Makefile

6.編譯

執(zhí)行make

問題:

1.如果make時候出現(xiàn)libtool版本不兼容問題:執(zhí)行 autoreconf -ivf 解決
2.LT_INIT : 再configure.ac腳本中,如果存在該宏定義,則動態(tài)可為跨平臺交叉編譯時候提供動態(tài)鏈接功能,但是需要將所需dll和可執(zhí)行程序一起打包

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI