午夜视频在线网站,日韩视频精品在线,中文字幕精品一区二区三区在线,在线播放精品,1024你懂我懂的旧版人,欧美日韩一级黄色片,一区二区三区在线观看视频

分享

Linux C/C 編程環(huán)境搭建全攻略:如何讓你的開發(fā)環(huán)境好用到飛起?

 西北望msm66g9f 2024-12-17

程序員的世界,總繞不開兩樣?xùn)|西:一個是寫代碼,另一個是配環(huán)境。尤其是在 Linux 下開發(fā) C 和 C++,很多新人被各種工具鏈、依賴庫和配置搞得頭昏腦漲,仿佛一不小心就能把系統(tǒng)玩崩潰。但其實,搭建一個好用的開發(fā)環(huán)境并不難,只要方法對頭,分分鐘讓你覺得 “編程,原來這么絲滑!”

今天,就跟著小康一步步把 Linux 的 C、C++ 環(huán)境搭建得妥妥的,學(xué)會之后,能讓你寫代碼寫到飛起??!

Step 1: 裝上基礎(chǔ)設(shè)施,起步不迷路

1.1 裝系統(tǒng):選擇 Linux 發(fā)行版

搭建開發(fā)環(huán)境的第一步,得有塊地?。inux 系統(tǒng)是主場:

  1. 常見的 Linux 發(fā)行版:Ubuntu(新手友好、 資料豐富),Debian( 穩(wěn)定可靠,適合進階用戶  )。
  2. 安裝方式
  • 如果是新手,直接在 Windows 上用 VMware 虛擬機 或 WSL(Windows Subsystem for Linux)搞起,簡單又省事。
  • 資深開發(fā)者:直接裝雙系統(tǒng),甚至用云服務(wù)器(阿里云/騰訊云隨便挑)。

Tips:

  • 初學(xué)者優(yōu)先考慮 Ubuntu 或 WSL,簡單不折騰,Ubuntu 建議安裝 Desktop 版(桌面版)。
  • 硬盤空間建議分配 50GB 以上,避免后續(xù)安裝工具時告急。
  • 內(nèi)存建議分配至少 4GB,運行開發(fā)工具更流暢;8GB 以上更佳。
  • CPU 核心數(shù)至少設(shè)置為 4 核,保證編譯和多任務(wù)處理不卡頓。
  • 網(wǎng)絡(luò)適配器選擇橋接模式,虛擬機可以直接訪問宿主機網(wǎng)絡(luò),聯(lián)網(wǎng)更方便。

PS:沒必要為環(huán)境花大錢,初學(xué)者一臺普通電腦 + 免費虛擬機環(huán)境足夠用。

因為小康的主力開發(fā)環(huán)境是 Ubuntu,所以接下來的步驟會基于 Ubuntu 系統(tǒng),如果你選的也是 ubuntu,那跟著我操作準沒錯!

1.2 安裝必備的編譯工具鏈  (GCC、G++ 和 Make 等基礎(chǔ)工具包)

裝上 C/C++ 編譯器,Linux 下最常見的是 GCC:

sudo apt update  # 更新軟件包列表,確保你的系統(tǒng)知道有哪些最新的軟件包和更新。
sudo apt install build-essential  # 安裝構(gòu)建工具包,包含編譯 C/C++ 程序所需的基礎(chǔ)工具,如 gcc、g++、make 等。

sudo apt install build-essential 這條命令干了幾件事:

  • 安裝 GCC 和 G++ 編譯器。
  • 配上 Make 工具,讓你能用 Makefile 自動化編譯。

安裝完后,試試它們是否裝好了:

gcc --version
g++ --version
make --version

如果版本號跳出來了,恭喜你,第一步搞定!

Step 2: 配個順手的代碼編輯器(Vim、VS Code、CLion,三劍客)

2.1 終端黨:Vim(必會)

  • Vim 是 Linux 系統(tǒng)的標配編輯器,但剛上手可能有點懵圈。

裝一下:

sudo apt install vim

初次使用可以先簡單學(xué)幾個快捷鍵,比如:

  • i 進入插入模式,可以正常寫代碼了。
  • Esc 退出插入模式。
  • :wq 保存并退出。

2.2 GUI 黨:VS Code (強烈建議)

如果你更習(xí)慣圖形化界面,想要輕便又功能強大的編輯器,直接選 VS Code,上手簡單,插件生態(tài)豐富,能滿足絕大多數(shù) C/C++ 開發(fā)需求。

在 Ubuntu 上通過命令行安裝也很簡單:

  • 下載 VS Code

    直接去官網(wǎng) https://code./,把 .deb 文件下載下來:

  • 安裝 VS Code:用系統(tǒng)自帶的安裝工具裝上去:

sudo dpkg -i vscode.deb
  • 修復(fù)依賴(如果有問題):安裝過程中如果提示有依賴沒裝,運行這行命令搞定:
sudo apt-get -f install
  • 安裝插件:打開 VS Code 左側(cè)插件市場(小積木圖標),搜索以下插件并安裝:

    • C/C++:代碼補全、語法檢查必備。
    • Code Runner(可選):一鍵運行代碼(運行小型代碼片段、測試代碼邏輯時非常方便)
    • CMake Tools:如果項目用到 CMake,這個插件很方便。

裝完后,直接在項目根目錄輸入 code . 就能啟動 VS Code,界面清爽、功能強大,寫 C/C++ 程序不要太舒服!

2.3 高級黨:CLion(可選)

如果你追求更強大的功能和更智能的體驗,可以試試 JetBrains 出品的 CLion。這是專為 C/C++ 開發(fā)打造的 IDE,優(yōu)點一大堆:

  • 自動管理 CMake 配置:再也不用手動折騰 CMakeLists.txt。
  • 智能代碼補全:效率高得離譜,寫代碼特別順手。
  • 內(nèi)置調(diào)試器:支持 GDB 和 LLDB,調(diào)試功能強大,界面直觀好用。
  • 跨平臺一致性:不管是 Windows、Linux,還是 macOS,都能保證一致流暢的開發(fā)體驗。

安裝方式:

  1. 下載:直接去官網(wǎng) https://www./clion/ 下載對應(yīng)環(huán)境的版本即可(支持 windows 和 Linux )
  2. 安裝:根據(jù)提示一步步安裝即可。
  3. 費用: 學(xué)生或新手可以申請免費使用(JetBrains 提供學(xué)生版和試用期),不想付費可以網(wǎng)上自行百度破解版。

Step 3: 讓代碼跑起來:編譯與運行的正確姿勢

3.1 編譯 & 運行

寫了第一段 C 代碼,保存成 hello.c,可以這么搞:

#include <stdio.h>

int main() {
    printf('Hello, World!\n');
    return 0;
}

編譯運行:

gcc hello.c -o hello
./hello

C++ 同理:

#include <iostream>
using namespace std;

int main() {
    cout << 'Hello, C++!' << endl;
    return 0;
}

編譯運行:

g++ hello.cpp -o hello
./hello

3.2 常見問題排查

  • 報錯: gcc: command not found說明 GCC 沒裝對,回到 Step 1.2 再試試。
  • 缺少 stdio.hiostream
    可能是編譯器路徑出問題了,用 sudo apt reinstall build-essential 重新裝一遍。

Step 4: 配好調(diào)試工具,開發(fā)效率翻倍

4.1 安裝 GDB

調(diào)試工具 GDB 是 C/C++ 開發(fā)的必備利器:

sudo apt install gdb

簡單調(diào)試流程:

g++ -g hello.cpp -o hello  # 編譯的時候必須要加上 -g 參數(shù),不然調(diào)試不了。
gdb ./hello

進入 gdb 后:

  • run:運行程序。
  • break main:在 main() 函數(shù)處打斷點。
  • next:單步執(zhí)行。
  • print <變量名>:打印變量值。

4.2 配合 VS Code 調(diào)試

如果你用的是 VS Code,裝個 C/C++ 調(diào)試插件后,直接配置 launch.json 文件,整個調(diào)試流程會更直觀。

4.3 排查內(nèi)存問題:Valgrind

內(nèi)存泄漏是 C/C++ 開發(fā)中常見的坑,Valgrind 是個強大的工具,可以幫你檢查程序的內(nèi)存問題。

1、安裝 Valgrind

sudo apt install valgrind -y

2、使用方法:假設(shè)你有一個編譯好的程序 your_program,直接運行:

valgrind ./your_program

它會分析你的程序運行過程中分配和釋放的內(nèi)存。

3、看結(jié)果:

  • 正常情況: 如果看到 All heap blocks were freed,恭喜,沒有內(nèi)存泄漏!
  • 有問題: 如果顯示 definitely lostindirectly lost,說明有內(nèi)存沒有正確釋放,需要檢查代碼,比如 mallocfree 是否匹配。

一句話總結(jié): 裝個 Valgrind,跑一遍程序,就能快速找到內(nèi)存泄漏問題。簡單高效,C/C++ 開發(fā)必備!

Step 5: 開發(fā)效率提升:從配置到自動化

5.1 編寫 Makefile,解放雙手

手動敲編譯命令容易出錯,Makefile 讓一切變得自動化:

# 定義編譯器,這里選擇 GCC
CC = gcc  

# 定義編譯選項:
# -Wall:打開所有警告
# -g:生成調(diào)試信息
CFLAGS = -Wall -g  

# 定義目標規(guī)則 'all',默認目標是 main
all: main  

# 定義如何生成 main 可執(zhí)行文件
# 使用目標 main.o 和 func.o 鏈接生成 main
main: main.o func.o  
 $(CC) $(CFLAGS) -o main main.o func.o  

# 定義生成 .o 文件的通用規(guī)則
# 這里 $< 表示匹配的 .c 文件
%.o: %.c  
 $(CC) $(CFLAGS) -c $<  

# 定義清理規(guī)則,刪除所有中間文件和最終生成的目標文件
clean:  
 rm -rf *.o main

執(zhí)行命令:

make         # 自動編譯,生成目標文件 main
make clean   # 清理編譯生成的中間文件和可執(zhí)行文件

5.2 使用 CMake:大型項目福音

寫 Makefile 太麻煩?那就用 CMake!步驟如下:

  • 安裝:
sudo apt install cmake -y
  • 項目根目錄創(chuàng)建 CMakeLists.txt 文件:
# 指定最低版本要求,這里是 3.10
cmake_minimum_required(VERSION 3.10)  

# 定義項目名稱,這里是 MyProject
project(MyProject)  

# 添加可執(zhí)行文件 main,并指定需要的源文件
# main.cpp 和 func.cpp 是需要編譯的 C++ 源文件
add_executable(main main.cpp func.cpp)
  • 執(zhí)行命令:
# 創(chuàng)建一個名為 build 的目錄,存放生成的構(gòu)建文件
mkdir build && cd build  

# 使用 CMake 生成 Makefile,.. 表示查找上級目錄中的 CMakeLists.txt
cmake ..  

# 使用 make 根據(jù)生成的 Makefile 編譯項目
make

5.3  Makefile 和 CMake 的對比

  • Makefile:適合小型項目,手動維護規(guī)則,簡單直接。
  • CMake:適合跨平臺和大型項目,自動生成 Makefile 等構(gòu)建文件,更靈活強大。

Step 6: 環(huán)境美化:打造專屬開發(fā)體驗

6.1 別再盯著黑乎乎的終端了!

換個好看的終端工具,比如 zsh + oh-my-zsh

  • 安裝 zsh:
sudo apt install zsh
chsh -s $(which zsh)
  • 安裝 oh-my-zsh:
sh -c '$(curl -fsSL https://raw./ohmyzsh/ohmyzsh/master/tools/install.sh)'

如果上面的命令卡住:

  • 打開瀏覽器訪問:https://raw./ohmyzsh/ohmyzsh/master/tools/install.sh
  • 將內(nèi)容復(fù)制到你的 Linux 主機用戶主目錄~ 下的 myinstall.sh 的文件中:
vim ~/myinstall.sh
  • 保存后運行本地腳本,即可完成安裝。
sh ~/myinstall.sh

6.2 打造個性化界面

  • 配置終端主題,推薦 Powerlevel10k

Powerlevel10k 是一款功能強大且高顏值的 Zsh 主題,可以讓你的終端界面更直觀、更炫酷。安裝方法如下:

git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ~/.oh-my-zsh/custom/themes/powerlevel10k
echo 'ZSH_THEME='powerlevel10k/powerlevel10k'' >> ~/.zshrc
source ~/.zshrc
  • 配置常用插件

安裝常用插件可以顯著提升終端的效率和體驗。以下是幾個常用且實用的插件:

  • 自動補全插件:zsh-autosuggestions : 這個插件可以根據(jù)歷史記錄自動補全命令,非常省事:
  • 語法高亮插件:zsh-syntax-highlighting ,輸入命令時,正確的命令會顯示為綠色,錯誤的命令則高亮紅色:

配置過程:


# 1、下載相關(guān)庫 
git clone https://github.com/zsh-users/zsh-autosuggestions ~/.oh-my-zsh/custom/plugins/zsh-autosuggestions
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ~/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting

# 2、vim 打開 ~/.zshrc 文件,找到 plugins=(...),手動添加插件
plugins=(git zsh-autosuggestions zsh-syntax-highlighting)

# 3、加載配置,使其生效
source ~/.zshrc

zsh 安裝與配置參考鏈接 :https://www./blog/dev-tools/better-use-terminal-with-zsh

Step 7: 使用 Git 管理代碼

工作寫代碼時,版本管理是少不了的,Git 是一個強大的工具,可以幫助你記錄代碼的每次修改,還能和團隊協(xié)作。

7.1 安裝 Git

在 Ubuntu 中直接執(zhí)行以下命令安裝:

sudo apt install git -y

檢查安裝是否成功:

git --version

7.2 初始化 Git

進入項目文件夾 myproject(你自己新建的),初始化一個 Git 倉庫:

git init

這會在 myproject 目錄下創(chuàng)建一個 .git 文件夾,用來管理版本信息。

7.3 配置用戶名和郵箱

第一次使用 Git 時需要配置用戶名和郵箱:

git config --global user.name '你的名字'
git config --global user.email '你的郵箱'

7.4 基本使用

1. 添加文件到暫存區(qū)
告訴 Git 要追蹤哪些文件的修改:

git add 文件名    # 添加單個文件
git add .         # 添加所有修改的文件

2. 提交修改到版本庫
將暫存區(qū)的修改提交到 Git 倉庫:

git commit -m '你的提交說明'

3. 查看狀態(tài)
隨時檢查哪些文件有修改或者未被提交:

git status

4. 查看提交歷史
檢查項目的歷史提交記錄:

git log

7.5 推送到遠程倉庫

如果你想保存代碼到 GitHub 或 GitLab 等遠程倉庫,先關(guān)聯(lián)遠程地址:

git remote add origin 遠程倉庫地址  

# 遠程倉庫地址: git@github.com:xiaokangcoding/test.git 

然后把代碼推送到遠程倉庫:

git push -u origin master  
# -u 是 --set-upstream 的簡寫,用于設(shè)置本地分支與遠程分支的 跟蹤關(guān)系,方便后續(xù)的 git push 和 git pull 操作。

git push    # 推送當前分支到遠程
# 后續(xù)推送直接使用 git push,不需要分支名。

7.6 克隆遠程倉庫

如果你需要下載遠程倉庫的代碼到本地:

git clone 遠程倉庫地址

# 遠程倉庫地址: git@github.com:xiaokangcoding/test.git 

7.7 小結(jié)

Git 是代碼管理的神器。記住幾個核心命令:

  • git add:把修改添加到暫存區(qū)。
  • git commit:把暫存區(qū)提交到版本庫。
  • git push:把本地代碼上傳到遠程倉庫。
  • git pull:從遠程倉庫同步代碼。

簡單又高效,用好 Git,你工作開發(fā)效率會飛起!

總結(jié):開發(fā)環(huán)境好了,效率也飛起了

本篇文章從選擇 Linux 系統(tǒng),到安裝開發(fā)工具、配置調(diào)試環(huán)境,再到美化終端和提升效率,你已經(jīng)掌握了一套完整的 Linux C/C++ 開發(fā)環(huán)境搭建 攻略。下一步?就是擼起袖子寫代碼啦!

最后:

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多