1. 程式人生 > >[linux]如何使用命令安裝gcc/g++, gdb, vim

[linux]如何使用命令安裝gcc/g++, gdb, vim

檢視配置

首先,在命令列中輸入vi檢視一下vim的資訊:
這裡寫圖片描述

輸入ls -a檢視是否存在.vimrc和.viminfo這樣的配置檔案,結果如下:
這裡寫圖片描述

1.配置gcc/g++

Centos中使用yum來配置gcc和g++,若要安裝gcc,則在命令列中輸入:yum -y install gcc,按回車鍵就能夠進行gcc的安裝,若要安裝g++,則需要在命令列中輸入:yum -y install gcc-c++,就能夠進行g++的安裝。 這裡寫圖片描述

2.配置GDB

1.在linux系統中,開啟網頁http://ftp.gnu.org/gnu/gdb/ ,會出現如下的介面:
這裡寫圖片描述
這裡顯示的都是一些gdb工具的壓縮包,然後,我們選擇其中的一個版本進行下載.
假如選擇的是gdb-7.10版本的下載好了後.
在命令視窗中輸入:tar xzvf gdb-7.10.1tar.gz ,解壓完後,能夠檢視到gdb-7.10.1的一個檔案
進入解壓後的目錄中:cd gdb-7.10.1
輸入命令:./configure ,完成後使用dir檢視
輸入命令:make ,將GDB進行編譯
輸入make install ,進行安裝GDB
使用:gdb -v 檢視GDB的版本資訊,確認安裝是否正確
這裡寫圖片描述

vim配置

vim 是Linux的一種文字編輯器。
vim模式:三種模式:普通模式、插入模式、底行模式 
簡單配置vim:在使用者根目錄下找到一個隱藏檔名為.vimrc將其內容改變為以下程式碼即可完成配置

""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" 
" 一般設定 
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" 
" 設定預設解碼 
set fenc=utf-8 
set fencs=utf-8
,usc-bom,euc-jp,gb18030,gbk,gb2312,cp936 " 不要使用vi的鍵盤模式,而是vim自己的 set nocompatible " history檔案中需要記錄的行數 set history=100 " 在處理未儲存或只讀檔案的時候,彈出確認 set confirm " 與windows共享剪貼簿 set clipboard+=unnamed " 偵測檔案型別 filetype on " 載入檔案型別外掛 filetype plugin on " 為特定檔案型別載入相關縮排檔案 filetype indent on " 儲存全域性變數
set viminfo+=! " 帶有如下符號的單詞不要被換行分割 set iskeyword+=_,$,@,%,#,- " 語法高亮 syntax on " 高亮字元,讓其不受100列限制 :highlight OverLength ctermbg=red ctermfg=white guibg=red guifg=white :match OverLength '\%101v.*' " 狀態行顏色 highlight StatusLine guifg=SlateBlue guibg=Yellow highlight StatusLineNC guifg=Gray guibg=White """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " 檔案設定 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " 不要備份檔案(根據自己需要取捨) set nobackup " 不要生成swap檔案,當buffer被丟棄的時候隱藏它 setlocal noswapfile set bufhidden=hide " 字元間插入的畫素行數目 set linespace=0 " 增強模式中的命令列自動完成操作 set wildmenu " 在狀態行上顯示游標所在位置的行號和列號 set ruler set rulerformat=%20(%2*%<%f%=\ %m%r\ %3l\ %c\ %p%%%) " 命令列(在狀態行下)的高度,預設為1,這裡是2 set cmdheight=2 " 使回格鍵(backspace)正常處理indent, eol, start等 set backspace=2 " 允許backspace和游標鍵跨越行邊界 set whichwrap+=<,>,h,l " 可以在buffer的任何地方使用滑鼠(類似office中在工作區雙擊滑鼠定位) set mouse=a set selection=exclusive set selectmode=mouse,key " 啟動的時候不顯示那個援助索馬利亞兒童的提示 set shortmess=atI " 通過使用: commands命令,告訴我們檔案的哪一行被改變過 set report=0 " 不讓vim發出討厭的滴滴聲 set noerrorbells " 在被分割的視窗間顯示空白,便於閱讀 set fillchars=vert:\ ,stl:\ ,stlnc:\ """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " 搜尋和匹配 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " 高亮顯示匹配的括號 set showmatch " 匹配括號高亮的時間(單位是十分之一秒) set matchtime=5 " 在搜尋的時候忽略大小寫 set ignorecase " 不要高亮被搜尋的句子(phrases) set nohlsearch " 在搜尋時,輸入的詞句的逐字元高亮(類似firefox的搜尋) set incsearch " 輸入:set list命令是應該顯示些啥? set listchars=tab:\|\ ,trail:.,extends:>,precedes:<,eol:$ " 游標移動到buffer的頂部和底部時保持3行距離 set scrolloff=3 " 不要閃爍 set novisualbell " 我的狀態行顯示的內容(包括檔案型別和解碼) set statusline=%F%m%r%h%w\[POS=%l,%v][%p%%]\%{strftime(\"%d/%m/%y\ -\ %H:%M\")} " 總是顯示狀態行 set laststatus=2 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " 文字格式和排版 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " 自動格式化 set formatoptions=tcrqn " 繼承前一行的縮排方式,特別適用於多行註釋 set autoindent " 為C程式提供自動縮排 set smartindent " 使用C樣式的縮排 set cindent " 製表符為4 set tabstop=4 " 統一縮排為4 set softtabstop=4 set shiftwidth=4 " 不要用空格代替製表符 set noexpandtab " 不要換行 set nowrap " 在行和段開始處使用製表符 set smarttab """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " CTags的設定 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " 按照名稱排序 let Tlist_Sort_Type = "name" " 在右側顯示視窗 let Tlist_Use_Right_Window = 1 " 壓縮方式 let Tlist_Compart_Format = 1 " 如果只有一個buffer,kill視窗也kill掉buffer let Tlist_Exist_OnlyWindow = 1 " 不要關閉其他檔案的tags let Tlist_File_Fold_Auto_Close = 0 " 不要顯示摺疊樹 let Tlist_Enable_Fold_Column = 0 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " Autocommands """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " 只在下列檔案型別被偵測到的時候顯示行號,普通文字檔案不顯示 if has("autocmd") autocmd FileType xml,html,c,cs,java,perl,shell,bash,cpp,python,vim,php,ruby set number autocmd FileType xml,html vmap <C-o> <ESC>'<i<!--<ESC>o<ESC>'>o--> autocmd FileType java,c,cpp,cs vmap <C-o> <ESC>'<o autocmd FileType html,text,php,vim,c,java,xml,bash,shell,perl,python setlocal textwidth=100 autocmd Filetype html,xml,xsl source $VIMRUNTIME/plugin/closetag.vim autocmd BufReadPost * \ if line("'\"") > 0 && line("'\"") <= line("$") | \ exe " normal g`\"" | \ endif endif "has("autocmd") " F5編譯和執行C程式,F6編譯和執行C++程式 " 請注意,下述程式碼在windows下使用會報錯 " 需要去掉./這兩個字元 " C的編譯和執行 map <F5> :call CompileRunGcc()<CR> func! CompileRunGcc() exec "w" exec "!gcc % -o %<" exec "! ./%<" endfunc " C++的編譯和執行 map <F6> :call CompileRunGpp()<CR> func! CompileRunGpp() exec "w" exec "!g++ % -o %<" exec "! ./%<" endfunc " 能夠漂亮地顯示.NFO檔案 set encoding=utf-8 function! SetFileEncodings(encodings) let b:myfileencodingsbak=&fileencodings let &fileencodings=a:encodings endfunction function! RestoreFileEncodings() let &fileencodings=b:myfileencodingsbak unlet b:myfileencodingsbak endfunction au BufReadPre *.nfo call SetFileEncodings('cp437')|set ambiwidth=single au BufReadPost *.nfo call RestoreFileEncodings() " 高亮顯示普通txt檔案(需要txt.vim指令碼) au BufRead,BufNewFile * setfiletype txt " 用空格鍵來開關摺疊 set foldenable set foldmethod=manual nnoremap <space> @=((foldclosed(line('.')) < 0) ? 'zc':'zo')<CR> " minibufexpl外掛的一般設定 let g:miniBufExplMapWindowNavVim = 1 let g:miniBufExplMapWindowNavArrows = 1 let g:miniBufExplMapCTabSwitchBufs = 1 let g:miniBufExplModSelTarget = 1