2015-05-29 110 views
2

我的老師告訴我,我的作業(一個簡單的程序,我選擇用C++編寫代碼)必須在Linux中運行。以下是他確切的說:在Windows和Linux上運行C++程序

」 ......你還應該有包含應由 剪切和粘貼運行所有命令行一個README文件,如果你使用C,然後

$ gcc –o 2010-11649-hairpin 2010-11649-hairpin.c 
$ 2010-11649-hairpin –input filename –l 200 –m 4 –h 20 

其中-l 200,-m 4等是程序的參數。

我一直使用Windows編碼,而且從命令行運行程序的經驗很少,所以我不確定我需要做什麼來確保我的程序可以在Linux中運行。有人能幫我弄清楚我需要做什麼嗎?我編寫了這個程序,當電訊局長嘗試在Linux中運行它時,我只需確保一切正常。

+1

如果您只是使用標準C++,則無需擔心兼容性問題。 –

+1

好吧,如果你想確定TA與你有相同的結果,那麼你需要在類似於你的TA的環境下測試編譯。你沒有訪問Linux計算機嗎? –

+0

如果你的老師告訴你需要在linux中編譯你的程序,但是至少沒有給你介紹使用linux的入門課程,那麼存在一個問題,並且在你的權限範圍內請他指導如何這樣做 – bolov

回答

5

首先,您必須通過在Linux上執行您的指令來嘗試此操作。

如果你已經用標準的C/C++編寫你的程序,它會編譯,然後在Linux上運行就好了。一旦你到了不太基本的部分,你有很大的機會使用操作系統特定的頭文件,它可能無法輕鬆工作。

在Linux下編譯C++程序時,通常希望使用g++gcc中的C++編譯器。根據你的程序,在你的例子中用g++代替gcc可能會起作用(儘管你的文件名可能不同)。 所以,你可能最終的東西,如:

g++ –o myprogram myprogram.cpp 
./myprogram –l 200 –m 4 

以上將只適用於在一個目錄中的所有源代碼的基本程序工作。

+0

我有一些幫助功能,我也需要編譯。如果'myProgram'依賴於輔助函數,比如說'Helper()'寫了一個獨立的.cpp文件,那麼讓'myProgram'通過終端工作的過程是什麼? – Adam

+0

您可以在第一個源文件之後添加其他源文件。所以你可以做'g ++ -o myprogram myprogram.cpp helper.cpp'。第二個命令'。/ myprogram'將從終端運行程序。 – Thirler

2

如果你的C++程序也只使用一個文件(例如hairpin.cpp),你可以使用幾乎相同的命令,除非你通過hairpin.cpp更換gcc通過g++hairpin.c。但是,如果您有足夠的時間和系統資源,我建議您嘗試在虛擬機中編譯和運行所有內容。 VirtualBox 是一個很好的免費虛擬化軟件,Linux Mint在我看來是一個非常適合初學者的發行版。

在VM上測試你自己的一切可能是確保一切按預期工作的最佳解決方案。

+0

對不起,我保持糾正在這裏:作爲@Thirler發佈在另一個答案,它也可以與更多的源文件,但都在一個單一的目錄。 – LPeteR90

3

查看您的程序在gcc中編譯的一種快速方法是使用在線編譯器,如ideone。粘貼你的代碼並選擇C++ 4.9.whateverversion(gcc),然後編譯並運行。

另一種方法是在虛擬機中安裝linux操作系統,最簡單,最方便的方法。您可以使用免費的oracle virtualboxVMWare。在VM

設置Linux是easy

還有其他的答案在這裏向您展示如何通過命令行編譯程序在Linux操作系統。

相關問題