linux下如何编译c++工程项目

15 篇文章 1 订阅
首先,你必须 有一 个Linux开发环境,这样才能进行C++开发。笔者用的是安装在虚拟机中的Ubuntu 9.04,Ubuntu操作系统是没带C++编译器g++。在连网的情况下,在终端中使用root超级用户权限输入以下命令:
sudo apt-get install g++
并回车即可安装C++编译器g++。

安装完毕,即可开始新建我们的一个C++工程了。下面以一个hello工程为例,简单地介绍如何编译一个 C++工程。

登录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++ proje ct hello
# the stan dard c++ c ompiler in   the  Redhat linux is g++
# written by young on June 27th, 20 09
            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,即可运行程序。
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在Linux下,可以使用GCC编译器(GNU Compiler Collection)来编译C++程序。首先需要确认是否已在系统中安装了GCC,可以在终端中输入命令“g++ -v”来检查是否已安装。如果没有安装,则需要使用包管理器进行安装。安装完成后,在终端中使用命令“g++ 文件名.cpp -o 输出文件名”来编译C++程序,其中文件名.cpp为要编译的源代码文件名,输出文件名为可执行文件的名称。编译完成后,可进入终端中运行可执行文件来测试程序。 ### 回答2: 在Linux系统中编译C工程需要经过以下步骤: 1. 安装C编译器 在Linux中默认可能未安装C编译器,需要先安装GCC等编译器,可以打开终端输入以下命令进行安装,比如在Ubuntu和Debian中可以使用apt-get命令安装: sudo apt-get install build-essential 该命令会安装C编译器和构建工具包。 2. 创建Makefile文件 Makefile是用来编译C源代码的一个构建文件,通常包含编译器选项、编译文件列表和依赖关系等信息。可以使用文本编辑器创建Makefile文件,命名为Makefile。 3. 编写C语言源代码 在创建Makefile文件之前,需要先编写C源文件。可以使用任何文本编辑器,比如vim、gedit等打开一个空文件,将C源代码写入文件并保存。 4. 编写Makefile文件 Makefile文件的格式是特定的,其中包含了如何编译和链接项目中所有的源代码文件。在Makefile文件中,需要提供每个源文件的文件名和目标文件的名称。编译器选项,如编译标志和库路径也需要在Makefile文件中指定。 一个简单的Makefile文件可能如下所示: CC=gcc CFLAGS=-std=c99 -Wall -Wextra LDFLAGS=-lm SRC=main.c foo.c bar.c OBJ=$(SRC:.c=.o) EXEC=myprogram all: $(EXEC) $(EXEC): $(OBJ) $(CC) $(LDFLAGS) -o $@ $^ %.o: %.c $(CC) $(CFLAGS) -o $@ -c $< clean: rm -f $(EXEC) $(OBJ) 5. 编译项目 在终端进入到项目目录下,并运行make命令。Make会查找Makefile文件并按照其中指定的规则编译和链接项目源代码。 make 完成编译后,会在当前目录下生成可执行程序文件。可以使用以下命令运行程序: ./myprogram 在Linux系统中编译C工程需要这些步骤,诸如修改源代码和调试程序,也需要学习。 ### 回答3: 在 Linux 系统下编译 C 项目可以使用 GCC 编译器。GCC 是 GNU Compiler Collection 的缩写,是一套由 GNU 开发的编程语言编译器。GCC 编译器在 Linux 系统中的使用非常广泛,特别是在 C 编程方面。 以下是一个简单的编译 C 项目的步骤: 1. 打开终端并切换到项目的根目录。 2. 使用文本编辑器打开 Makefile 文件,Makefile 文件是一个文本文件,包含有关包含在项目中的文件及其之间的依赖关系的信息。 3. 确认 Makefile 文件中包含所有项目的源代码文件。 4. 确认 Makefile 文件中包含 GCC 编译器的路径和编译器标志。 5. 使用 GCC 编译器将源代码编译成可执行文件。在终端中输入以下命令:``` $ make ``` 6. 如果没有编译错误,将在根目录下创建可执行文件,使用以下命令运行可执行文件: ``` $ ./executable_file ``` 7. 如果需要重新编译项目,请使用清除命令将所有的项目文件和可执行文件删除,并执行步骤 5 重新编译项目: ``` $ make clean $ make ``` 以上是一个简单的编译 C 项目的步骤。当然,不同的项目需要使用不同的编译器标志和编译选项。在编写 Makefile 文件时,请参考 GCC 编译器和所使用的库的文档。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值