iT邦幫忙

鐵人檔案

2025 iThome 鐵人賽
回列表
Software Development

30 天精通 C 語言建置與除錯:從 Makefile 到 CMake 跨平台實戰 系列

身為程式語言的「小白」,在偶然機會成為軟體工程師後,面對了許多人望而卻步的 C 語言工作。這對我而言是挑戰,也是成長的契機! 因此決定把一路跌跌撞撞的學習歷程寫下來和大家分享。從 VSCode 搭配 WSL 開始,到gcc 編譯、Makefile,理解如何從.c到執行檔,到接觸CMake,弄懂 CMakeLists.txt與makefile差異,並學會使用Make、Ninja...等建置環境,在除錯方面,學會了如何利用 gdb 下斷點、在vscode除錯以及使用 Python 輔助分析。希望能透過這30篇的紀錄分享,陪伴一同樣在學 C 的人,從陌生到熟悉,找到屬於自己開發節奏!

參賽天數 24 天 | 共 24 篇文章 | 6 人訂閱 訂閱系列文 RSS系列文
DAY 1

[Day 01] 生醫學生眼中的C語言

我的背景與主題簡介 小妹本是生醫背景出身,記憶以來的在學期間,我的生活圍繞在細菌細胞株、藥物測試與數據分析,對於程式語言幾乎完全陌生。當時我最多只是在統計軟體裡...

2025-08-31 ‧ 由 betahcy 分享
DAY 2

[Day 02] [system-setup] 工欲善其事,必先利其器 - 安裝 VSCode + WSL

後續更新請看 [Day 08] WSL 安裝問題解決 為何用WSL + VSCode 第一個問題就是:我要在哪裡寫+執行程式?如果想要單純執行其實可以安裝[Co...

2025-09-01 ‧ 由 betahcy 分享
DAY 3

[Day 03] [gcc] 用gcc編譯我人生第一個 C 程式:不是 Hello World!

這篇你會學到: 使用gcc指令編譯簡單的執行檔 有人說失敗為成功之母,但是其實成功才是成功之母,一開始我們下載了VSCode + WSL 就是為了可以速速把...

2025-09-02 ‧ 由 betahcy 分享
DAY 4

[Day 04] [gcc] 用過gcc了吧? 那我們現在來了解gcc!

這篇你會學到 gcc 基本語法與其用途 昨天的文章 (我是傳送門) 學會了使用gcc編譯檔案,產生可以在WSL上面運行的執行檔,接下來,會來介紹幾個gcc常用的...

2025-09-03 ‧ 由 betahcy 分享
DAY 5

[Day 05] [統整]什麼是 gnu、gcc、gdb、Make、CMake?

gnu(GNU’s Not Unix) 定位:自由軟體計畫,1983 年由 Richard Stallman 發起。 成果:提供了開發者常用的工具,例如:...

2025-09-04 ‧ 由 betahcy 分享
DAY 6

[Day 06] [makefile] 非得用MAKE不可嗎? MAKE的工具定位以及替代方案

先公布解答: 不是XDD 請原諒小妹前一天debug到深夜,突然一陣厭世,發文就比較不生動有趣XDD 前一天介紹了gcc gdb makefile cmake的...

2025-09-05 ‧ 由 betahcy 分享
DAY 7

[Day 07] [makefile] 知道MAKE的功用了? 那我們先來看看別人怎麼寫makefile!

在開始了解之前可以先問問自己下面幾個問題... 寫MAKE有基本的SOP可以follow嗎? 有! MAKEFILE的結構是啥? --> 請從 2 開始...

2025-09-06 ‧ 由 betahcy 分享
DAY 8

[Day 08][system-setup] WSL 安裝問題解決

WSL 安裝ubuntu問題解決 讓我們先回來一下下,之前Day 02有提到可以用WSL + VS code的版本編譯C code,但最近有收到反饋,如果本身電...

2025-09-07 ‧ 由 betahcy 分享
DAY 9

[Day 09] [gcc→make]了解makefile用途了齁? 那我們來對照一下makefile跟gcc的語法!

在這篇文章中,我們會了解... 還記得之前我們曾經使用 gcc 編譯 dog_meme畫出"this is fine ASCII art"嗎...

2025-09-08 ‧ 由 betahcy 分享
DAY 10

[Day 10] [make] 有了makefile了? 那我們開始編譯吧!

前一篇文章裡面我們知道gcc makefile 指令的對照之後,我們接下來要學習怎麼實際用makefile編譯出執行檔! 在這篇文章中,我們會了解... Ma...

2025-09-09 ‧ 由 betahcy 分享