




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、Linux編程本次內(nèi)容文本編輯器gcc編譯器gdb調(diào)試使用make本次內(nèi)容文本編輯器gcc編譯器gdb調(diào)試使用makevi編輯器vi (Visual Interface)不是排版程序,僅僅是一個(gè)文本編輯程序。三種工作模式命令行模式文本輸入模式末行模式啟動vi編輯器命 令說 明vi filename打開或新建文件,并將光標(biāo)置于第一行首vi +n filename打開文件,并將光標(biāo)置于第n行首vi + filename打開文件,并將光標(biāo)置于最后一行首vi +/pattern filename打開文件,并將光標(biāo)置于第一個(gè)與pattern匹配的串處vi -r filename在上次正用vi編輯時(shí)發(fā)生系
2、統(tǒng)崩潰,恢復(fù)filenamevi filename1.filenamen打開多個(gè)文件,依次進(jìn)行編輯vi的一些基本命令顯示行號:se nu移動光標(biāo):h, j, k, l屏幕顯示:滾屏、分頁、狀態(tài)文本插入:i和I附加命令:a和A打開、刪除、取消、重復(fù)、退出、設(shè)置等本次內(nèi)容文本編輯器gcc編譯器gdb調(diào)試使用makegcc編譯器gcc (GNU Compiler Collection)可在多平臺上編譯出可執(zhí)行程序。gcc可以對多種編程語言的源碼進(jìn)行編譯,為了不至于混淆,gcc通過文件后綴進(jìn)行區(qū)分。gcc options filenamesE.g., p130gcc常用選項(xiàng)編譯選項(xiàng)優(yōu)化選項(xiàng)-o:對源碼
3、進(jìn)行最基本的優(yōu)化-o2:產(chǎn)生盡可能小的和快的執(zhí)行代碼調(diào)試和剖析選項(xiàng)-g:產(chǎn)生能被GNU調(diào)試器,如gdb,使用的調(diào)試信息-pg:在用戶程序中加入額外的代碼,產(chǎn)生剖析信息以顯示程序耗時(shí)情況。本次內(nèi)容文本編輯器gcc編譯器gdb調(diào)試使用makegdb調(diào)試gdb是一個(gè)功能相當(dāng)強(qiáng)大的調(diào)試器,能在程序運(yùn)行時(shí)觀察程序的內(nèi)部結(jié)構(gòu)和內(nèi)存堆棧的情況??傮w說來,gdb具有如下幾個(gè)主要的功能監(jiān)視程序中變量的值設(shè)置程序的斷點(diǎn)逐行執(zhí)行代碼命 令說 明file裝入想要調(diào)試的可執(zhí)行文件kill終止正在調(diào)試的程序list列出產(chǎn)生執(zhí)行文件的源代碼的一部分next執(zhí)行一行源代碼但不進(jìn)入函數(shù)內(nèi)部step執(zhí)行一行源代碼而且進(jìn)入函數(shù)內(nèi)部
4、run執(zhí)行當(dāng)前被調(diào)試的程序quit終止gdbwatch監(jiān)視一個(gè)變量的值而不管它何時(shí)被改變break在代碼里設(shè)置斷點(diǎn),這將使程序執(zhí)行到這里時(shí)被掛起make不退出gdb的情況下,就可以重新產(chǎn)生可執(zhí)行文件shell能不離開gdb就執(zhí)行UNIX shell命令基本gdb命令gdb調(diào)試主要步驟#gdb test 開啟gdb(gdb) file test 用file命令載入程序(gdb) run 用run命令運(yùn)行test程序(gdb) list 列出源代碼(gdb) break # 在第#行設(shè)置斷點(diǎn)(gdb) run 再次運(yùn)行run(gdb) watch variable 觀察變量值(gdb) next
5、迭代分析本次內(nèi)容文本編輯器gcc編譯器gdb調(diào)試使用make為什么需要make?在Linux環(huán)境中,make是一個(gè)非常重要的編譯命令。不管是自己進(jìn)行項(xiàng)目開發(fā)還是安裝應(yīng)用軟件,用戶都會經(jīng)常用到make或make install命令。利用make工具,可以將大型的開發(fā)項(xiàng)目分解成為多個(gè)更易于管理的模塊,分塊編譯對于一個(gè)包括幾百個(gè)源文件的應(yīng)用程序,使用make和makefile工具就可以簡潔明快地理順各個(gè)源文件之間紛繁復(fù)雜的相互關(guān)系。為什么需要make?對于如此多的源文件,如果每次都要鍵入gcc命令進(jìn)行編譯的話,那么對程序員來說將是一件非常困難的事情。而make工具則可自動完成編譯工作,并且可以只對程
6、序員在上次編譯后修改過的部分進(jìn)行編譯。 因此,有效地利用make和makefile工具可以大大提高項(xiàng)目開發(fā)的效率,也可以大大地減少程序中出現(xiàn)的錯(cuò)誤。Makefile文件make工具最主要最基本的功能是通過makefile文件來描述源程序之間的相互關(guān)系并自動維護(hù)編譯工作。Makefile文件作為一種描述文檔一般需要包含以下內(nèi)容。宏定義源文件之間的相互依賴關(guān)系可執(zhí)行的命令宏變量Makefile中允許使用簡單的宏指代源文件及相關(guān)編譯信息,在Linux中也稱宏為變量。引用宏時(shí)只需在變量前加$符號即可,但如果變量名字超過一個(gè)字符,引用時(shí)需要用圓括號()$(CFLAGS)$2$Z$(Z)make命令 make命本身可帶有四種參數(shù):標(biāo)志、宏定義、
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年部編版二年級上冊語文分層教學(xué)計(jì)劃
- 半導(dǎo)體廠重要環(huán)境因素控制措施
- 機(jī)場跑道施工進(jìn)度計(jì)劃和進(jìn)度保證措施
- 四年級健康與安全教育方案計(jì)劃
- 2024-2025學(xué)年度網(wǎng)絡(luò)安全保護(hù)計(jì)劃
- 2025年小學(xué)五年級科學(xué)教學(xué)信息化發(fā)展計(jì)劃
- 小學(xué)科學(xué)教研計(jì)劃課外拓展
- 口腔診所前臺接待話術(shù)及工作流程
- 五年級下冊體育課程安全保障計(jì)劃
- 以建模教學(xué)為翼展數(shù)學(xué)應(yīng)用之翅:探索數(shù)學(xué)教育新路徑
- 河南省鄭州市第十七中學(xué)2025年英語七年級第二學(xué)期期末質(zhì)量跟蹤監(jiān)視試題含答案
- 設(shè)備技改項(xiàng)目管理制度
- 浙江萬泰公司安全設(shè)施試運(yùn)行總結(jié)報(bào)告
- 2025至2030中國天然水晶手鐲行業(yè)商業(yè)模式及發(fā)展前景與投資報(bào)告
- 應(yīng)急救援無人機(jī)系統(tǒng)應(yīng)用解析
- 復(fù)讀班課堂管理制度
- 關(guān)于教育減負(fù)的議論文
- 2025至2030年中國電力大數(shù)據(jù)行業(yè)市場動態(tài)分析及發(fā)展前景研判報(bào)告
- 2025年安徽省中考英語試卷(含答案)
- 思想道德與法治2023年版電子版教材-1
- 2025至2030年中國側(cè)背光源行業(yè)投資前景及策略咨詢報(bào)告
評論
0/150
提交評論