linux下多个.o文件如何链接生成可执行程序

比如说:我有一个源文件,里面都我的源代码生成的相应的.o文件,用gcc编缉器,我用什么命令可以把它们链接在一起呢?例:a.o,b.o,c.o,d.o其中有一个是主函数,这... 比如说:
我有一个源文件,里面都我的源代码生成的相应的.o文件,用gcc编缉器,我用什么命令可以把它们链接在一起呢?
例:a.o, b.o, c.o, d.o
其中有一个是主函数,这样吧,我贴上源代码
这是主函数文件a.c
#include"b.c"
#include<stdio.h>

extern void a();

int main()
{
a();
}
另一个是b.c
void a()
{
printf("hello world\n");
}
就这么简单的两个函数先用gcc -c a.c b.c生成a.o和b.o文件
按楼下各位的说法就是gcc -o test a.o b.o,但是得不到正确结果!
还请高手帮忙看看,谢谢了!
展开
 我来答
59分粑粑分享生活
高粉答主

2020-05-14 · 专注生活好物分享,解答日常方方面面的问题
59分粑粑分享生活
采纳数:326 获赞数:119818

向TA提问 私信TA
展开全部

方法和详细的操作步骤如下:

1、第一步,找到需要打开的.o后缀文件,见下图,转到下面的步骤。

2、第二步,执行完上面的操作之后,打开编译器,并在此处使用c-free5,选择新文件,并将其保存为cpp格式,见下图,转到下面的步骤。

3、第三步,执行完上面的操作之后,单击“运行”,发现在文件末尾出现了一个具有相同名称.o后缀的文件,见下图,转到下面的步骤。

4、第四步,执行完上面的操作之后,可以推断,当多种编程语言希望混合编译时,可以将其编译成.o文件,然后链接到可执行的文件,见下图,转到下面的步骤。

5、第五步,执行完上面的操作之后,如果要打开,则需要先找到原始cpp文件并使用IDE对其进行编译,以形成exe可执行文件,然后才能将其打开,见下图。这样,就解决了这个问题了。

fox000002
推荐于2017-11-23 · TA获得超过3827个赞
知道大有可为答主
回答量:2356
采纳率:97%
帮助的人:1170万
展开全部
gcc -c x1.c x2.c 只编译不连接

gcc x1.c x2.c -o output_filename 编译后连接成可执行文件

gcc x1.o x2.o -o output_filename 连接成可执行文件

=================================================

#include"test.c" 是什么???

=================================================

#include"b.c" // 这句根本就是多余的,删除即可编译连接通过
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
裁作红豆相思6
2010-07-21 · TA获得超过236个赞
知道小有建树答主
回答量:188
采纳率:100%
帮助的人:166万
展开全部
很简单,使用-o选项就可以了。如果有a.o, b.o, c.o, d.o4个.o文件,则使用以下命令:
gcc -o (生成的目标名称)test a.o b.o c.o d.o
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
chengshiding
2010-07-21
知道答主
回答量:35
采纳率:0%
帮助的人:24.6万
展开全部
gcc -o test a.o, b.o, c.o, d.o
生成的test文件是连接后的可执行文件。
./test就可以执行了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式