在linux下可以有很多編輯器用於編程,我更喜歡傳統的vim,簡潔而不失功能強大,符合linux 自由,實用,穩定,高效的精神。
通常的vim 沒有語法高亮,需要自己下載vim-full
我用的ubuntu,所以筆記更多是出於這個美麗系統的角度。
sudo apt-get install vim-full
在/etc/vim/vimrc 中設置 sytanx on
gcc 一寬強大的編譯器 支持多種語言,高效。
一個.c 文件編譯要經過四個過程
1 預處理 將頭文件加入到源文件中 生成 .i gcc -E hello.c -ohello.i
2 編譯 生成彙編 gcc -S hello.i -o hello.s
3 彙編 生成二進制文件 gcc -c hello.s -o hello.o
4 鏈接 鏈接函數庫 生成 可執行文件 gcc hello.o -o hello gcc 默認使用動態庫
gcc 常用編譯選項
-c -S -E, -o , -v ,
-I 在頭文件搜索中加入當前文件夾,默認/usr/include <stdio> 在標準路徑,"" 當前目錄 不用該參數
-L 庫文件搜索加入當前文件 ,
-static 靜態連接庫,
-library 連接名爲library 的庫文件 linux 必須以lib 命名開頭 -l 可以省略lib三個字 如 libtets.so 可以 -ltest
出錯報警
-ansi 標準c
-Wall gcc 提供的所有警報
-pedantic ansic 所有警報
gcc 優化
gcc 體系結構設置
gdb 調試器
gdb 和perl的編譯器
首先要編譯好原代碼,
gcc -g hello.c -o hello 必須加入-g 否則不能調試
gdb hello 進入調試模式
常用指令 l , b , s , n ,p , x , c ,r
工作環境
set args 設置運行是參數
show args
path dir
show paths
pwd
shell
斷點
b
info b 查看斷點情況
tbreak 設置臨時斷點
delete 刪除
disable
enable
b 23 if n==2 判斷條件
查看
list
info line 查看gdb 內存中代碼
display 檢測
gdb 可以在運行時 改變變量值 夠變態。
有點累了,明天研究Make.剛剛下了個嵌入式模擬器,skyeye,研究一下。