# Makefile to create pca9685_pwm shared library # # files to install # LIBPCA = /usr/local/lib/libpca9685_pwm.so HPCA = /usr/local/include/pca9685_pwm.h OBJS = pca9685_pwm.o CFLAGS = -Wall -fPIC -shared all: libpca9685_pwm.so # compile main.cc after the pca9685_pwm library is installed # main: main.cc Makefile g++ -Wall main.cc -o main -lpca9685_pwm libpca9685_pwm.so: $(OBJS) Makefile g++ $(CFLAGS) -o libpca9685_pwm.so $(OBJS) pca9685_pwm.o: pca9685_pwm.cc pca9685_pwm.h g++ -c $(CFLAGS) pca9685_pwm.cc install: libpca9685_pwm.so pca9685_pwm.h Makefile cp -p libpca9685_pwm.so $(LIBPCA) && chown root:root $(LIBPCA) \ && chmod 755 $(LIBPCA) cp -p pca9685_pwm.h $(HPCA) && chown root:root $(HPCA) \ && chmod 644 $(HPCA) ldconfig clean: rm -f a.out core libpca9685_pwm.so $(OBJS) main