Jak Nunzio powiedział. Po prostu wprowadź go bezpośrednio jako plik wejściowy. Pobił mnie, ale i tak mam pełny przykład.
mylib.c:
#include <stdio.h>
void say_hi(void)
{
printf("hi\n");
}
main.c:
extern void say_hi(void);
int main(int argc, char**argv)
{
say_hi();
return 0;
}
Makefile:
main: main.c mylib.a
gcc -o main main.c mylib.a
mylib.a: mylib.o
ar rcs mylib.a mylib.o
mylib.o: mylib.c
gcc -c -o [email protected] $^
Zdaję sobie sprawę, to zakłada pewną wiedzę tła w Utwórz. Aby zrobić to samo w/o marki, uruchom następujące polecenia w kolejności:
gcc -c -o mylib.o mylib.c
ar rcs mylib.a mylib.o
gcc -o main main.c mylib.a
do opracowania, '-l' jest potrzebny tylko do wyszukiwania ścieżki biblioteki i automatycznie wybrać bibliotekę ze standardowego wzorca nazewnictwa. –
Zaakceptowany, ponieważ jest to najprostsza implementacja rozwiązania, nawet jeśli odpowiedź Briana McFarlanda jest również świetna (i nauczył mnie czegoś o plikach make). – GreySage