--- a/win32/GNUmakefile
+++ b/win32/GNUmakefile
@@ -1466,15 +1466,15 @@
 
 $(PERLIMPLIB) : perldll.def
 ifeq ($(CCTYPE),GCC)
-	$(IMPLIB) -k -d perldll.def -D $(PERLDLLBASE) -l $(PERLIMPLIB) -e $(PERLEXPLIB)
+	$(IMPLIB) -k -d perldll.def -D $(PERLDLLBASE) -l $(PERLIMPLIB)
 else
 	lib -def:perldll.def -machine:$(ARCHITECTURE) /OUT:$(PERLIMPLIB)
 endif
 
-$(PERLDLL): $(PERLEXPLIB) $(PERLDLL_OBJ) $(PERLDLL_RES) Extensions_static
+$(PERLDLL): perldll.def $(PERLDLL_OBJ) $(PERLDLL_RES) Extensions_static
 ifeq ($(CCTYPE),GCC)
 	$(LINK32) -shared -o $@ $(BLINK_FLAGS) \
-	   $(PERLDLL_OBJ) $(shell type Extensions_static) $(LIBFILES) $(PERLEXPLIB)
+	   $(PERLDLL_OBJ) $(shell type Extensions_static) $(LIBFILES) perldll.def
 else
 	$(LINK32) -dll -out:$@ $(BLINK_FLAGS) \
 	    @Extensions_static \
--- a/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/Windows/GCC.pm
+++ b/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/Windows/GCC.pm
@@ -49,41 +49,12 @@
 
   my @cmds; # Stores the series of commands needed to build the module.
 
-  my $DLLTOOL = $cf->{dlltool} || 'dlltool';
-
-  push @cmds, [
-    $DLLTOOL, '--def'        , $spec{def_file},
-              '--output-exp' , $spec{explib}
-  ];
-
   # split off any -arguments included in ld
   my @ld = split / (?=-)/, $spec{ld};
 
   push @cmds, [ grep {defined && length} (
     @ld                       ,
     '-o', $spec{output}       ,
-    "-Wl,--base-file,$spec{base_file}"   ,
-    "-Wl,--enable-auto-image-base" ,
-    @{$spec{lddlflags}}       ,
-    @{$spec{libpath}}         ,
-    @{$spec{startup}}         ,
-    @{$spec{objects}}         ,
-    @{$spec{other_ldflags}}   ,
-    $spec{libperl}            ,
-    @{$spec{perllibs}}        ,
-    $spec{explib}             ,
-    $spec{map_file} ? ('-Map', $spec{map_file}) : ''
-  ) ];
-
-  push @cmds, [
-    $DLLTOOL, '--def'        , $spec{def_file},
-              '--output-exp' , $spec{explib},
-              '--base-file'  , $spec{base_file}
-  ];
-
-  push @cmds, [ grep {defined && length} (
-    @ld                       ,
-    '-o', $spec{output}       ,
     "-Wl,--enable-auto-image-base" ,
     @{$spec{lddlflags}}       ,
     @{$spec{libpath}}         ,
@@ -92,7 +63,7 @@
     @{$spec{other_ldflags}}   ,
     $spec{libperl}            ,
     @{$spec{perllibs}}        ,
-    $spec{explib}             ,
+    $spec{def_file}             ,
     $spec{map_file} ? ('-Map', $spec{map_file}) : ''
   ) ];
 
@@ -102,6 +73,9 @@
 sub write_linker_script {
   my ($self, %spec) = @_;
 
+  # Punt for now
+  return %spec;
+
   my $script = File::Spec->catfile( $spec{srcdir},
                                     $spec{basename} . '.lds' );
 
