<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > Linux下C編程基礎(chǔ)之:使用autotools

          Linux下C編程基礎(chǔ)之:使用autotools

          作者: 時間:2013-09-13 來源:網(wǎng)絡(luò) 收藏

          本文引用地址:http://www.ex-cimer.com/article/257148.htm

          3.6.2使用所生成的makefile

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

          1.make

          鍵入make默認(rèn)執(zhí)行“makeall”命令,即目標(biāo)體為all,其執(zhí)行情況如下所示:

          [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

          此時在本目錄下就生成了可執(zhí)行文件“hello”,運(yùn)行“./hello”能出現(xiàn)正常結(jié)果,如下所示:

          [root@localhostautomake]#./hello

          Hello!Autoconf!

          2.makeinstall

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

          [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'

          此時,若直接運(yùn)行hello,也能出現(xiàn)正確結(jié)果,如下所示:

          [root@localhostautomake]#hello

          Hello!Autoconf!

          3.makeclean

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

          [root@localhostautomake]#makeclean

          test-zhello||rm-fhello

          rm-f*.o

          4.makedist

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

          [root@localhostautomake]#makedist

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

          hello-1.0-tar.gz

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

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

          想一想

          對于automake制作的這類軟件,應(yīng)如何安裝呢?

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

          上一頁 1 2 3 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();