cpp如何編譯
Ⅰ c++如何編譯啊 ~
以linux系統為例:
1、在連網的情況下,在終端中使用root超級用戶許可權輸入以下命令:
sudo apt-get install g++
並回車即可安裝C++編譯器g++。
2、安裝完畢,即可開始新建我們的一個C++工程了。下面以一個hello工程為例,簡單地介紹如何編譯一個 C++工程。
3、登錄Linux系統,打開終端,在當前目錄下使用mkdir命令新建一個hello的目錄;然後使用cd hello進入hello目錄中,並使用vi工具新建hello.h、hello.cpp、main.cpp、makefile四個文件。四個文件的內容分別如下:
1. hello.h文件
#ifndef HELLO_H_
#define HELLO_H_
class Hello {
public:
void print();
};
#endif
2. hello.cpp文件
#include "hello.h"
#include <iostream>
using namespace std;
void Hello::print() {
cout<<"Hello, welcome to Redhat Linux os!"<<endl;
}
3. main.cpp文件
#include "hello.h"
#include <iostream>
using namespace std;
int main() {
Hello h;
h.print();
return 0;
}
注意:這三個文件要以空白行結束,否則編譯時會有警告信息。
4. makefile文件
# this is a makefile of the c++ project hello
# the standard c++ compiler in the Redhat linux is g++
# written by young on June 27th, 2009
TARGET = .
CC = g++
CFLAGS = -g
CFLAGC = -c
MAINC = main.cpp
HELLO = hello.cpp
OBJ = hello.o
INCLUDE = -I$(TARGET)
EXEC = $(TARGET)/main
all: $(EXEC)
$(EXEC): $(OBJ) $(MAINC)
$(CC) $(CFLAGS) $(OBJ) $(MAINC) $(INCLUDE) -o $@
rm -f $(OBJ)
@echo "<<<<<< $@ is created successfully! >>>>>>"
$(OBJ): $(HELLO)
$(CC) $(CFLAGC) $(HELLO) -o $@
clean:
rm -f $(EXEC)
注意: makefile文件中的命令行(紅色字體)一定要以Tab建開頭,否則編譯通不過。
寫好makefile文件後,即可編譯工程。在終端中輸入make命令,回車後將顯示如下信息:
g++ -c hello.cpp -o hello.o
g++ -g hello.o main.cpp -I. -o main
rm -f hello.o
<<<<<< main is created successfully! >>>>>>
這些信息說明工程已被正確編譯,當前目錄下將生成一個main的可執行文件。
同樣,你也可以不使用makefile文件,而直接在終端上輸入以下兩行命令:
g++ -c hello.cpp -o hello.o
g++ -g hello.o main.cpp -I. -o main
也可以編譯這個工程。
使用ls -l命令查看當前目錄下的所有文件,確實有一個main文件。
在終端中輸入./main,即可運行程序。
Ⅱ cpp文件在VS2010環境下如何編譯
無論VS2010還是VC6,都需要工程才能編譯鏈接和執行(TC不需要)
根據代碼的具體情況創建對應的工程,並將CPP復制到工程目錄並加入到工程即可。
一般控制台工程和win32 console的可能性比較大。
Ⅲ vs2010如何編譯單個CPP文件。
可以明確的告訴你,無此種編譯器存在,編譯文件不光光是看源文件,各個工程中還有很多的配置文件存在,如果不建立工程,任何編譯器都是無法知道你到底是要編譯控制台程序,windows程序,或者是DLL。所以還不存在。
Ⅳ 如何用命令行編譯cpp文件
單個文件:
g++ file.cpp
這是最簡單形式,預設輸出為a.out,可以用-o命令指定輸出文件,比如g++ file.cpp f.out
多個文件:
g++ -c 1.cpp -o 1.o
g++ -c 2.cpp -o 2.o
g++ 1.o 2.o -o prog.out
鏈接成可執行文件:
一般用g++ -o file file.cpp
多個文件是g++ -o file file1.cpp file2.cpp
編譯C++不是用GCC而是G++.
如果用GCC能編譯但不能鏈接.
多個文件:
1.編譯多個文件,但不連接:
g++ file1.cpp file2.cpp
會生成兩個文件:file1.o, file2.o
2.連接:
g++ -o outFileName file1.o file2.o
會生成一個可執行文件:outFileName。
Ⅳ vs2013打開的cpp文件如何編譯
Visual Studio無法對單個源代碼文件直接編譯。
VisualStudio工程(.sln)編譯需要許多的參數,比如頭文件源文件,依賴庫等。如果沒有他們,強大的Studio只是廢物。
解決思路:
建立一個空VisualStudio工程->導入源代碼->編譯運行。
Step1 建立空項目
1.1 打開VisualStudio,按快捷鍵Ctrl + Shift + N,即可彈出新建項目的窗口。
(或,文件(FILE)->新建(NEW)->工程(Project)即可彈出新建項目的窗口。)
Ⅵ c++語言編程如何進行編譯
這個問題真不好回答。我嘗試作答,不採納沒關系,我可能說了半天也沒說到重點。
首先要一張將要被編譯的文件的文件列表,例如windows平台vc上的項目文件,linux平台的makefile里要寫。Mac的xcode. Android的.mk文件,都是需要來描述的。然後設置編譯參數。包括cpu指令集以及運行平台,調試版本,優化,引用庫 等等。接下來開始編譯
所謂的編譯 實質就是編譯之前 列表裡的h,c 等格式文件先編譯成obj文件(Mac平台mm文件和C++文件是不是都是編譯成obj不清楚)。放在一邊,然後根據配置,如果是應用程序(apk,app,exe)那麼 執行鏈接。 否則 就是簡單的放到一起 生成一個.lib(windows,mac) .so .a(linux,android)。
編譯時先執行 比 預編譯還要早的預編譯宏。具體是什麼 查下 我不記得了。然後執行預編譯。然後執行編譯 聲明 以及 實現。將實現編譯進obj,符號表 編譯到 pdb(windows) android那邊是什麼格式忘記了,因為我沒鏈接過。這個符號表 應該 僅僅是為了調試而用,當代碼因為異常而崩潰時,可以調用 查找 符號表,得到 代碼 崩潰所在行。windows可以生成dmp文件。linux,android可以生成coremp文件。
我的理解就是那麼多了,希望對你有所幫助。
Ⅶ linux 怎樣編譯cpp程序例如hello.cpp。等等,很簡單的源程序文件,
說道在liunx下編譯,就不得不說下Makefile了,它有個隱式規則很少人知道
比如你要編譯hello.cpp
你可以通過make hello.cpp
應該沒有比這個更簡單的編譯方法了。
在liunx下調式的話,就需要學習gdb調試方法了,這個網路一下,有很詳細的教程。
最後推薦一下《跟我一起寫 Makefile》這篇文章,看完你應該對linux下編譯C/C++程序有很深的了解了