第一次在virtualbox下寫c程序遇到的坑

由於選了Linux實驗課,實驗內容要求在ubuntu中編寫c程序,對Ubuntu一竅不通的我,走上了心酸的入坑路,一腳一坑,人生太難!

1.可以在Ubuntu中下載一個編譯器,我選擇在Ubuntu條件下安裝gcc和vim直接用命令行運行程序。
sudo apt-get install vim
sudo apt-get install gcc

安裝vim和gcc,編譯程序。
注:1.無法獲得鎖
解決辦法:
ps aux 找出apt所佔用的進程
sudo kill PID(四位數字)
sudo apt-get update更新

2.無法獲得鎖,權限不夠
轉root下執行該命令
3.終於,gcc順利安裝
輸入 gcc 查看版本,出現fatal error,no input files
或者輸入gcc-version也不對,那咋辦?
正確輸入:gcc --version
我當時覺得這兩個橫槓就是個符號,沒有特殊意義,就按照常規思維來輸入,這些錯誤都是爲我這樣的人量身打造的!

在這裏插入圖片描述

2.編寫第一個程序測試:
隨便進入一個文件夾以保存運行代碼,這裏我在home目錄下新建的文件夾爲.linux.c
使用:mkdir linux.c
使用ls命令查看,好的,該文件夾已經創建好了;
以下命令都用:cd linux.c切換到linux.c文件夾路徑下執行。

由於我們已經安裝了vim,使用
vi hello.c (hello.c是程序名)
i開始編輯程序,寫完後按下左上角 Esc,並“:wq”保存退出,
w:write,q:quit
在這裏插入圖片描述

好啦我們可以編譯程序了,輸入
gcc Hello -o hello.c
相當於gcc 可執行文件名 -o 程序名,可執行文件名可以自己起,在gcc編譯後會在linux.c文件夾下生成,可用ls查看

輸出結果,./可執行文件名
./Hello
進行編譯,注意hello的大小寫,這裏我的程序名爲小寫hello。
在這裏插入圖片描述
可以看到,圖中我的多次錯誤輸入都會提示無法顯示“沒有那個文件或目錄”輸入正確後,終於正確輸出“hello,Linux!”,算是我成功進階Linux吧!

3.第一個測試實驗寫成功後,我開始做實驗,實驗過程中創建文件夾以及編寫程序都跟上面一樣的步驟,只需要在相同路徑下**“vi 新的程序名”**,就可以開始寫啦!

寫完,同樣的方式運行,如果有錯誤,解決錯誤,最後沒問題了,再運行,發現:
在這裏插入圖片描述
第一次能正常運行,現在出現:未預期的符號“(”附近有語法錯誤,我查了很多的解決辦法,先解決自己的中英文符號錯誤問題,如果沒有,可能是你的代碼是從Windows複製過來的,需要將格式切換到linux下的,將原來的代碼用notepad++打開,修改一下代碼格式;

如果跟我一樣,直接在Linux裏運行的話,在所有的"("前加上“"轉義符,不會出現上面的錯誤了,但是會出現”相關代碼語句不存在“,那咋辦?很簡單,每次”vi 程序名“後,Esc ,:wq,保存退出,再次”gcc -o 可執行文件名 程序名“

4.寫完了,我怎麼把他移動到windows下去寫實驗報告呢?共享文件夾,在Windows中先創建一個文件夾,取名爲”LinuxShare“,用於存放共享文件,在**”設備->共享文件夾**“中創建

我的文件夾創建在D盤,選擇固定分配,這樣這個路徑能夠永久使用
現在進入虛擬機,打開終端,輸入
sudo mkdir /pcshare(創建名爲pcshare的文件夾)
sudo chmod 777 /pcshare(獲得權限)
sudo mount -t vboxsf LinuxShare /pcshare
這樣共享文件夾就激活啦

你以爲這麼簡單嗎?我又掉坑裏了
在這裏插入圖片描述
nfs掛載出現錯誤啦!在輸入mount 時,“wrong fs type,bad option ,bad superblock on"
先用”**sudo apt-get install nfs-common"**嘗試一下,還是沒有用,再查,需要安裝增強功能,“設備->安裝增強功能”,出現
在這裏插入圖片描述
錯誤,這時候點擊左邊工具欄中的光盤,右下角,彈出,再次安裝增強功能就成功啦!再次執行
sudo mount -t vboxsf LinuxShare /pcshare
成功!
"cd /pcshare "進入新建的文件夾,可以在Windows下的文件家中放入文件,在Ubuntu中用ls查看,在Ubuntu中用“mkdir ubuntu ”創建新的文件,在Windows中也能看到。

在這裏插入圖片描述
之後每次啓動虛擬機,都需要先在Terminal中輸入命令“sudo mount -t vboxsf LinuxShare /pcshare”。然後虛擬機/pcshare文件夾下創建的文件在PC機LinuxShare 文件夾下可以同步看到;PC機LinuxShare 文件夾下的修改虛擬機/pcshare文件夾下也可以看到。

訪問主機共享文件夾的方法
在終端命令行輸入 cd /mnt/ + 按下兩次Tab鍵 ,回車
即可進入主機中的共享文件夾。

留一個問題,我怎麼把Ubuntu中的截圖傳到Windows,有大佬看到能幫我解決下嗎?

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章