色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

電子發燒友App

硬聲App

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示
電子發燒友網>電子資料下載>電子教材>gun make教程

gun make教程

2010-03-10 | rar | 881 | 次下載 | 免費

資料介紹

gun make教程.rar

關于本書

本文瑾獻給所有熱愛Linux程序員!本中文文檔版權所有。

本文比較完整的講述GNU make工具,涵蓋GNU make的用法、語法。同時重點討論如何為一個工程編寫Makefile。作為一個Linux程序員,make工具的使用以及編寫Makefile是必需的。系統、詳細講述make的中文資料比較少,出于對廣大中文Linuxer的支持,本人在工作之余,花了18個多月時間完成對“info make”的翻譯整理,完成這個中文版手冊。本書不是一個純粹的語言翻譯版本,其中對GNU make的一些語法和用法根據我個人的工作經驗進行了一些詳細分析和說明,也加入了一些個人的觀點和實踐總結。本書的所有的例子都可以在支持V3.8版本的GNU make的系統中正確執行。

由于個人水平限制,本文在一些地方存在描述不準確之處。懇請大家在閱讀過程中,提出您寶貴的意見,也是對我個人的幫助。我的個人電子郵箱地址:xhbdahai@126.com。非常愿意和大家交流!共同學習。

閱讀本書之前,讀者應該對GNU的工具鏈和Linux的一些常用編程工具有一定的了解。諸如:gcc、as、ar、ld、yacc等;同時在書寫Makefile時,需要能夠進行一些基本的shell編程。這些工具是維護一個工程的基礎。如果大家對這些工具的用法不是很熟悉,可參考項目資料

閱讀本文的幾點建議:

1.??????? 如果之前你對GNU make沒有了解、當前也不想深入的學習GNU make的讀者。可只閱讀本文各章節前半部分的內容(作為各章節的基礎知識)。

2.??????? 如果你已經對GNU make比較熟悉,你更需要關心此版本的新增特點、功能、和之前版本不兼容之處;也可以作為開發過程過程的參考手冊。

3.??????? 之前你對GNU make沒有概念、或者剛開始接觸,本身又想成為一個Linux下的專業程序員,那么建議:完整學習本文的各個章節,包括了基礎知識和高級用法、技巧。它會為你在Linux下的工程開發、工程管理提供非常有用的幫助。

make概述
Linux環境下的程序員如果不會使用GNU make來構建和管理自己的工程,應該不能算是一個合格的專業程序員,至少不能稱得上是Unix程序員。在Linux(unix)環境下使用GNU 的make工具能夠比較容易的構建一個屬于你自己的工程,整個工程的編譯只需要一個命令就可以完成編譯、連接以至于最后的執行。不過這需要我們投入一些時間去完成一個或者多個稱之為Makefile文件的編寫。此文件正是make正常工作的基礎。

所要完成的Makefile文件描述了整個工程的編譯、連接等規則。其中包括:工程中的哪些源文件需要編譯以及如何編譯、需要創建那些庫文件以及如何創建這些庫文件、如何最后產生我們想要得可執行文件。盡管看起來可能是很復雜的事情,但是為工程編寫Makefile的好處是能夠使用一行命令來完成“自動化編譯”,一旦提供一個(通常對于一個工程來說會是多個)正確的Makefile。編譯整個工程你所要做的唯一的一件事就是在shell 提示符下輸入make命令。整個工程完全自動編譯,極大提高了效率。

make是一個命令工具,它解釋Makefile中的指令(應該說是規則)。在Makefile文件中描述了整個工程所有文件的編譯順序、編譯規則。Makefile有自己的書寫格式、關鍵字、函數。像C語言有自己的格式、關鍵字和函數一樣。而且在Makefile中可以使用系統shell所提供的任何命令來完成想要的工作。Makefile(在其它的系統上可能是另外的文件名)在絕大多數的IDE開發環境中都在使用,已經成為一種工程的編譯方法。

目前,系統完整的介紹make工具和如何編寫Makefile的中文文檔比較少。我整理這個文檔就是希望能使眾多的Linux環境下的程序員能夠比較容易的掌握和學會使用GNU make。本文所要介紹的是GNU的make,采用Red Hat FC3(包括最新發布的GNU Linux系統)所集成的GUN make工具。

本文中所有示例均采用C語言的源程序,因為它是目前最普遍使用的一種語言。當然make工具不僅僅是用來管理C語言工程的,那些編譯器只要能夠在shell下運行的語言所構建的工程都可以使用make工具來管理。Make工作不僅僅可以用來編譯源代碼,它也可以完成一些其它的功能。例如,有這樣的需求:當我們修改了某個或者某些文件后,需要能夠根據修改的文件來自動對相關文件進行重建或者更新。那么應該考慮使用GNU make工具。GNU make工具為我們實現這個目的提供了非常有利的支持。工程中根據源文件的修改情況來進行代碼的編譯正是使用了make的這個特征。make執行時,根據Makefile的規則檢查文件的修改情況,決定是否執行定義的動作(那些修改過的文件將會被重新編譯)。這是GNU make的執行依據。

1.2 準備知識
在開始我們關于make的討論之前,首先需要明確一些基本概念:

編譯:把高級語言書寫的代碼轉換為機器可識別的機器指令。編譯高級語言后生成的指令雖然可被機器識別,但是還不能被執行。編譯時,編譯器檢查高級語言的語法、函數與變量的聲明是否正確。只有所有的語法正確、相關變量定義正確編譯器就可以編譯出中間目標文件。通常,一個高級語言的源文件都可對應一個目標文件。目標文件在Linux中默認后綴為“.o”(如“foo.c”的目標文件為“foo.o”)。

為了和規則的目標文件相區別。本文將編譯高級語言后生成的目標文件成為.o文件。

鏈接:將多.o文件,或者.o文件和庫文件鏈接成為可被操作系統執行的可執行程序(Linux環境下,可執行文件的格式為“ELF”格式)。鏈接器不檢查函數所在的源文件,只檢查所有.o文件中的定義的符號。將.o文件中使用的函數和其它.o或者庫文件中的相關符號進行合并,對所有文件中的符號進行重新安排(重定位),并鏈接系統相關文件(程序啟動文件等)最終生成可執行程序。鏈接過程使用GNU 的“ld”工具。

靜態庫:又稱為文檔文件(Archive File)。它是多個.o文件的集合。Linux中靜態庫文件的后綴為“.a”。靜態庫中的各個成員(.o文件)沒有特殊的存在格式,僅僅是一個.o文件的集合。使用“ar”工具維護和管理靜態庫。

共享庫:也是多個.o文件的集合,但是這些.o文件時有編譯器按照一種特殊的方式生成(Linux中,共享庫文件格式通常為“ELF”格式。共享庫已經具備了可執行條件)。模塊中各個成員的地址(變量引用和函數調用)都是相對地址。使用此共享庫的程序在運行時,共享庫被動態加載到內存并和主程序在內存中進行連接。多個可執行程序可共享庫文件的代碼段(多個程序可以共享的使用庫中的某一個模塊,共享代碼,不共享數據)。另外共享庫的成員對象可被執行(由libdl.so提供支持)。

參考 info ld了解更加詳細的關于ld的說明和用法。?

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1DC電源插座圖紙
  2. 0.67 MB   |  2次下載  |  免費
  3. 2AN158 GD32VW553 Wi-Fi開發指南
  4. 1.51MB   |  2次下載  |  免費
  5. 3AN148 GD32VW553射頻硬件開發指南
  6. 2.07MB   |  1次下載  |  免費
  7. 4AN111-LTC3219用戶指南
  8. 84.32KB   |  次下載  |  免費
  9. 5AN153-用于電源系統管理的Linduino
  10. 1.38MB   |  次下載  |  免費
  11. 6AN-283: Σ-Δ型ADC和DAC[中文版]
  12. 677.86KB   |  次下載  |  免費
  13. 7SM2018E 支持可控硅調光線性恒流控制芯片
  14. 402.24 KB  |  次下載  |  免費
  15. 8AN-1308: 電流檢測放大器共模階躍響應
  16. 545.42KB   |  次下載  |  免費

本月

  1. 1ADI高性能電源管理解決方案
  2. 2.43 MB   |  450次下載  |  免費
  3. 2免費開源CC3D飛控資料(電路圖&PCB源文件、BOM、
  4. 5.67 MB   |  138次下載  |  1 積分
  5. 3基于STM32單片機智能手環心率計步器體溫顯示設計
  6. 0.10 MB   |  130次下載  |  免費
  7. 4使用單片機實現七人表決器的程序和仿真資料免費下載
  8. 2.96 MB   |  44次下載  |  免費
  9. 53314A函數發生器維修手冊
  10. 16.30 MB   |  31次下載  |  免費
  11. 6美的電磁爐維修手冊大全
  12. 1.56 MB   |  24次下載  |  5 積分
  13. 7如何正確測試電源的紋波
  14. 0.36 MB   |  17次下載  |  免費
  15. 8感應筆電路圖
  16. 0.06 MB   |  10次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935121次下載  |  10 積分
  3. 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
  4. 1.48MB  |  420062次下載  |  10 積分
  5. 3Altium DXP2002下載入口
  6. 未知  |  233088次下載  |  10 積分
  7. 4電路仿真軟件multisim 10.0免費下載
  8. 340992  |  191367次下載  |  10 積分
  9. 5十天學會AVR單片機與C語言視頻教程 下載
  10. 158M  |  183335次下載  |  10 積分
  11. 6labview8.5下載
  12. 未知  |  81581次下載  |  10 積分
  13. 7Keil工具MDK-Arm免費下載
  14. 0.02 MB  |  73810次下載  |  10 積分
  15. 8LabVIEW 8.6下載
  16. 未知  |  65988次下載  |  10 積分
主站蜘蛛池模板: 亚洲欧美韩国综合色 | 性VIDEOSTV另类极品 | 伊人色综合久久天天网 | 三级黄色高清视频 | 暖暖的高清视频在线观看免费中文 | 美女被抽插到哭内射视频免费 | 伊人久久综在合线亚洲 | 午夜精品久久久内射近拍高清 | 2020最新国产自产精品 | 一二三四韩国免费观看 | 久久爽狠狠添AV激情五月 | 免费。色婬网站 | 亚洲色图影院 | 国产婷婷色综合AV蜜臀AV | 伦理片2499电影伦理片 | 动漫护士被乳羞羞漫 | 亚洲精品免费在线视频 | 亚洲欧美中文日韩v在线 | 国产福利不卡在线视频 | 国产成人免费观看 | 亚洲AV国产福利精品在现观看 | 99九九99九九九视频精品 | 久久精品麻豆国产天美传媒果冻 | 久久精品无码人妻无码AV蜜臀 | 三级网址在线 | 日日碰狠狠添天天爽 | 草莓视频在线看免费高清观看 | 国产a在线不卡 | 亚洲欧美中文日韩视频 | 久久亚洲视频 | 1区2区3区4区产品不卡码网站 | free高跟丝袜秘书hd | 久久精品亚洲AV无码三区观看 | 亚洲欧美日韩国产手机在线 | JAPANRCEP老熟妇乱子伦视频 | 空姐内射出白浆10p 空姐厕所啪啪啪 | 麻豆国产99在线中文 | 啦啦啦影院视频在线看高清... | 中文无码不卡的岛国片国产片 | 99久久精品免费精品国产 | 精品国产自在现线拍400部 |