我有3个目录,src
,lib
和include
。在include
我有头文件header3.h
。其代码如下:
// header3.h
extern void change(int *a);
在lib
我有change4.c
文件,其中包含:
// change4.c
#include <stdlib.h>
#include "header3.h"
void change(int *a){
int y=100;
a=y;
}
在src
我有manipulate5.c
文件,其中包含:
// manipulate5.c
#include <stdio.h>
#include "header3.h"
int main(void){
int x=10;
printf("x is %d\n", x );
change(&x);
printf("x is now %d\n", x );
}
当我尝试使用以下命令编译manipulate5.c
时:
gcc -I ../include manipulate5.c`
在目录src
中,我收到以下错误:
In function main:
manipulate5.c:(.text+0x2b): undefined reference to change
那么如何让manipulate5.c
正常工作?