--- a/src/common/Makefile
+++ b/src/common/Makefile
@@ -33,13 +33,13 @@ all: libpgcommon.a libpgcommon_srv.a
 
 # libpgcommon is needed by some contrib
 install: all installdirs
-	$(INSTALL_STLIB) libpgcommon.a '$(DESTDIR)$(libdir)/libpgcommon.a'
+	$(INSTALL_STLIB) libpgcommon.a '$(DESTDIR)$(pkglibdir)/libpgcommon.a'
 
 installdirs:
-	$(MKDIR_P) '$(DESTDIR)$(libdir)'
+	$(MKDIR_P) '$(DESTDIR)$(pkglibdir)'
 
 uninstall:
-	rm -f '$(DESTDIR)$(libdir)/libpgcommon.a'
+	rm -f '$(DESTDIR)$(pkglibdir)/libpgcommon.a'
 
 libpgcommon.a: $(OBJS_FRONTEND)
 	rm -f $@
--- a/src/port/Makefile
+++ b/src/port/Makefile
@@ -43,13 +43,13 @@ all: libpgport.a libpgport_srv.a
 
 # libpgport is needed by some contrib
 install: all installdirs
-	$(INSTALL_STLIB) libpgport.a '$(DESTDIR)$(libdir)/libpgport.a'
+	$(INSTALL_STLIB) libpgport.a '$(DESTDIR)$(pkglibdir)/libpgport.a'
 
 installdirs:
-	$(MKDIR_P) '$(DESTDIR)$(libdir)'
+	$(MKDIR_P) '$(DESTDIR)$(pkglibdir)'
 
 uninstall:
-	rm -f '$(DESTDIR)$(libdir)/libpgport.a'
+	rm -f '$(DESTDIR)$(pkglibdir)/libpgport.a'
 
 libpgport.a: $(OBJS)
 	rm -f $@
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -411,7 +411,7 @@ libpq = -L$(libpq_builddir) -lpq
 # pgport before libpq.  This does cause duplicate -lpgport's to appear
 # on client link lines.
 ifdef PGXS
-libpq_pgport = -L$(libdir) -lpgport -lpgcommon $(libpq)
+libpq_pgport = -L$(pkglibdir) -lpgport -lpgcommon $(libpq)
 else
 libpq_pgport = -L$(top_builddir)/src/port -lpgport \
 			   -L$(top_builddir)/src/common -lpgcommon $(libpq)
