青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆 - 132  文章 - 51  trackbacks - 0
<2011年6月>
2930311234
567891011
12131415161718
19202122232425
262728293012
3456789

常用鏈接

留言簿(7)

隨筆分類

隨筆檔案

文章分類

文章檔案

cocos2d-x

OGRE

OPenGL

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

Makefile的編寫     
  假設我們有下面這樣的一個程序,源代碼如下:     
    
  /*   main.c   */     
  #include   "mytool1.h"     
  #include   "mytool2.h"     
    
  int   main(int   argc,char   **argv)     
  {     
  mytool1_print("hello");     
  mytool2_print("hello");     
  }     
    
  /*   mytool1.h   */     
  #ifndef   _MYTOOL_1_H     
  #define   _MYTOOL_1_H     
    
  void   mytool1_print(char   *print_str);     
    
  #endif     
    
  /*   mytool1.c   */     
  #include   "mytool1.h"     
  void   mytool1_print(char   *print_str)     
  {     
  printf("This   is   mytool1   print   %s\n",print_str);     
  }     
    
  /*   mytool2.h   */     
  #ifndef   _MYTOOL_2_H     
  #define   _MYTOOL_2_H     
    
  void   mytool2_print(char   *print_str);     
    
  #endif     
    
  /*   mytool2.c   */     
  #include   "mytool2.h"     
  void   mytool2_print(char   *print_str)     
  {     
  printf("This   is   mytool2   print   %s\n",print_str);     
  }     

============================================
Makefile的文件是:  
[gping@localhost gp]$ vi Makefile(回車, 編輯器)
   
  #   這是上面那個程序的Makefile文件     
  main:main.o   mytool1.o   mytool2.o     
# 下面一行一定要加TAB鍵
            gcc   -o   main   main.o   mytool1.o   mytool2.o    
  main.o:main.c   mytool1.h   mytool2.h     
           gcc   -c   main.c     
  mytool1.o:mytool1.c   mytool1.h     
           gcc   -c   mytool1.c     
  mytool2.o:mytool2.c   mytool2.h     
           gcc   -c   mytool2.c     



[gping@localhost gp]$ make 
gcc   -c   main.c     
gcc   -o   main   main.o   mytool1.o   mytool2.o     
[gping@localhost gp]$ ./main 
This   is   mytool1   print   hello
This   is   mytool2   print   hello










1.源程序的編譯     
  在Linux下面,如果要編譯一個C語言源程序,我們要使用GNU的gcc編譯器.   下面我們以一個實例來說明如何使用gcc編譯器.     
  假設我們有下面一個非常簡單的源程序(hello.c):     
  int   main(int   argc,char   **argv)     
  {     
  printf("Hello   Linux\n");     
  }     
    
  要編譯這個程序,我們只要在命令行下執行:     
  gcc   -o   hello   hello.c     
  gcc   編譯器就會為我們生成一個hello的可執行文件.執行./hello就可以看到程序的輸出結果了.命令行中   gcc表示我們是用gcc來編譯我們的源程序,-o   選項表示我們要求編譯器給我們輸出的可執行文件名為hello   而hello.c是我們的源程序文件.     
  gcc編譯器有許多選項,一般來說我們只要知道其中的幾個就夠了.   -o選項我們已經知道了,表示我們要求輸出的可執行文件名.   -c選項表示我們只要求編譯器輸出目標代碼,而不必要輸出可執行文件.   -g選項表示我們要求編譯器在編譯的時候提供我們以后對程序進行調試的信息.     
  知道了這三個選項,我們就可以編譯我們自己所寫的簡單的源程序了,如果你想要知道更多的選項,可以查看gcc的幫助文檔,那里有著許多對其它選項的詳細說明.     
  2.Makefile的編寫     
  假設我們有下面這樣的一個程序,源代碼如下:     
    
  /*   main.c   */     
  #include   "mytool1.h"     
  #include   "mytool2.h"     
    
  int   main(int   argc,char   **argv)     
  {     
  mytool1_print("hello");     
  mytool2_print("hello");     
  }     
    
  /*   mytool1.h   */     
  #ifndef   _MYTOOL_1_H     
  #define   _MYTOOL_1_H     
    
  void   mytool1_print(char   *print_str);     
    
  #endif     
    
  /*   mytool1.c   */     
  #include   "mytool1.h"     
  void   mytool1_print(char   *print_str)     
  {     
  printf("This   is   mytool1   print   %s\n",print_str);     
  }     
    
  /*   mytool2.h   */     
  #ifndef   _MYTOOL_2_H     
  #define   _MYTOOL_2_H     
    
  void   mytool2_print(char   *print_str);     
    
  #endif     
    
  /*   mytool2.c   */     
  #include   "mytool2.h"     
  void   mytool2_print(char   *print_str)     
  {     
  printf("This   is   mytool2   print   %s\n",print_str);     
  }     
    
    
  當然由于這個程序是很短的我們可以這樣來編譯     
  gcc   -c   main.c     
  gcc   -c   mytool1.c     
  gcc   -c   mytool2.c     
  gcc   -o   main   main.o   mytool1.o   mytool2.o     
  這樣的話我們也可以產生main程序,而且也不時很麻煩.但是如果我們考慮一下如果有一天我們修改了其中的一個文件(比如說mytool1.c)那么我們 難道還要重新輸入上面的命令?也許你會說,這個很容易解決啊,我寫一個SHELL腳本,讓她幫我去完成不就可以了.是的對于這個程序來說,是可以起到作用 的.但是當我們把事情想的更復雜一點,如果我們的程序有幾百個源程序的時候,難道也要編譯器重新一個一個的去編譯?     
  為此,聰明的程序員們想出了一個很好的工具來做這件事情,這就是make.我們只要執行以下make,就可以把上面的問題解決掉.在我們執行make之 前,我們要先編寫一個非常重要的文件.--Makefile.對于上面的那個程序來說,可能的一個Makefile的文件是:     
  #   這是上面那個程序的Makefile文件     
  main:main.o   mytool1.o   mytool2.o  &nb

原文地址:http://www.cnblogs.com/tankzhouqiang/archive/2010/03/07/1968345.html
posted on 2012-06-19 11:39 風輕云淡 閱讀(669) 評論(0)  編輯 收藏 引用 所屬分類: Linux
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            在线一区二区三区四区| 欧美日韩精品在线观看| 99视频超级精品| 午夜综合激情| 亚洲午夜精品久久久久久app| 久久国内精品视频| 午夜久久久久| 欧美日韩一卡二卡| 亚洲高清视频一区| 雨宫琴音一区二区在线| 欧美亚洲免费电影| 欧美一级久久久| 国产精品va在线| 亚洲精品在线二区| 亚洲国产va精品久久久不卡综合| 欧美亚洲尤物久久| 欧美一级片在线播放| 国产精品少妇自拍| 中文日韩在线视频| 亚洲一级在线观看| 欧美日韩一区二区三区免费看| 亚洲电影视频在线| 亚洲精品国产欧美| 欧美xx视频| 亚洲黄色免费| 亚洲日本成人| 欧美区一区二| 日韩亚洲视频| 亚洲欧美日本国产专区一区| 欧美日韩一区二区精品| 亚洲乱亚洲高清| 这里只有精品视频| 欧美亚洲成人免费| 亚洲一区免费视频| 久久久久久夜| 亚洲激情亚洲| 欧美精品久久99| 亚洲视频在线观看| 久久超碰97中文字幕| 国内成人精品2018免费看| 久久国产免费| 亚洲福利视频网| 在线视频一区二区| 国产精品一区二区你懂的| 欧美专区在线观看一区| 欧美成人精品在线观看| a4yy欧美一区二区三区| 国产精品久久久久久久久| 欧美亚洲尤物久久| 亚洲电影成人| 亚洲免费视频一区二区| 国精品一区二区| 麻豆精品网站| 一区二区三区四区五区精品视频| 欧美亚洲尤物久久| 亚洲大片一区二区三区| 欧美日韩网站| 欧美在线一区二区三区| 亚洲国产成人不卡| 性8sex亚洲区入口| 亚洲国产精品va在看黑人| 欧美日韩精品一区二区天天拍小说 | 亚洲免费大片| 国产精品扒开腿做爽爽爽视频 | 亚洲日韩欧美视频一区| 亚洲欧美日本伦理| 在线精品国产欧美| 欧美四级在线观看| 久久久亚洲欧洲日产国码αv| 亚洲美女啪啪| 久久蜜桃香蕉精品一区二区三区| 亚洲欧洲在线播放| 国产欧美日韩不卡| 欧美精品三级| 亚洲激情成人| 欧美不卡视频一区发布| 一区二区三区精品| 狠狠久久婷婷| 国产精品扒开腿做爽爽爽视频| 久久av红桃一区二区小说| 亚洲日本成人女熟在线观看| 久久精品亚洲热| 一区二区三区久久精品| 伊人狠狠色j香婷婷综合| 国产精品久久久久一区| 欧美高清视频在线| 久久久精品日韩欧美| 亚洲免费视频观看| 亚洲伦理一区| 亚洲国产综合在线看不卡| 久久久免费精品视频| 亚洲欧美日韩精品久久亚洲区 | 老司机久久99久久精品播放免费| 亚洲一卡二卡三卡四卡五卡| 亚洲国产日韩一级| 欧美不卡三区| 久热精品视频在线免费观看| 欧美一区免费| 亚洲欧美日韩国产一区二区三区 | 亚洲欧美日韩一区二区三区在线观看| 亚洲国产成人av好男人在线观看| 国产午夜精品久久久久久久| 国产精品a级| 欧美午夜在线视频| 欧美日韩一区二区精品| 欧美激情亚洲综合一区| 欧美 日韩 国产一区二区在线视频 | 久久精品免费电影| 久久精品免视看| 欧美在线观看www| 欧美在线视频二区| 欧美一区二区视频免费观看| 欧美亚洲专区| 久久se精品一区精品二区| 午夜精品视频一区| 欧美中文在线视频| 久久久久一本一区二区青青蜜月| 欧美在线电影| 久久久久久综合网天天| 久久综合久久综合这里只有精品| 久久精品官网| 久久躁日日躁aaaaxxxx| 免费高清在线视频一区·| 欧美freesex交免费视频| 亚洲国产高清在线观看视频| 亚洲人成在线观看网站高清| 亚洲精品免费在线| 在线视频日韩| 欧美一区二区三区日韩| 久久国产免费看| 老司机aⅴ在线精品导航| 农村妇女精品| 欧美丝袜第一区| 国产欧美大片| 在线观看日韩av电影| 亚洲精品资源| 午夜精品免费视频| 久久一二三国产| 亚洲国产小视频在线观看| 正在播放欧美一区| 久久国产精品高清| 欧美精品一区三区在线观看| 国产精品入口麻豆原神| 精品999日本| 99伊人成综合| 久久精品一区二区三区不卡| 欧美激情1区2区3区| 亚洲手机成人高清视频| 久久青草欧美一区二区三区| 欧美日本国产在线| 狠狠久久亚洲欧美专区| 中文在线资源观看视频网站免费不卡| 欧美在线视频一区二区| 亚洲国产高清视频| 亚洲欧美制服中文字幕| 欧美成人精品在线观看| 国产欧美综合在线| 日韩亚洲精品视频| 久久久久一区二区三区| av成人免费在线| 乱码第一页成人| 国产伦精品一区二区三区四区免费| 亚洲国产成人高清精品| 欧美一级视频免费在线观看| 亚洲人成在线播放| 久久综合免费视频影院| 国产精品蜜臀在线观看| 亚洲另类黄色| 免费亚洲婷婷| 久久av一区| 国产精品午夜国产小视频| 日韩视频免费观看高清完整版| 久久一区亚洲| 午夜精品视频在线观看| 欧美色图首页| 日韩手机在线导航| 欧美岛国激情| 久久久噜噜噜| 一区二区视频在线观看| 久久成人综合视频| 亚洲一区二区三区成人在线视频精品 | 国产欧美精品一区二区三区介绍| 一本色道久久88亚洲综合88| 亚洲国产精品v| 久久午夜视频| 精品电影在线观看| 久久综合色播五月| 久久精品99国产精品| 国产视频一区在线观看| 午夜亚洲性色视频| 亚洲一区二区三区四区在线观看 | 亚洲一区免费| 日韩视频一区二区三区| 欧美日韩国产影院| 宅男66日本亚洲欧美视频| 亚洲人人精品| 欧美久久电影| 一本久久a久久免费精品不卡| 亚洲乱亚洲高清| 国产精品久久久久久久久免费|