我正在尝试将库链接到我的c程序,以便我的主程序可以使用我正在创建的库中的函数,但是我收到错误.
这是我的一些库代码(请调用此文件lib.c):
#include <bfd.h>
#include <stdio.h>
static void doDump ( bfd *abfd )
{
printf (_("\n%s: file format %s\n"), bfd_get_filename (abfd), abfd->xvec->name);
doHeaders ( abfd );
}
Run Code Online (Sandbox Code Playgroud)
这是我的主程序(请将此文件称为main.c):
#include "bfd.h"
static void getFile ( char *filename, char *target )
{
bfd *file;
file = bfd_openr (filename, target);
doDump (file);
bfd_close (file);
}
int main (int argc, char **argv)
{
char *target = NULL;
bfd_init ();
getFile ("a.out", target);
}
Run Code Online (Sandbox Code Playgroud)
这些是我用来链接库的命令:
cc -Wall -c lib.c
ar -cvq libdata.a lib.o
cc -o mainprog main.c lib.a -lbfd
但是,我收到此错误:
对doDump的未定义引用
哪个指向这一行:
doDump(文件);
我究竟做错了什么?
谢谢
| 归档时间: |
|
| 查看次数: |
171 次 |
| 最近记录: |