У меня есть 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.o
и change4.o
для файлов manipulate5.c
и change4.c
соответственно.Как связать два, когда manipulate5.o
в src
и change4.o
в lib
?
Я должен уточнить;Я должен иметь возможность запускать исполняемый файл в каталоге src
.Таким образом, мне не разрешено выполнять компиляцию в корневом каталоге.