diff --git a/packages/win32_inno/Makefile b/packages/win32_inno/Makefile
index 949c957ebb228466a70a51a995ef701604dc773a..1ea8180ac2a4dd886d33a7567739187436761c8b 100755
--- a/packages/win32_inno/Makefile
+++ b/packages/win32_inno/Makefile
@@ -80,8 +80,15 @@ endif
 #
 #==============================================================================#
 
-#bin_src = /usr/local/bin
-bin_src = /mingw32/bin
+TARGET_PLATFORM := $(shell uname -p)
+ifeq ($(TARGET_PLATFORM),i386)
+  bin_src = /mingw32/bin
+  lib_gcc = libgcc_s_dw2-1.dll
+else
+  bin_src = /mingw64/bin
+  lib_gcc = libgcc_s_seh-1.dll
+endif
+
 system32 = /c/WINDOWS/system32
 lib_install:
 # ultimately, the DLLs should be installed in %SystemRoot%\system32 by
@@ -143,7 +150,7 @@ endif
 	-install -p $(system32)/msvcr71.dll   $(DESTDIR)$(bindir)
 	#-install -p $(system32)/pthreadVC.dll $(DESTDIR)$(bindir)
 	install -p $(bin_src)/libwinpthread-1.dll $(DESTDIR)$(bindir)
-	install -p $(bin_src)/libgcc_s_dw2-1.dll $(DESTDIR)$(bindir)
+	install -p $(bin_src)/$(lib_gcc) $(DESTDIR)$(bindir)
 	install -p $(bin_src)/libstdc++-6.dll $(DESTDIR)$(bindir)
 ifneq ($(LIGHT),yes)
 # lyonpotpourri compiles its own shared lib. On Windows it needs to be
diff --git a/pd/src/m_pd.h b/pd/src/m_pd.h
index 24601a8acc57400a3c741a6dfa3510c0a3b72238..fe36d56ae414a30cf26436bb20787c659ed70879 100644
--- a/pd/src/m_pd.h
+++ b/pd/src/m_pd.h
@@ -88,7 +88,7 @@ typedef unsigned __int64  uint64_t;
 /* signed and unsigned integer types the size of a pointer:  */
 #if !defined(PD_LONGINTTYPE)
 #if defined(_WIN32) && defined(__x86_64__)
-#define PD_LONGINTTYPE long long
+#define PD_LONGINTTYPE __int64
 #else
 #define PD_LONGINTTYPE long
 #endif