開始學習在linux下敲**,但是vim太難用,便學習配置,給大家分享下,嘻嘻。
1)簡易版
a.進入root
b.在當前使用者的主目錄下創.vimrc檔案
c.將下面**貼上到 .vimrc檔案
「雙引號開始的行為注釋行,下同
「去掉討厭的有關vi一致性模式,避免以前版本的一些bug和侷限
set nocompatible
「顯示行號
set number
「檢測檔案的型別
filetype on
「記錄歷史的行數
set history=1000
「背景使用夜晚模式 //你會很爽的
color evening
「語法高亮度顯示
syntax on
「下面兩行在進行編寫**時,在格式對起上很有用;
「第一行,vim使用自動對起,也就是把當前行的對起格式應用到下一行;
「第二行,依據上面的對起格式,智慧型的選擇對起方式,對於類似c語言編
「寫上很有用
set autoindent
set smartindent
「第一行設定tab鍵為4個空格,第二行設定當行之間交錯時使用4個空格
set tabstop=4
set shiftwidth=4
「設定匹配模式,類似當輸入乙個左括號時會匹配相應的那個右括號
set showmatch
「去除vim的gui版本中的*******
set guioptions=t
「當vim進行編輯時,如果命令錯誤,會發出乙個響聲,該設定去掉響聲
set vb t_vb=
「在編輯過程中,在右下角顯示游標位置的狀態行
set ruler
「預設情況下,尋找匹配是高亮度顯示的,該設定關閉高亮顯示
set nohls
「查詢時非常方便,如要查詢book單詞,當輸入到/b時,會自動找到第一
「個b開頭的單詞,當輸入到/bo時,會自動找到第乙個bo開頭的單詞,依
「次類推,進行查詢時,使用此設定會快速找到答案,當你找要匹配的單詞
「時,別忘記回車
set incsearch
「修改乙個檔案後,自動進行備份,備份的檔名為原檔名加「~「字尾
if has(「vms」) //注意雙引號要用半形的引號" "
set nobackup
else
set backup
endif
"自動補全
:inoremap ( ()i
:inoremap ) =closepair(')'):inoremap o
:inoremap } =closepair('}'):inoremap [ i
:inoremap ] =closepair(']'):inoremap " ""i
:inoremap ' ''i
function! closepair(char)
if getline('.')[col('.') - 1] == a:char
return "\"
else
return a:char
endif
endfunction
filetype plugin indent on
2)優化版
用gdb進行除錯糾錯前必須要在編譯選項中新增「-g」,「-g」標誌是對程式進行除錯性編譯時常用的選項。我們需要給每乙個需要除錯的原始檔都加上這個選項。它將使用特殊版本的c語言標準庫完成編譯和鏈結操作,給庫函式加上程式除錯方面的支援。編譯器會把這些標誌自動傳給鏈結器,加選項-g是為了能夠除錯。不加可以執行,但不能除錯。
用rpm方式安裝軟體,如果依賴的軟體沒有事先安裝,軟體無法安裝成功。
為了解決這個問題,推出yum方式。
既然依賴的軟體沒有安裝在機器上,那麼就先安裝依賴檔案,再安裝我需要安裝的軟體。
因此yum在安裝軟體同時安裝依賴檔案。
因此需要乙個yum源來放依賴的軟體源,對比被安裝機器上rpm軟體庫歸根到底,yum也是基於rpm的。
步驟: 編譯原始碼,然後安裝
1.1安裝準備:
a、 首先用yum安裝gcc,用於編譯原始碼
1.2 安裝過程
a、解壓
b、進入解壓後的目錄配置檔案 ./configure # 大多數情況下原始碼包都會帶configure這樣乙個配置工具,具體使用方法可以vim檢視其內容
c、make #編譯原始碼包 如果報錯了 make clean 清除快取重新make
d、make install # 安裝
然後刪除原始碼包軟體和安裝目錄
(3)rpm是安裝本地存在的rpm包,如果存在依賴也需要安裝上,如果某個rpm是自己修改編譯的,那麼只能用rpm安裝了
rpm安裝:安裝別人編譯好的軟體包
rpm即redhat package manager,redhat的軟體包管方式,適用rpm install 命令
rpm不僅已經把軟體源**編譯成二進位制檔案,而且對軟體包依賴的檔案,系統環境等做了統計副檔名:rpm
還有一種srpm:沒有編譯成二進位制檔案,但是也包含rpm的特性
1)簡單了解
readelf命令用來顯示乙個或者多個elf格式的目標檔案的資訊,可以通過它的選項來控制顯示哪些資訊。這裡的elf-file(s)就表示那些被檢查的檔案。可以支援32位,64位的elf格式檔案,也支援包含elf檔案的文件(這裡一般指的是使用ar命令將一些elf檔案打包之後生成的例如lib*.a之類的「靜態庫」檔案)。
這個程式和objdump提供的功能類似,但是它顯示的資訊更為具體,並且它不依賴bfd庫(bfd庫是乙個gnu專案,它的目標就是希望通過一種統一的介面來處理不同的目標檔案),所以即使bfd庫有什麼bug存在的話也不會影響到readelf程式。
執行readelf的時候,除了-v和-h之外,其它的選項必須有乙個被指定。
2)命令選項
-a
--all 顯示全部資訊,等價於 -h -l -s -s -r -d -v -a -i.
-h --file-header 顯示elf檔案開始的檔案頭資訊.
-l --program-headers
--segments 顯示程式頭(段頭)資訊(如果有的話)。
-s --section-headers
--sections 顯示節頭資訊(如果有的話)。
-g --section-groups 顯示節組資訊(如果有的話)。
-t --section-details 顯示節的詳細資訊(-s的)。
-s --syms
--symbols 顯示符號表段中的項(如果有的話)。
-e --headers 顯示全部頭資訊,等價於: -h -l -s
-n --notes 顯示note段(核心注釋)的資訊。
-r --relocs 顯示可重定位段的資訊。
-u --unwind 顯示unwind段資訊。當前只支援ia64 elf的unwind段資訊。
-d --dynamic 顯示動態段的資訊。
-v --version-info 顯示版本段的資訊。
-a --arch-specific 顯示cpu構架資訊。
-d --use-dynamic 使用動態段中的符號表顯示符號,而不是使用符號段。
-x --hex-dump=以16進製制方式顯示指定段內內容。number指定段表中段的索引,或字串指定檔案中的段名。
-w[liaprmffsor] or
--debug-dump[=line,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=frames-interp,=str,=loc,=ranges] 顯示除錯段中指定的內容。
-i --histogram 顯示符號的時候,顯示bucket list長度的柱狀圖。
-v --version 顯示readelf的版本資訊。
-h --help 顯示readelf所支援的命令列選項。
-w --wide 寬行輸出。
@file 可以將選項集中到乙個檔案中,然後使用這個@file選項載入。
詳細可參考: Linux開發工具
linux開發工具 vim gcc gdb make git github 文字編輯器 vim 功能最強大 1 使用 三種模式 命令列模式 插入模式 底行模式 vim 空格 檔名 例如vim hello.c 此時是命令列模式 無法插入資料 需要進入插入模式 按i或者a 退出插入模式 按esc 切換到...
Android Studio開發工具相關問題記錄
1.使用android studio時你應該知道的一切配置 第一次使用android studio時你應該知道的一切配置 第一次使用android studio時你應該知道的一切配置 二 新建乙個屬於自己的工程並安裝genymotion模擬器 第一次使用android studio時你應該知道的一切...
《Linux程式設計》 開發工具
一 多個原始檔帶來的問題 二 make命令和makefile 1 makefile的語法 1 makefile檔案由一組依賴關係和規則組成。2 make命令會會根據makefile檔案來確定目標檔案的建立順序以及正確的規則呼叫順序。2 make命令的選項和引數 1 make程式選項 i k 讓mak...