All pastes #447745 Raw Edit

Anonymous

public text v1 · immutable
·published 2007-04-19 08:49 UTC
rendered paste body
# Makefile for linking test programs

#CFLAGS = -fPIC -Wall -ansi -pedantic
CFLAGS = -Wall -std=c99 -pedantic

#############################################################################
all: static dynamic
static: program-s
dynamic: program-d
#############################################################################
program-s: prog.o m1.o libtest.a
   $(CC) $(CFLAGS) -o program-s -static  prog.o m1.o -L. -ltest

program-d: prog.o m1.o libtest.so
   $(CC) $(CFLAGS) -o program-d  prog.o m1.o -L. -ltest

# create static library
libtest.a: m2.o m3.o m4.o
   ar crs libtest.a  m2.o m3.o m4.o

# create shared library
libtest.so: m2.o m3.o m4.o
   $(CC) $(CFLAGS) -shared -o libtest.so  m2.o m3.o m4.o
#############################################################################
run: program-s program-d
   ./program-s
   LD_LIBRARY_PATH="." ./program-d

pack:
   tar czvf ijc-link-example.tar.gz Makefile *.c *.h

clean:
   rm -f *.o program-s program-d program libtest.a libtest.so

############################################################################