作業系統與環境設定
專案建置[0]
by 鹽亞倫
先來講講這學期我們會上些什麼
先來講講這學期我們會上些什麼
週數 | 內容 |
---|---|
[0] ~ [1] | 作業系統介紹、搭建寫程式環境 |
[1] ~ [2] | 用指令與電腦溝通、Vim |
[3] | 專案初探、Git與Github |
[4] ~ [7] | 物件導向程式設計 |
[6]、[8] | 編譯你的程式 |
[9] ~ [10] | 物件導向專案實作、成發 |
兩個字概括前半段的課程內容
指令
學習各種用指令與電腦溝通的方式
今天我們會上什麼?
今天我們會上什麼?
環境變數與安裝
建立寫程式環境
作業系統
Operating System
人
硬體
人
硬體
人
硬體
軟體
80列、矩形孔的標準的IBM打孔卡片
人
硬體
軟體
人
硬體
軟體
人
硬體
軟體
當電腦越來越複雜
軟體開始打架爭取硬體了...
如何分配資源?
人
硬體
軟體
作業系統!
當電腦越來越複雜
軟體開始打架爭取硬體了...
如何分配資源?
作業系統!
人
硬體
軟體
OS
常見的作業系統
UNIX
DOS
- 多使用者、多工作業系統
- AT&T的貝爾實驗室開發
- 原本免費供大眾使用,因此廣受歡迎
- 寫程式的標準
- 用shell script!
- 單一使用者、單工的作業系統
- IBM 和 Microsoft 研發的
- 主要用在個人電腦
- 用 batch script !
延伸出:
linux
freeBSD
macOS
Windows
Windows
Windows
Linux
A UNIX like OS,
The most important OS in the world
自由軟體運動
其他常見自由軟體:Firefox、Python...
你會發現,現在主流程式語言和環境最主要都是設計給linux等UNIX-like 系統!
Unix指令已經是每個程式設計師必備的知識
因為windows command太難用
開發環境
Development Environment
什麼是環境?
- 所有寫程式會用到的程式
- 蛤?
- 舉個範例:
-
乘一想用python寫一個
怪怪的discord機器人
python直譯器
一堆有的沒有的設定檔
DC bot 套件
程式編輯器
這就是環境!!!
搭建一個環境是寫程式
最重要的第一步!!!
這麼多東西怎麼裝?
- 套件管理系統:
- mac 的 Homebrew、Ubuntu 的 apt、arch linux 的 pacman
- python套件用pip、conda裝
學長我好懶......
IDEs !!!
for懶人,一次裝完editor, compiler, framework...
可是學長
你還是沒告訴我到底什麼是安裝啊?
命令列環境與安裝
Command-Line Interface & Installation
命令
廣義的命令
- 對電腦做任何一件事
- 例如:用滑鼠點開桌面上的a.txt檔,加入"AaW上課好無聊"這句話
狹義的命令
- 在命令列環境當中,用指令語言操控電腦
- 例如:
$ echo "AaW 上課好無聊" >> ~/Desktop/a.txt
- 之後的兩到三堂課都在講這個
CLI
- 用來打指令的地方
- windows 的 cmd 或是 powershell
- mac / linux 的 terminal
neofetch 指令的效果
可是,如果隨便找一台mac的terminal
輸入neofetch
會發現它顯示這樣
因為沒有安裝這個指令!!!
以Mac/Linux環境為例,要有辦法運行一個指令,要有一個執行檔 或 shell 檔 存放在某個地方
-> 各個bin資料夾!
以Mac/Linux環境為例,要有辦法運行一個指令,要有一個執行檔 或 shell 檔 存放在某個地方
-> 各個bin資料夾!
e.g: /usr/bin
/usr/local/bin
所謂的安裝,就是將執行檔以及他會用到的相對應檔案,放好讓電腦找得到!!!
舉例:neofetch 在安裝時,會去把蘋果logo的路徑找出來並記錄好
C++環境
C++ Environment
C++ 的環境有哪些東西?
C++ 的執行生產線
首先,不同作業系統環境不一樣
- 最常用的C++編譯器是GCC (GNU compiler collection) 的g++
- 設計給 Unix-like 環境用的
- 有沒有其他compiler?
- 微軟研發的C++編譯器:Microsoft Visual C++ (競賽圈沒人用)
- 虎視眈眈G++位置的:LLVM的clang (還是設計給linux用的)
MINGW 安裝
在 Windows上裝gcc/g++
MinGW簡介
Minimalist GNU for Windows
- 是將GCC編譯器和GNU Binutils移植到Windows平台下的產物
- 在Windows上模擬linux的運行來跑g++
1. 下載installer
2. 點開setup精靈
3. 一路按下一步
注意:這個地方叫做安裝路徑,不要亂動他!
安裝路徑
- 放一堆設定檔的地方
- Windows預設在 C:\\Program Files 或是C:\\Program Files (x86)
- mingw 預設在 C:\\MinGW
- 除非你很瞭解,不然不要亂動預設值!
- 尤其不要改到桌面!!!
你可以想像這堆設定檔全部跑到桌面上會發生什麼事...
繼續安裝,裝完桌面上會出現一個minGW installer
對不要懷疑你剛剛是在裝安裝器
點開他,左邊有一個 MinGW Base System子選單
勾選 mingw32-base、所有gcc和g++結尾的東西
如果分不出來就把右邊框框所有東西打勾
打勾方式:
按mark for installation
打勾完到左上方按這個
然後 Apply
等他跑完就裝好g++了
可以看到在 C:\MinGW\bin
裡面有一個 g++.exe
耶!可以編譯了
嗎?
修改環境變數
如果你現在打開cmd
輸入g++
會出現:
可是我們不是裝好g++了嗎?
為什麼系統找不到?
Path 變數
- 環境變數其中一項
- 在windows裏面沒有bin資料夾
- 要手動去紀錄電腦要去哪裡找指令!!!
- 我們要手動把裝完的g++的路徑告訴電腦!
補充:在linux裡面也有path變數,裡面存的就是各個bin資料夾的路徑
打開控制台
找到
「編輯系統環境變數」
建議用搜尋的
按編輯
新增
並且把剛剛g++.exe在的資料夾路徑複製過去
C:\MinGW\bin
按下確定
之後一路按確定就大功告成了!!!
最後一步:檢查
打開cmd / terminal
輸入 g++ -v 或是 g++ --version
出現版本序號就大功告成了!!!
Mac 和 Linux 裝gcc
其實根本就已經裝好了
Ubuntu / Debian
sudo apt install gcc
terminal 輸入
搞定
Xcode
Mac上裝類g++
步驟:
- 打開terminal
- 輸入以下指令:
xcode-select --install
3. 沒了
這就是Unix-like作業系統的好處,所以不要用windows
其實mac裝的gcc會是clang
不能 #include <bits/stdc++.h>
想要include的人另外找講師教你
VS code
聽說好用的編輯器
1. 下載installer
並且安裝
安裝精靈不用再一步一步帶著用了吧
安裝C++支援
這兩個也可以順手裝一下
安裝code runner
因為內建的執行沒有人成功用過
設定code runner
往下滑,把這三個打勾
執行
run code > 三角形按鈕
輸出結果在下面terminal標籤頁
下課嘍!
都會裝東西了嗎?
記得報名秋遊!