diff --git a/build/lib-shared.mk b/build/lib-shared.mk
index f978a52d568b1d19a2e456285dcd48f6b11e615f..ec197e6f1d4e4aee25e2c8938c62877d2800c32b 100644
--- a/build/lib-shared.mk
+++ b/build/lib-shared.mk
@@ -33,15 +33,18 @@ DYN_EXT=@DYN_EXT@
 $(LIBRARY):  version.lo
 	$(LTLIBLINK) -rpath $(libdir) -o $@ $(OBJS) version.lo $(EXTRA_LIBS)
 	$(RM) ../$@
-	(d=`$(PWD)` ; $(LN_S) `$(BASENAME) $$d`/$@ ../$@)
-	$(RM) ../`$(BASENAME) $@ .la`.a;	\
-	(d=`$(PWD)`; t=`$(BASENAME) $@ .la`.a; $(LN_S) `$(BASENAME) $$d`/.libs/$$t ../$$t)
-	# If we want our binaries to link dynamically with libldap{,_r} liblber...
-	# We also symlink the .so.# so we can run the tests without installing
+	d=`$(PWD)`; d=`$(BASENAME) $$d`; cd ..; $(LN_S) $$d/$@ $@; \
+	t=`$(BASENAME) $@ .la`.a; $(RM) $$t; $(LN_S) $$d/.libs/$$t $$t
+	@# If we want our binaries to link dynamically with libldap{,_r} liblber
+	@# We also symlink the .so, so we can run the tests without installing
 	if test "$(LINK_BINS_DYNAMIC)" = "yes"; then \
-		(d=`$(PWD)`; b=`$(BASENAME) $@ .la`; t=`ls $$d/.libs/$$b*.$(DYN_EXT)`; t=`$(BASENAME) $$t`; $(LN_S) `$(BASENAME) $$d`/.libs/$$t ../$$t); \
+		d=`$(PWD)`; d=`$(BASENAME) $$d`; b=`$(BASENAME) $@ .la`; \
+		 cd .libs; t=`echo $$b*.$(DYN_EXT)`; (cd ../.. ; $(RM) $$t; \
+		 $(LN_S) $$d/.libs/$$t $$t); \
 		if test "$(DYN_EXT)" != dll; then \
-		    (d=`$(PWD)`; b=`$(BASENAME) $@ .la`; t=`ls $$d/.libs/$$b.$(DYN_EXT).?`; $(LN_S) `$(BASENAME) $$d`/.libs/`$(BASENAME) $$t` ../`$(BASENAME) $$t`); \
+		    t=`echo $$b.$(DYN_EXT).?`; cd ../.. ; \
+		    $(RM) $$t; \
+		    $(LN_S) $$d/.libs/$$t $$t; \
 		fi \
 	fi
 
diff --git a/build/lib-static.mk b/build/lib-static.mk
index ad0d14669c0f2f15adac528fb32383d0c5f335a7..30656a7d2b86af9f4695bc0fb60f55a50523c529 100644
--- a/build/lib-static.mk
+++ b/build/lib-static.mk
@@ -11,6 +11,6 @@ $(LIBRARY): version.o
 	$(AR) ru $@ $(OBJS) version.o
 	@$(RANLIB) $@;	\
 	$(RM) ../$@;	\
-	(d=`$(PWD)` ; $(LN_S) `$(BASENAME) $$d`/$@ ../$@)
+	(d=`$(PWD)` ; cd .. ; $(LN_S) `$(BASENAME) $$d`/$@ $@)
 
 Makefile: $(top_srcdir)/build/lib-static.mk