1. 程式人生 > >在VirtualBox上面安裝Ubuntu 14.04遇到的問題及對策

在VirtualBox上面安裝Ubuntu 14.04遇到的問題及對策

前幾天在我的Win7系統上面安裝了Cygwin,通過它中的g++4.9.3上運行了一個採用C++11新特性的程式,發現編譯不通過,並且我確信該段程式程式碼正確。於是就想利用Win7系統上安裝的VirtualBox上面的Ubuntu系統來試試在真正的g++4.9.3執行是否通過。下面就是我做上述努力遇到的問題及對策。

1 升級VirtualBox中的Ubuntu 12.04

我的VirtualBox版本是4.1.6,於2011年底安裝。剛開始安裝的是Ubuntu 8.04,最近幾年連續升級了幾次,先是10.04,然後是12.04。現在的版本是12.04,其自帶的g++版本是4.6.3,根本不支援C++11新特性。而我需要的是g++4.9.3,怎麼辦呢?我想到的是升級VirtualBox中的Ubuntu 12.04到14.04。

點選下圖中的升級按鈕,
這裡寫圖片描述
在準備安裝的過程中出現了下面的錯誤提示:
這裡寫圖片描述
實際上這個問題在一個月前我升級Ubuntu12.04的時候就遇到了,我還特地看了看Win7 (Host OS)系統上面的PAE設定,是enabled的狀態。當時沒深究,就把該問題放下了。

後來想起來了,Ubuntu 12.04是一個 Guest OS,調整PAE的狀態必須依靠VirtualBox中與之對應的虛擬機器。

1.1 VirtualBox中設定PAE的方法

按照下圖中的操作順序進行VirtualBox與Ubuntu12.04對應的虛擬機器的PAE設定,注意要先關閉該虛擬機器。
這裡寫圖片描述

1.2 VirtualBox 4.1.6不支援升級到Ubuntu 14.04

解決了PAE的問題後,就繼續升級Ubuntu 12.04。反反覆覆進行了3次,在升級快要完成,配置硬體的時候,VirtualBox總會彈出一個對話方塊,提示說:系統遇到一個問題,需要關閉。

沒辦法,只有放棄這個方案。我分析了一下原因,可能是因為VirtualBox是一個2011年出現的老版本。我決定安裝新版的VirtualBox軟體,然後在其中安裝全新Ubuntu 14.04.

2 安裝 VirtualBox 5.0.2後全新安裝Ubuntu 14.04

在安裝Ubuntu 14.04的映象檔案之前,就像上述的原因,必須將PAE設定為enbaled。

在戰戰兢兢的心情下,我順利完成了Ubuntu 14.04系統的安裝。接下來遇到的問題依次為:

2.1 Ubuntu 14.04啟動後總是提示”系統遇到了問題,是否報告“

2.2 執行系統後分辨率的調整

安裝後你會發現,Ubuntu 14.04的系統介面非常小,解析度非常低,即使採用系統中解析度設定,發現都是灰色的,無法進行更高的調整。

該問題的解決需要安裝VirtualBox 的增強功能 (Guest Addition)。安裝後即可進行解析度的調整,同時介面就會鋪滿整個電腦螢幕。關於如何安裝增強功能,請參見博文《Win7系統與它的Virtualbox中安裝的Ubuntu14.04共享資訊的幾種方法》的第一節內容。

2.3 圖形化介面執行慢,Dash的動畫功能卡

因為Ubuntu14.04 對電腦的硬體要求特別高,而我又將該系統裝在了虛擬機器上面,變得慢就容易理解了。所以我們就需要關閉系統的動畫切換和一些無關的功能,從而能使我們集中於Ubuntu 14.04中的程式設計環境。

要進行如下方面的設定:

2.4 gcc 4.8.4版本的升級

Ubuntu 14.04系統安裝成功後,已預設安裝了gcc 4.8.4,但並沒有按照g++、make等相應的程式設計工具,需採用下面的命令安裝它們:

sudo apt-get install build-essential

但是,我想執行的編譯器版本為g++4.9.3,需要升級到該版本。關於在Ubuntu 14.04系統中如何升級gcc/g++到版本4.9,請參見博文《Ubuntu 14.04中升級gcc到版本4.9.2並切換使用它們》

3 結束語

軟體的版本問題確實是一個問題。本文所牽涉到的版本問題有:VirtualBox版本、Ubuntu系統版本、gcc/g++版本。但不管版本如何變化,想使用軟體新版本的功能,就必須將一系列相關軟體的版本都調整為最新即可。

遇到問題不可灰心,問題總有解決的辦法。電腦老的話,我將在適當的時候更換一臺新的電腦。還有一個值得注意的問題是,在解決問題的時候,靈活地使用Ubuntu中的Terminal是一個很重要的技能。