linux c 編程

在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,研究一下。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章