新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > Linux下C編程基礎之:使用autotools

        Linux下C編程基礎之:使用autotools

        作者: 時間:2013-09-13 來源:網絡 收藏

        本文引用地址:http://www.104case.com/article/257148.htm

        3.6.2使用所生成的makefile

        生成的makefile除具有普通的編譯功能外,還具有以下主要功能(感興趣的讀者可以查看這個簡單的hello.c程序的makefile)。

        1.make

        鍵入make默認執行“makeall”命令,即目標體為all,其執行情況如下所示:

        [root@localhostautomake]#make

        ifgcc-DPACKAGE_NAME=\-DPACKAGE_TARNAME=\-DPACKAGE_VERSION=\-DPACKAGE_STRING=\-DPACKAGE_BUGREPORT=\-DPACKAGE=hello-DVERSION=1.0-I.-I.-g-O2-MThello.o-MD-MP-MF.deps/hello.Tpo-c-ohello.ohello.c;

        thenmv-f.deps/hello.Tpo.deps/hello.Po;elserm-f.deps/hello.Tpo;exit1;fi

        gcc-g-O2-ohellohello.o

        此時在本目錄下就生成了可執行文件“hello”,運行“./hello”能出現正常結果,如下所示:

        [root@localhostautomake]#./hello

        Hello!Autoconf!

        2.makeinstall

        此時,會把該程序安裝到系統目錄中去,如下所示:

        [root@localhostautomake]#makeinstall

        ifgcc-DPACKAGE_NAME=\-DPACKAGE_TARNAME=\-DPACKAGE_VERSION=\-DPACKAGE_STRING=\-DPACKAGE_BUGREPORT=\-DPACKAGE=hello-DVERSION=1.0-I.-I.-g-O2-MThello.o-MD-MP-MF.deps/hello.Tpo-c-ohello.ohello.c;

        thenmv-f.deps/hello.Tpo.deps/hello.Po;elserm-f.deps/hello.Tpo;exit1;fi

        gcc-g-O2-ohellohello.o

        make[1]:Enteringdirectory'/root/workplace/automake'

        test-z/usr/local/bin||mkdir-p--/usr/local/bin

        /usr/bin/install-c'hello'/usr/local/bin/hello

        make[1]:Nothingtobedonefor'install-data-am'.

        make[1]:Leavingdirectory'/root/workplace/automake'

        此時,若直接運行hello,也能出現正確結果,如下所示:

        [root@localhostautomake]#hello

        Hello!Autoconf!

        3.makeclean

        此時,make會清除之前所編譯的可執行文件及目標文件(objectfile,*.o),如下所示:

        [root@localhostautomake]#makeclean

        test-zhello||rm-fhello

        rm-f*.o

        4.makedist

        此時,make將程序和相關的文檔打包為一個壓縮文檔以供發布,如下所示:

        [root@localhostautomake]#makedist

        [root@localhostautomake]#lshello-1.0-tar.gz

        hello-1.0-tar.gz

        可見該命令生成了一個hello-1.0-tar.gz壓縮文件。

        由上面的講述讀者不難看出,是軟件維護與發布的必備工具,鑒于此,如今GUN的軟件一般都是由automake來制作的。

        想一想

        對于automake制作的這類軟件,應如何安裝呢?

        linux操作系統文章專題:linux操作系統詳解(linux不再難懂)

        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 山阳县| 湟源县| 肇州县| 闽清县| 晋城| 紫金县| 大化| 邵阳县| 临高县| 从江县| 合阳县| 巴林右旗| 新余市| 富裕县| 河东区| 家居| 英吉沙县| 龙陵县| 奉节县| 宁都县| 襄城县| 阜南县| 香河县| 尼玛县| 鹿邑县| 天祝| 广水市| 伊吾县| 盐池县| 漳浦县| 迭部县| 牡丹江市| 象州县| 疏附县| 大庆市| 濉溪县| 雷州市| 红河县| 西昌市| 化州市| 沙坪坝区|