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++程序有很深的了解了