(新手篇)嵌入式Linux C 語言編程環境

來源:互聯網
上載者:User

標籤:使用   檔案   os   linux   io   代碼   

嵌入式Linux C 語言編程環境有四部分

1.編譯器vi

  1.1 vi的基本模式

    1.1.1 命令模式(Command Mode)

        在該模式下輸入命令來控制螢幕游標的移動,字元、單詞或行的刪除,移動複製段落。

    1.1.2 插入模式(Insert Mode) 

        按【ESC】鍵可以回到命令列模式。按字母【i】鍵進入插入模式,就可以寫代碼了。

    1.1.3 低行模式(Last Line Mode)

        命令模式下,按【:】鍵進入低行模式。如“:q”離開 “:w”儲存。

2.編譯連結器 GCC

  2.1 GCC 的編譯流程 4個步驟

    預先處理(Pre-Processing)

    編譯( Compiling)

    彙編( Assembling )

    連結(Linking )

  2.2 流程分析

               2.2.1  GCC 使用的基本文法:  

       gcc [option | filename]  //option 指定選項 filename 要編譯的檔案。

     2.2.2  預先處理(Pre-Processing)階段

        gcc -E -o [目標檔案] [編譯檔案]

      選項“-E” 使編譯器在預先處理結束時就停止編譯,“-o” 是指定GCC 輸出的結果。// ".i"的檔案是經過預先處理的C來源程式。“ XXXX.h”檔案是不能進行編譯的

     2.2.3 編譯( Compiling)階段

        GCC檢查代碼是否有錯。在檢查無誤後,把代碼翻譯成組合語言。

        gcc -S -o [目標檔案] [編譯檔案] //產生".s" 檔案

     2.2.4   彙編( Assembling )階段

        把編譯階段的“.s”檔案產生目標檔案 gcc - c XXXX.s -o XXXX.o

     2.2.5 連結(Linking )階段

        系統會把函數實現都放入名為libc.so.6  的庫檔案中。預設路徑是/lib或/usr/lib

        gcc hello.o -o hello

        運行 ./hello 

 

3.調試器 GDB

    3.1  進入GDB

     [[email protected] gdb] #gdb [可執行檔] //首先要 gcc [filename] -g

    3.2 查看檔案

      在GDB 中輸入”1“ 就可以查看程式的代碼 

    (gdb) l //l(list)

    3.3 設定斷點 (gdb)b [行號] 代碼運行到第幾行之前停止(沒有運行到這一行)

    3.4 查看斷點處情況

      (gdb)info b

    3.5 運行代碼 (gdb)r

    3.6 查看變數 (gdb)p n // “p 變數名”

    3.7 觀察變數 (gdb) watch n

    3.8 單步運行 (gdb)n //"next"

    3.9程式繼續運行和退出 (gdb) c    (gdb) q//

4.專案管理器 make

    是一種控制編譯或者重複編譯代碼的工具,自動管理軟體軟體編譯的內容、方式和時機,使程式員能把精力放在代碼的編寫上而不是組織上。

  

  

 

  

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.