diff --git a/driver/ghci/ghc.mk b/driver/ghci/ghc.mk
index 1d609c7949cb4c172e3ba8d2932b1659bd79e579..88c6aafeca82c50214c9075e414edc478fc5eb23 100644
--- a/driver/ghci/ghc.mk
+++ b/driver/ghci/ghc.mk
@@ -41,7 +41,7 @@ driver/ghci_dist_PROG_VER = ghci-$(ProjectVersion)$(exeext)
 INSTALL_BINS += driver/ghci/dist/build/tmp/$(driver/ghci_dist_PROG_VER)
 
 driver/ghci/ghci.res : driver/ghci/ghci.rc driver/ghci/ghci.ico
-	$(INPLACE_MINGW)/bin/windres --preprocessor="$(CPP) -xc -DRC_INVOKED" -o driver/ghci/ghci.res -i driver/ghci/ghci.rc -O coff
+	"$(WINDRES)" --preprocessor="$(CPP) -xc -DRC_INVOKED" -o driver/ghci/ghci.res -i driver/ghci/ghci.rc -O coff
 
 driver/ghci/dist/build/tmp/$(driver/ghci_dist_PROG_VER) : driver/ghci/dist/build/tmp/$(driver/ghci_dist_PROG)
 	"$(CP)" $< $@
diff --git a/mk/config.mk.in b/mk/config.mk.in
index 2b5bd46aba7389bb83d63e4dc40fbb6e09c5cd96..2482da869ddf2c0708a8e48ca9198f4eaf853ef0 100644
--- a/mk/config.mk.in
+++ b/mk/config.mk.in
@@ -622,6 +622,12 @@ ifeq "$(CrossCompiling)" "YES"
 SRC_HSC2HS_OPTS += --cross-compile
 endif
 
+ifeq "$(TARGETPLATFORM)" "i386-unknown-mingw32"
+WINDRES = $(INPLACE_MINGW)/bin/windres
+else ifeq "$(TARGETPLATFORM)" "x86_64-unknown-mingw32"
+WINDRES = $(INPLACE_MINGW)/bin/x86_64-w64-mingw32-windres
+endif
+
 #-----------------------------------------------------------------------------
 # Mingwex Library
 #