导航:首页 > 源码编译 > gcc编译多个c

gcc编译多个c

发布时间:2024-03-01 23:14:10

Ⅰ gcc 编译c的多文件程序问题

不怕麻烦的话呢,可以调整#include结构来让各c文件相连。。
建议呢,把类型与函数的声明整理到特定的.h文件中,然后用#ifndef来使其只被包含一次,然后,在用到其它文件中实现的函数的时候将相应的.h文件include进来就好。这样呢,编译的时候可以单个文件逐一编译:
gcc -c main.c -o main.o
gcc -c del.c -o del.o
gcc -c insert.c -o insert.o
参数-c意思是只编译不连接,-o是名命输出文件。
全部编译成.o文件无误后,再将所有的.o文件相连:
gcc main.o del.o insert.o -o prog
就可以生成prog了。

然后举个例子说明处理.h文件:
比如这个create.c。里面定义了一个struct和一个函数。那么就可以写create.h如下:

#ifndef __CREATE_H__
#define __CREATE_H__
struct student
{
long num ;
float score;
struct student *next;
};
struct student *creat(void);
#endif

然后呢,因为student这个struct在这个.h文件里已经声明了,所以create.c里只要写#include "create.h",而在用到这个struct或者这个函数的场合,也只要这样简单一句就可以了。而.h文件开头的#ifndef可以保证同一个h文件不会被多次包含。当然,如果编译器支持的话,用#pragma once也许会比#ifndef更省事一些。

以上。

Ⅱ GCC问题:两个.C文件编译成一个.O文件

直接这么做的话,不可以。
不过你可以写一个.c文件,里面
#include "xxx.c"
#include "yyy.c"
这样,然后再编译,就能变成一个.o了

Ⅲ 如何编译C文件

编译C文件用GCC。
编译C文件常用方法:
单个文件:
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。
如果想,一步就完成编译和连接,那么:
g++
-o
outFileName
file1.cpp
file2.cpp
-o选项控制是否连接。

Ⅳ gcc多文件编译 三个文件:tree.c tree_fun.c tree.h 我怎么把他们编译成一个可执行文件

写一个Makefile文件,如下:
SOURCE = tree.c tree_fun.c
DEST = main
GCC = gcc
FLAGS =
all:
$(GCC) $(SOURCE) $(FLAGS) -o $(DEST)
这样就可以直接make,可以编译这三个文件了,编译成的可执行文件是main

linux下 c语言多文件编译

如果有多个源文件,基本上有两种编译方法:
[假设有两个源文件为test.c和testfun.c]

1. 多个文件一起编译
用法:#gcc testfun.c test.c -o test
作用:将testfun.c和test.c分别编译后链接成test可执行文件。

2. 分别编译各个源文件,之后对编译后输出的目标文件链接。
用法:
#gcc -c testfun.c //将testfun.c编译成testfun.o
#gcc -c test.c //将test.c编译成test.o
#gcc -o testfun.o test.o -o test //将testfun.o和test.o链接成test

以上两种方法相比较,第一中方法编译时需要所有文件重新编译,而第二种方法可以只重新编译修改的文件,未修改的文件不用重新编译。

Ⅵ c语言中如何同时运行多个源文件

在C语言中,可以使用多个源文件来编写一个程序。可以将程序分成多个模块,每个模块对应一个源文件。在使用多个源文件时,可以采用以下两种方法来同时编译和运行多个源文件:

将祥祥纯多个源文件编译成一个可执行文件
在这种方法中,可以使用一个命令将多个源文件编译成一个可执行文件。例如,假设有两个源文件main.c和func.c,可以使用以下命令将它宴拍们编译成一个可执行文件:

go

gcc main.c func.c -o program
其中,gcc是编译器的命令,main.c和func.c是源文件,-o program指定可执行文件的名称为program。

将多个源文件编译成多个目标文件,然后链接成一个可执行文件
在这种方法中,可以先将多个源文件分别编译成目标文件,然后再将它们链接成一个可执行文件。例如,假设有两个源文件main.c和func.c,可以使用谨咐以下命令将它们分别编译成目标文件:

r

gcc -c main.c
gcc -c func.c
其中,-c选项表示只编译源文件,不进行链接。编译后会生成两个目标文件main.o和func.o。

然后,可以使用以下命令将两个目标文件链接成一个可执行文件:

go

gcc main.o func.o -o program
其中,main.o和func.o是目标文件,-o program指定可执行文件的名称为program。

这两种方法都可以同时编译和运行多个源文件,具体使用哪种方法可以根据实际情况选择。

Ⅶ 怎样用gcc 一次性编译多个objective c文件啊

你好!
gcc
-oexe
-O0
-g3
-Wall
a.cpp
b.cpp
c.cpp
...,不过我还是建议吃用cmake这种跨平台自动化编译工具。很方便的!
如果对你有帮助,望采纳。

Ⅷ 用 gcc 如何编译多个 c 文件

已经cd到ds目录,用如下命令
gcc -I./a -I./b a.c b.c main.c -o main

阅读全文

与gcc编译多个c相关的资料

热点内容
数据库查询系统源码 浏览:621
php5314 浏览:361
完美国际安装到哪个文件夹 浏览:672
什么app可以扫一扫做题 浏览:542
程序员编码论坛 浏览:928
淘点是什么app 浏览:662
中国高等植物pdf 浏览:456
51单片机时间 浏览:185
后台如何获取服务器ip 浏览:269
单片机流水灯程序c语言 浏览:237
程序员第二职业挣钱 浏览:242
运行里怎么输入服务器路径 浏览:844
pythonstepwise 浏览:513
刘一男词汇速记指南pdf 浏览:67
php认证级别 浏览:372
方舟编译啥时候推送 浏览:1013
php手机验证码生成 浏览:678
哲学思维pdf 浏览:19
凌达压缩机有限公司招聘 浏览:537
weblogic命令部署 浏览:40