Loading ...
Sorry, an error occurred while loading the content.

74306Re: ActivePerl 5.18.1 fails to compile

Expand Messages
  • Steve Hall
    Dec 1, 2013
    • 0 Attachment
      FINALLY! Thanks Ken and Cesar for the help.

      Okay, it took three parts to get my Cygwin cross-compile for Windows
      build to work with Perl:

      1. Patching vim\Make_cyg.mak (via Cesar Romani)

      --- C:\vim\Make_cyg.mak
      +++ C:\vim\Make_cyg.mak
      @@ -155,6 +155,7 @@
      ifeq (yes, $(DYNAMIC_PERL))
      DEFINES += -DDYNAMIC_PERL -DDYNAMIC_PERL_DLL=\"perl$(PERL_VER).dll\"
      +EXTRA_LIBS += $(PERL)/lib/CORE/libperl$(PERL_VER).a
      else
      -EXTRA_LIBS += $(PERL)/lib/CORE/perl$(PERL_VER).lib
      +EXTRA_LIBS += $(PERL)/lib/CORE/libperl$(PERL_VER).a
      endif
      endif

      2. Replacing src\if_perl.xs with the fix from here (by
      Gauchy...@...)

      http://code.google.com/p/vim/issues/detail?id=170#c5


      3. Patching a Strawberry Perl distribution file (by Ken Takata)

      --- C:\Perl\lib\CORE\sys\socket.h.org Wed Mar 27 12:44:16 2013
      +++ C:\Perl\lib\CORE\sys\socket.h Sun Dec 01 16:06:52 2013
      @@ -13,7 +13,7 @@
      #include <windows.h>

      /* Too late to include winsock2.h if winsock.h has already been loaded */
      -#ifndef _WINSOCKAPI_
      +#if !defined(_WINSOCKAPI_) && !defined(_WINSOCK_H)
      # ifndef FD_SETSIZE
      # define FD_SETSIZE 2048
      # endif

      Only after all three changes were implemented would it build. Plenty
      of warnings, but I was able to cross-compile both a gvim.exe and
      vim.exe with +perl/dyn.

      --
      Steve Hall [ digitect dancingpaper com ]
      :: Cream for Vim http://cream.sourceforge.net

      On Sun, Dec 1, 2013 at 2:37 AM, Ken Takata <kentkt@...> wrote:
      > Hi Steve,
      >
      > 2013/11/30 Sat 22:09:18 UTC+9 Steve Hall wrote:
      >> With the revised if_perl.xs from your previous link, I still get the
      >> following build errors in a Cygwin build.
      >>
      >> 1:In file included from
      >> /cygdrive/c/strawberry/perl/lib/CORE/sys/socket.h:30:0,
      >> 2: from /cygdrive/c/strawberry/perl/lib/CORE/win32.h:381,
      >> 3: from /cygdrive/c/strawberry/perl/lib/CORE/win32thread.h:4,
      >> 4: from /cygdrive/c/strawberry/perl/lib/CORE/perl.h:2869,
      >> 5: from if_perl.xs:36:
      >> 6:/usr/i686-pc-mingw32/sys-root/mingw/include/ws2tcpip.h:38:2:
      >> error: #error "ws2tcpip.h is not compatible with winsock.h. Include
      >> win
      >> 7:In file included from
      >> /cygdrive/c/strawberry/perl/lib/CORE/sys/socket.h:30:0,
      >> 8: from /cygdrive/c/strawberry/perl/lib/CORE/win32.h:381,
      >> 9: from /cygdrive/c/strawberry/perl/lib/CORE/win32thread.h:4,
      >> 10: from /cygdrive/c/strawberry/perl/lib/CORE/perl.h:2869,
      >> 11: from if_perl.xs:36:
      >
      >
      > I think this is a problem of Perl and I don't know this can be fixed by Vim.
      > The following patch might fix the problem:
      >
      > --- C:\Perl\lib\CORE\sys\socket.h.org Wed Mar 27 12:44:16 2013
      > +++ C:\Perl\lib\CORE\sys\socket.h Sun Dec 01 16:06:52 2013
      > @@ -13,7 +13,7 @@
      > #include <windows.h>
      >
      > /* Too late to include winsock2.h if winsock.h has already been loaded */
      > -#ifndef _WINSOCKAPI_
      > +#if !defined(_WINSOCKAPI_) && !defined(_WINSOCK_H)
      > # ifndef FD_SETSIZE
      > # define FD_SETSIZE 2048
      > # endif
      >
      >
      > Regards,
      > Ken Takata
      >
      > --
      > --
      > You received this message from the "vim_dev" maillist.
      > Do not top-post! Type your reply below the text you are replying to.
      > For more information, visit http://www.vim.org/maillist.php
      >
      > ---
      > You received this message because you are subscribed to the Google Groups "vim_dev" group.
      > To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscribe@....
      > For more options, visit https://groups.google.com/groups/opt_out.
      >

      --
      --
      You received this message from the "vim_dev" maillist.
      Do not top-post! Type your reply below the text you are replying to.
      For more information, visit http://www.vim.org/maillist.php

      ---
      You received this message because you are subscribed to the Google Groups "vim_dev" group.
      To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscribe@....
      For more options, visit https://groups.google.com/groups/opt_out.
    • Show all 35 messages in this topic