NOI Linux 快速入門指南

關於安裝 NOI Linux

這裡請參考 NOI官方公告

下載 NOI Linux 光碟映像文件,之後按照安裝說明文檔進行安裝。

如果將其安裝為虛擬機,推薦使用 Vmware。創建虛擬機的過程中您可能會出現一系列問題,您可以根據具體問題自行百度。

系統配置

經過漫長的安裝過程,終於到了開機介面。

這裡的默認密碼為 123456 。

開機

網路

開機之後,如果你可以聯網的話當然要先聯網。

如果你的 NOI Linux 是虛擬機,並且連不上網,這多半是虛擬機的問題,不是系統的問題。請參照這個嘗試修復。

當然,如果對你來說聯網有點困難,不聯網也是可以進行編程的(真正考試的時候也不會讓你聯網)。

輸入法

NOI Linux 是自帶中文輸入法的。這非常的友好。

當你想要使用中文時,在輸入框下,只需要按 Ctrl + Shift 就可以切換為中文了。

中文

編輯器

1. gedit

NOI Linux 有許多編輯器(不是編譯器),經過一番初體驗,我覺得 gedit 還是比較陽間的。

打開

下面這張圖裡放的主要是系統自帶的編譯器及編輯器還有評測系統。但是這裡面的編輯器和編譯器用起來實在是令人窒息,全都沒有括弧補全功能,而且有的編輯介面令人不忍直視。

編輯器

接下來我要講的 gedit 不在上圖中,打開方式如下:

  1. 右鍵桌面,新建空白文檔,命名為 work.cpp (必須)。

    txt

  2. 右鍵新建的文檔,在彈出的框框中如果第一個就是 gedit,那麼直接點擊。如果不是 gedit,則查找其他應用程式,選擇 gedit。
    more
    gedit

配置

打開 gedit 之後,直接用可能會有點不舒服,你可以按照 /編輯/首選項 來把編輯器改成你想要的風格。
另外,裡面有個自動保存的功能,建議小於十分鐘保存一次。

首選項

注意:這個編輯器也沒有括弧自動補全的功能,這也就需要選手熟悉沒有括弧補全的編輯器。

外觀展示

code1

2. vim

這個東西非常強大,可以實現括弧補全,但是需要自己配置,配置起來比較麻煩。

打開

在 NOI Linux 下,可以使用終端打開 vim 。

  1. Ctrl + Alt + T 打開終端
  2. 輸入 vim 之後回車
    vim
    vim2
配置

之後,如果你想要繼續學下去的話,可以參照大佬們的部落格。

//www.cnblogs.com/heyboom/p/10522059.html

在這裡,關於 vim 的詳細用法,我就不再講解。

使用 makefile 編譯運行

1. 編寫 makefile

NOI Linux 下的編譯方法有很多。這裡,我只講一個較為簡潔而方便的方法,那就是 makefile

我們以桌面為工作區。
工作區就是你寫程式碼,編譯的地方。

先在桌面上建一個文件,命名為 makefile ,沒有擴展名,將這個文件和 work.cpp 放在同一目錄下。

makefile1

使用 gedit 打開 makefile,在裡面輸入以下內容:

名字隨便起:work
	g++ work.cpp -o work
	./work

注意:

  1. 第一行的 名字隨便起 是可以替換的。例如,你可以將它換成 qwq 等,甚至它的名字就可以是 名字隨便起
  2. 第二行和第三行之前是一個 Tab 鍵,並不是幾個空格。你可以將上面上面 Tab 字元複製過去。

保存並關閉文件。

2. 修改終端默認路徑

之後,我們需要將打開終端時的默認路徑修改為我們的工作區,也就是桌面。操作方法如下:

  1. 打開 /Home/
    home

  2. 顯示隱藏文件
    34

  3. 找到文件 .bashrc 並用 gedit 打開。

  4. 在末尾添加

    cd /home/noilinux/Desktop/
    

    效果如下圖:
    cd

    保存並關閉文件。

之後,我們可以愉快地編譯了!

注意:如果你不想把工作區放在桌面,而是某一個文件夾,這個路徑你可以改為你的文件夾地址。

3. 編譯

首先確保 work.cpp 沒有編譯錯誤,再按 Ctrl + alt + T 打開終端,輸入 make 之後回車 。

效果如下:
makeok

注意:你的程式輸出最後需要額外回車一行,否則你輸出之後會造成一些無法描述的情況,看起來特別☹️️。

結尾不回車的樣子:
non

如果說我們編譯錯誤了,終端會返回編譯錯誤的資訊。

編譯錯誤的樣子:
error

當然,編譯的時候我們只能用 work.cpp 這一個文檔。正常考試的時候有多道題。我們可以打完一個題之後,將程式另存為另一個文件。然後把 work.cpp 清空,繼續編寫下一個題。

總之,我們只能編譯 work.cpp 這個程式。而編譯過程只需要打開終端,輸入一個 make 指令,就可以完成編譯了。編譯的過程順便也運行了以下程式。是不是很方便快捷呢?!

4. 編譯開關

如果說,我們需要顯示所有警告資訊;或者題目非常優秀,給我們開 C++11 , 而且給我們開 O2 優化。那麼,這些編譯開關我們怎麼自己開呢?

命令行編譯的基本格式:

g++ work.cpp -o work 編譯開關

那麼,我們只需要在 makefile 裡面添加編譯開關即可。

比如說要添加

-Wall -Wextra -std=c++11 -Ofast

正確的操作是這樣的:
kaiguan

保存文件並退出。

接下來,我們試一下編譯開關有沒有開上。

我們知道,當我們在程式里定義了一個變數,如果接下來變數沒有使用,那麼它會發出警告。我們可以利用這個特性來判斷我們有沒有開上編譯開關。

suchas

打開終端,輸入 make

如果你的終端像下圖這樣,那麼你就成功了。

wall

至此,我們就完成了編輯、編譯和運行的工作。這樣幾乎已經滿足了考試的需要。

總結

關於 NOI Linux 的使用,我就先探索到這裡。

這篇部落格僅僅是一個快速入門指南,主要是為了幫助沒有用過該系統的選手快速適應環境。
如果你需要 GDB 調試,你可以使用 GUIDE ,當然教程需要上網搜索大佬的部落格……

如果你有更好的建議,或者我的表述出現了某些問題,歡迎在下方評論留言。

2021 是充滿機遇的一年。期待在這一年裡大家學業有成,事業順利,RP++

EdisonBa

2021.2.1 初次編輯

Tags: