Chinaunix首页 | 论坛 | 博客
  • 博客访问: 262534
  • 博文数量: 42
  • 博客积分: 2415
  • 博客等级: 大尉
  • 技术积分: 590
  • 用 户 组: 普通用户
  • 注册时间: 2006-01-13 14:14
文章分类

全部博文(42)

文章存档

2018年(1)

2017年(8)

2015年(3)

2012年(4)

2011年(11)

2010年(1)

2009年(5)

2008年(9)

我的朋友

分类: C/C++

2008-08-30 02:56:25

程序需要调用一个用c写的静态库里的函数,按部就班的包含了头文件,把库拷贝到lib目录中,makefile 中也指定了lib目录的路径,库的名字,然后编译...undefined symbol...

好吧,不管什么原因,也不打算记录解决的过程,解决的方法如下

1.#define "xxx.h"改为

extern "C"{

#define "xxx.h"

}

2.makefile 中编译的命令加上完整的库的文件名,类似这样:

 g++ -o exe aaa.o bbb.o libxxx.a

3.这个库除了在lib目录中外,还分别复制到了/usr/lib目录和程序所在目录,应该说这3个副本只需保留一份,至于保留哪一份没有进行试验

阅读(4846) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~