GCC 编译 :未使用链接器输入文件,因为链接尚未完成

shiweifu 2010-02-04 01:57:05
项目中,有几个模块,分开写的,打算作成静态库,然后一起编译
a.o b.o是已经做好的,并进行测试无问题的
然后拿到模块c中,进行编译:
gcc c.c -c a.o b.o a.h b.h c.h
提示未使用链接器输入文件,因为链接尚未完成

不解,请教
...全文
4258 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
LinkLook 2011-03-30
  • 打赏
  • 举报
回复
gcc c.c -c a.o b.o a.h b.h c.h
没有这么写的,还是要先编译,后链接.

"未使用链接器输入文件,因为链接尚未完成"
的意思是:gcc说:你让我链我也不链,因为还没编译完。
toborac 2010-02-04
  • 打赏
  • 举报
回复
gcc c.c -o outfile_name a.o b.o
huanmie_09 2010-02-04
  • 打赏
  • 举报
回复
写个makefile文件吧
cattycat 2010-02-04
  • 打赏
  • 举报
回复
gcc -o c.c a.o b.o
用-o选项才链接其他的.o文件。
aozhi 2010-02-04
  • 打赏
  • 举报
回复
提示:在make文件中要先写链接再写编译才行。
kivenanlice 2010-02-04
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 cocat 的回复:]
学习了~我还正想问下在G++中怎么编译多文件呢~
[/Quote]

可以编写一个makefile文件。
cocat 2010-02-04
  • 打赏
  • 举报
回复
学习了~我还正想问下在G++中怎么编译多文件呢~
lvp1984 2010-02-04
  • 打赏
  • 举报
回复
打成静态库用ar,-c只编译不连接
kivenanlice 2010-02-04
  • 打赏
  • 举报
回复
//这是一个简单的例子,希望对楼主有用

//Base.h
#ifndef __BASECLASS__H__
#define __BASECLASS__H__
class Base
{
public:
Base():m_nValue(0){}
Base(int nValue):m_nValue(nValue){}
public:
int GetValue(){ return m_nValue; }
void SetValue( int nValue ){ m_nValue = nValue; }
public:
void Print();
private:
int m_nValue;
};
#endif

//Base.cpp
#include "Base.h"
#include <stdio.h>

void Base::Print()
{
printf("Test Case output %d\n",m_nValue );
}

//Test.cpp
#include "Base.h"
using namespace std;
void hello( Base& obj );
main()
{
Base obj(100);
hello(obj);
}
void hello( Base& obj )
{
obj.Print();
}


编译:
gcc -c Base.cpp
gcc -c Test.cpp
gcc -o TestExe Test.o Base.o
yzx714 2010-02-04
  • 打赏
  • 举报
回复
像二楼那样吧
shiweifu 2010-02-04
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 kivenanlice 的回复:]
gcc -c c.c -o c.o
gcc -o cExe c.o a.o b.o
[/Quote]

因为其中对a.o和b.o的实现有依赖,所以无法分开编译
shiweifu 2010-02-04
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 hqin6 的回复:]
模块c也作出静态库?
gcc -c c.c a.o b.o
[/Quote]

恩,我就是这样打的,还是出那个
未使用链接器输入文件,因为链接尚未完成
太乙 2010-02-04
  • 打赏
  • 举报
回复
模块c也作出静态库?
gcc -c c.c a.o b.o
kivenanlice 2010-02-04
  • 打赏
  • 举报
回复
gcc -c c.c -o c.o
gcc -o cExe c.o a.o b.o

69,369

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧