diff --git a/obj/Makefile.in b/obj/Makefile.in
index 3b7af6521791eed0ed51bbdec5f3309dc507cdda..67ac138b2a5bc6cb75c3485bee1f1a91d5750db3 100644
--- a/obj/Makefile.in
+++ b/obj/Makefile.in
@@ -194,9 +194,11 @@ else
 	-mkdir -p ${PREFIX}/lib
 ifeq (${PLATFORM}, CYGWIN)
 	-mkdir -p ${PREFIX}/bin
-	$(CP) ${FQ_LINK_NAME} ${PREFIX}/bin
-	rm -rf ${PREFIX}/lib/${LINK_NAME} && \
-	ln -s ${PREFIX}/bin/${LINK_NAME} ${PREFIX}/lib/${LINK_NAME}
+	$(CP) ${FQ_REAL_NAME} ${PREFIX}/bin
+	$(CP) $(XML_LIB_DIR)/${LIBNAME}${VER}.dll.a ${PREFIX}/lib
+	rm -rf ${PREFIX}/lib/${LIBNAME}.dll.a ${PREFIX}/lib/libxerces.dll.a
+	ln -s ${PREFIX}/lib/${LIBNAME}${VER}.dll.a ${PREFIX}/lib/${LIBNAME}.dll.a
+	ln -s ${PREFIX}/lib/${LIBNAME}${VER}.dll.a ${PREFIX}/lib/libxerces.dll.a
 else
 	$(CP) ${FQ_REAL_NAME} $(PREFIX)/lib
 endif
diff --git a/src/xercesc/Makefile.incl b/src/xercesc/Makefile.incl
index 80bef75e5b95463c920debf4ad7963f164204736..1c9e8440d3e548e12c37fb437a5597b94afacc0b 100644
--- a/src/xercesc/Makefile.incl
+++ b/src/xercesc/Makefile.incl
@@ -477,7 +477,7 @@ ifeq (${PLATFORM}, CYGWIN)
               -Xlinker --warn-once \
               -Xlinker -Map -Xlinker $(XML_LIB_DIR)/${LIBNAME}${VER}.map \
               -Xlinker --output-def -Xlinker $(XML_LIB_DIR)/${LIBNAME}${VER}.def \
-              -Xlinker --out-implib -Xlinker $(XML_LIB_DIR)/${LIBNAME}${VER}.lib
+              -Xlinker --out-implib -Xlinker $(XML_LIB_DIR)/${LIBNAME}${VER}.dll.a
         SHLIBSUFFIX=.dll
 endif