Czy ktos moglby mi pokazac jakis przykladowy kod takiej biblioteki i programu korzystajacego z niej ?
0
0
/* glowny.c */
#include "biblioteka.h"
int
main()
{
if (funkcja2())
funkcja1();
return 0;
}
/* biblioteka.h */
int funkcja1();
int funkcja2();
/* a.c */
#include <stdio.h>
int
funkcja1()
{
printf("funkcja 1 z biblioteki");
return 0;
}
/* b.c */
int
funkcja2()
{
return 1;
}
/* Makefile */
OBJS = a.o b.o
LIBNAME = biblioteka
SONAME = libbiblioteka.so.1.0.0
SOVERSION = libbiblioteka.so.1.0
CFLAGS = -Wall
PROGNAME = glowny
all: lib$(LIBNAME).so glowny
glowny: lib$(LIBNAME).so glowny.c
gcc $(CFLAGS) -o $(PROGNAME) glowny.c -L. -l${LIBNAME}
lib$(LIBNAME).so: $(OBJS)
gcc -shared -Wl,-soname,$(SOVERSION) -o $(SONAME) $(OBJS) -lc && \
ln -sf $(SONAME) $(SOVERSION) && \
ln -sf $(SONAME) lib$(LIBNAME).so
.c.o:
gcc -fPIC -DPIC $(CFLAGS) -c -o $*.o $<
clean:
rm -f *.o *.a *.so glowny