diff --git a/obj/Makefile.in b/obj/Makefile.in
index 99cc7a0f69b8e3cb0b7591afba6c601b273dcdd3..3b7af6521791eed0ed51bbdec5f3309dc507cdda 100644
--- a/obj/Makefile.in
+++ b/obj/Makefile.in
@@ -192,7 +192,14 @@ ifeq (${OS390BATCH},1)
 	@echo "Nothing to do for OS390BATCH ..."
 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}
+else
 	$(CP) ${FQ_REAL_NAME} $(PREFIX)/lib
+endif
 ifeq (${PLATFORM},OS390)
 	$(CP) ${LIBNAME}${VER}${OS390SIDEDECK} $(PREFIX)/lib
 endif
diff --git a/src/xercesc/Makefile.incl b/src/xercesc/Makefile.incl
index a9aa9e529c072b26561faad59ab98567cb258e89..80bef75e5b95463c920debf4ad7963f164204736 100644
--- a/src/xercesc/Makefile.incl
+++ b/src/xercesc/Makefile.incl
@@ -508,14 +508,25 @@ else
         SO_NAME  =${LIBNAME}${SO_TARGET_VERSION}${SHLIBSUFFIX}
         REAL_NAME=${LIBNAME}${VER}${SHLIBSUFFIX}
     else
-        #
-        # LINK_NAME=libxerces-c.so
-        # SO_NAME  =libxerces-c.so.20
-        # REAL_NAME=libxerces-c.so.20.0
-        #
-        LINK_NAME=${LIBNAME}${SHLIBSUFFIX}
-        SO_NAME  =${LIBNAME}${SHLIBSUFFIX}.${SO_TARGET_VERSION}
-        REAL_NAME=${LIBNAME}${SHLIBSUFFIX}.${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR}
+		ifeq (${PLATFORM}, CYGWIN)
+			#
+			# LINK_NAME=libxerces-c.dll
+			# SO_NAME  =libxerces-c20.dll
+			# REAL_NAME=libxerces-c2_0_0.dll
+			#
+			LINK_NAME=${LIBNAME}${SHLIBSUFFIX}
+			SO_NAME  =${LIBNAME}${SO_TARGET_VERSION}${SHLIBSUFFIX}
+			REAL_NAME=${LIBNAME}${VER}${SHLIBSUFFIX}
+		else
+			#
+			# LINK_NAME=libxerces-c.so
+			# SO_NAME  =libxerces-c.so.20
+			# REAL_NAME=libxerces-c.so.20.0
+			#
+			LINK_NAME=${LIBNAME}${SHLIBSUFFIX}
+			SO_NAME  =${LIBNAME}${SHLIBSUFFIX}.${SO_TARGET_VERSION}
+			REAL_NAME=${LIBNAME}${SHLIBSUFFIX}.${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR}
+		endif
     endif
 endif