嵌入式學習Day3

2021-09-30 17:39:24 字數 2008 閱讀 6837

1、vim編輯器

vim的三種模式:

命令模式:vim開啟檔案,就是命令模式。

插入模式:按a或i進入插入模式,按esc回到命令模式。

底行模式:按:進入底行模式,或/,此時按wq儲存退出。常用在命令模式下按shift+zz儲存退出。

命令模式下:

(1)x 刪除乙個字元,nx 刪除n格字元。

(2)dd 刪除(剪下)一行,p 貼上(貼上被剪下的那行),ndd刪除n行

(3)nyy 複製n行

(4)shift+g 跳到最後一行, gg 回到第一行。

(5)* 查詢游標所在的字串,n 查詢下乙個。

(6) u 撤銷操作。

底行模式下:(:)

(1)按數字,直接跳到對應行。

(2)sp +檔名,可以開啟另乙個檔案

(3)ctrl + ww 可以上下移動游標

(4)/ 進入底行模式,輸入字串查詢,n 查詢下乙個,shift + n 查詢上乙個。

(5):%s/old/new/g 替換操作,g 表示全部,不加g只替換每一行第乙個

(6):set nonu 關閉行號 ,set nu 開啟行號。

檢視配置:ls /etc/vimrc

要加自動縮排:set autoindent set shiftwidth=4 set tabstop=4

關鍵字高亮:syntax on`

# include int main()

在這裡插入**片

2、gcc工具鏈

指令 vim hello.c

gcc hello.c (編譯)

生成 a.out 檔案

gcc hello.c -o hello

./hello (執行)

(1)預處理

gcc -e hello.c -o hello.i 處理所有以「#」開頭的**。

a.標頭檔案(展開)b.巨集定義(替換)c.條件編譯

生成的hello.i是文字檔案

(2)編譯

gcc -s hello.i -o hello.s

把c**翻譯成彙編**

(3)彙編

gcc -c hello.s -o hello.o

把彙編**翻譯成二進位制檔案

(4)鏈結

gcc 所有.o檔案 -o hello

鏈結程式需要用到的其他檔案

gcc -i(大寫的i)指定標頭檔案路徑

gcc -static 靜態鏈結(以上都是加在hello後面)

3、make和makefile

make命令執行時,需要乙個makefile檔案,以告訴make命令需要怎麼去編譯和鏈結程式。

makefile檔案的五個方面:

具體規則

隱含規則

定義變數

指令注釋

4、gdb除錯工具

指令碼shell是命令解析器,將使用者的指令轉化為機器可以執行的程式。

vim hello.sh利用vim文字編輯器編寫shell指令碼的格式是固定的

#!/bin/bash

編輯完畢,將指令碼檔案存檔為filename.sh,檔案字尾sh表明這是乙個bash指令碼檔案。

將指令碼的屬性改為可執行

chmod +x filename.sh

執行指令碼:

./filename.sh

例:以helloworld為例,檢視最簡單的shell指令碼:

#!/bin/bash

#print hello world in the console window

a = 「hello world」

echo

預設變數

$#:傳入指令碼的命令列引數個數

$*:所有命令列的引數值,在各個引數值之間留有空格

$0:命令本身(shell檔名)

$1:第乙個命令列引數

$2:第二個命令列引數

嵌入式學習 day 3

1.linux 中顏色所代表的屬性 綠色檔案 可執行檔案 可執行程式 紅色檔案 壓縮檔案或者包檔案 藍色檔案 目錄 白色檔案 一般檔案 如文字檔案 淺藍色檔案 鏈結檔案 紅色 閃爍 表示鏈結的檔案有問題 黃色檔案 表示裝置檔案 2.檔案目錄的許可權以及修改許可權 首先了解各個許可權 rwx rwx ...

嵌入式入門day3

嵌入式linux的開發工具 vim gcc gdb make vim 文字編輯器 學會使用和如何配置vim gcc 編輯器 學會製作動態庫和靜態庫,使用和區別 gdb 偵錯程式 設定斷點 單步執行 除錯記憶體錯誤 make 工程管理器 編寫makefile檔案 linux文字編輯器 vim 功能最強...

嵌入式實訓DAY3

對c語言各個版本標準的整理 c90 1 增加了真正的標準庫 2 新的預處理命令與特性 3 函式原型允許在函式申明中 4 指定引數型別一些新的關鍵字,包括 const volatile 與 signed 5 寬字元 寬字串與多位元組字元 6 對約定規則 宣告和型別檢查的許多小改動與澄清 c99 1 增...