Windows build issue with (strawberry) perl

classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

Windows build issue with (strawberry) perl

Steve Hall-3

I'm unable to build a Windows binary with perl, I'm getting the
following error resulting from the build statement:

  gcc -O3 -fomit-frame-pointer -freg-struct-return
  -fno-strength-reduce -DWIN32 -DHAVE_PATHDEF -DFEAT_HUGE
  -DWINVER=0x0400 -D_WIN32_WINNT=0x0400 -DFEAT_PERL -DDYNAMIC_PERL
  -DDYNAMIC_PERL_DLL=\"perl510.dll\" -DFEAT_PYTHON -DDYNAMIC_PYTHON
  -DDY NAMIC_PYTHON_DLL=\"python26.dll\" -DFEAT_RUBY -DDYNAMIC_RUBY
  -DDYNAMIC_RUBY_DLL=\"msvcrt-ruby18.dll\" -DDYNAMIC_RUBY_VER =18
  -DFEAT_MZSCHEME -DDYNAMIC_MZSCHEME
  -DDYNAMIC_MZSCH_DLL=\"libmzsch42.dll\"
  -DDYNAMIC_MZGC_DLL=\"libmzgc42.dll\" -DINC LUDE_MZSCHEME_BASE
  -DFEAT_TCL -DDYNAMIC_TCL -DDYNAMIC_TCL_DLL=\"tcl85.dll\"
  -DDYNAMIC_GETTEXT -DDYNAMIC_ICONV -DFEAT_MBY TE -DFEAT_MBYTE_IME
  -DDYNAMIC_IME -DFEAT_CSCOPE -DFEAT_NETBEANS_INTG -DFEAT_GUI_W32
  -DFEAT_CLIPBOARD -DFEAT_OLE -march=i 386 -Iproto
  -I/cygdrive/c/STRAWB~1/PERL/lib/CORE -I/cygdrive/c/PYTHON26/include
  -I/cygdrive/c/RUBY/lib/ruby/1.8/i386-msw in32
  -I/cygdrive/c/PROGRA~1/MzScheme/include -I/cygdrive/c/Tcl/include -s
  -mno-cygwin -o gvim.exe gobj/buffer.o gobj/cha rset.o gobj/diff.o
  gobj/digraph.o gobj/edit.o gobj/eval.o gobj/ex_cmds.o
  gobj/ex_cmds2.o gobj/ex_docmd.o gobj/ex_eval.o gobj/ex_getln.o
  gobj/fileio.o gobj/fold.o gobj/getchar.o gobj/hardcopy.o
  gobj/hashtab.o gobj/main.o gobj/mark.o gobj/mem file.o
  gobj/memline.o gobj/menu.o gobj/message.o gobj/misc1.o gobj/misc2.o
  gobj/move.o gobj/mbyte.o gobj/normal.o gobj/o ps.o gobj/option.o
  gobj/os_win32.o gobj/os_mswin.o gobj/pathdef.o gobj/popupmnu.o
  gobj/quickfix.o gobj/regexp.o gobj/scr een.o gobj/search.o
  gobj/spell.o gobj/syntax.o gobj/tag.o gobj/term.o gobj/ui.o
  gobj/undo.o gobj/version.o gobj/vimrc.o gobj/window.o gobj/if_perl.o
  gobj/if_python.o gobj/if_ruby.o gobj/if_mzsch.o gobj/if_tcl.o
  gobj/if_cscope.o gobj/netbean s.o gobj/gui.o gobj/gui_w32.o
  gobj/gui_beval.o gobj/os_w32exe.o gobj/if_ole.o  -luuid -lole32
  /cygdrive/c/Tcl/lib/tclstu b85.lib -lwsock32 -mwindows -lcomctl32
  -lversion -loleaut32 -lstdc++
 
  Warning: .drectve `-defaultlib:MSVCRT ' unrecognized
  Warning: .drectve `-defaultlib:OLDNAMES ' unrecognized
  gobj/if_perl.o:if_perl.c:(.text+0x1635): undefined reference to
`_Perl_croak_xs_usage'
  gobj/if_perl.o:if_perl.c:(.text+0x174c): undefined reference to
`_Perl_croak_xs_usage'
  gobj/if_perl.o:if_perl.c:(.text+0x1858): undefined reference to
`_Perl_croak_xs_usage'
  gobj/if_perl.o:if_perl.c:(.text+0x1b73): undefined reference to
`_Perl_croak_xs_usage'
  gobj/if_perl.o:if_perl.c:(.text+0x23b9): undefined reference to
`_Perl_croak_xs_usage'
  gobj/if_perl.o:if_perl.c:(.text+0x25a5): more undefined references to
`_Perl_croak_xs_usage' follow
  collect2: ld returned 1 exit status
  make: *** [gvim.exe] Error 1

This is certainly some configuration issue on my part, it's a new
build machine. But for the life of me, I can not figure out the issue.
Details:

* Strawberry perl 5.10
* Windows XP-32
* Cygwin gcc
* Experimented with the perl bin and libs first on path, last on path,
  not on path, etc.

This all worked just a few days ago on another machine, but I can't
recall if it was strawberry perl or some other distro. Any ideas?

--
Steve Hall  [ digitect dancingpaper com ]


--
You received this message from the "vim_dev" maillist.
For more information, visit http://www.vim.org/maillist.php
Reply | Threaded
Open this post in threaded view
|

Re: Windows build issue with (strawberry) perl

Charles-14
On Dec 9, 11:44 pm, "Steve Hall" <[hidden email]> wrote:>  
gobj/if_perl.o:if_perl.c:(.text+0x1635): undefined reference to

> `_Perl_croak_xs_usage'
>   gobj/if_perl.o:if_perl.c:(.text+0x174c): undefined reference to
> `_Perl_croak_xs_usage'
>   gobj/if_perl.o:if_perl.c:(.text+0x1858): undefined reference to
> `_Perl_croak_xs_usage'
>   gobj/if_perl.o:if_perl.c:(.text+0x1b73): undefined reference to
> `_Perl_croak_xs_usage'
>   gobj/if_perl.o:if_perl.c:(.text+0x23b9): undefined reference to
> `_Perl_croak_xs_usage'
>   gobj/if_perl.o:if_perl.c:(.text+0x25a5): more undefined references to
> `_Perl_croak_xs_usage' follow
>   collect2: ld returned 1 exit status
>   make: *** [gvim.exe] Error 1
>
> This is certainly some configuration issue on my part, it's a new
> build machine. But for the life of me, I can not figure out the issue.
> Details:

Perl_croak_xs_usage is added in perl build 1006 cmiiw, so you'll need
to use strawberry perl >= 10.0.0.6

--
You received this message from the "vim_dev" maillist.
For more information, visit http://www.vim.org/maillist.php
Reply | Threaded
Open this post in threaded view
|

Re: Windows build issue with (strawberry) perl

Charles-14
On Dec 10, 8:40 am, char101 <[hidden email]> wrote:
> Perl_croak_xs_usage is added in perl build 1006 cmiiw, so you'll need
> to use strawberry perl >= 10.0.0.6

Edit: It's not in 10.0.0.6 either, but it exists in strawberry perl
5.10.1.0 (checked).

--
You received this message from the "vim_dev" maillist.
For more information, visit http://www.vim.org/maillist.php
Reply | Threaded
Open this post in threaded view
|

Re: Windows build issue with (strawberry) perl

Steve Hall-3
On Wed, 2009-12-09 at 17:43 -0800, char101 wrote:
> On Dec 10, 8:40 am, char101 <[hidden email]> wrote:
> > Perl_croak_xs_usage is added in perl build 1006 cmiiw, so you'll
> > need to use strawberry perl >= 10.0.0.6
>
> Edit: It's not in 10.0.0.6 either, but it exists in strawberry perl
> 5.10.1.0 (checked).

Hmm, that's the version I'm compiling against (downloaded last week).
Is it possible that the compiler could be finding another perl (ruby,
tcl, mkscheme, cygwin) instead of using that specified by $PERL
explicitly in the build shell?

Thanks for helping me with this.

--
Steve Hall  [ digitect dancingpaper com ]


--
You received this message from the "vim_dev" maillist.
For more information, visit http://www.vim.org/maillist.php
Reply | Threaded
Open this post in threaded view
|

Re: Windows build issue with (strawberry) perl

Charles-14
On Dec 10, 10:22 am, Steve Hall <[hidden email]> wrote:
> > Edit: It's not in 10.0.0.6 either, but it exists in strawberry perl
> > 5.10.1.0 (checked).
>
> Hmm, that's the version I'm compiling against (downloaded last week).
> Is it possible that the compiler could be finding another perl (ruby,
> tcl, mkscheme, cygwin) instead of using that specified by $PERL
> explicitly in the build shell?

I see, probably it's because Perl_croak_xs_usage isn't listed in
if_perl.xs.
How about downgrading to lower perl version which does not have
Perl_croak_xs_usage,
thus the perl xs compiler won't use that function, otherwise you'll
need to link to perl library
at link time and it won't be dynamic perl anymore.

--
You received this message from the "vim_dev" maillist.
For more information, visit http://www.vim.org/maillist.php
Reply | Threaded
Open this post in threaded view
|

Re: Windows build issue with (strawberry) perl

Steve Hall-3
On Wed, 2009-12-09 at 21:39 -0800, char101 wrote:

> On Dec 10, 10:22 am, Steve Hall wrote:
> > >
> > > [problems building latest Windows binary gVim with strawberry
> > > perl 5.10.1.0]
>
> I see, probably it's because Perl_croak_xs_usage isn't listed in
> if_perl.xs. How about downgrading to lower perl version which does
> not have Perl_croak_xs_usage, thus the perl xs compiler won't use
> that function, otherwise you'll need to link to perl library at link
> time and it won't be dynamic perl anymore.

Does anyone else see this problem? Same issue with Active State's Perl
distro, can Perl 5.10 not be dynamically linked with gVim (on
Windows)?

--
Steve Hall  [ digitect dancingpaper com ]


--
You received this message from the "vim_dev" maillist.
For more information, visit http://www.vim.org/maillist.php
Reply | Threaded
Open this post in threaded view
|

Re: Windows build issue with (strawberry) perl

Sergey Khorev
> Does anyone else see this problem? Same issue with Active State's Perl
> distro, can Perl 5.10 not be dynamically linked with gVim (on
> Windows)?

I happened to run on this issue too. It seems Perl 5.10 added a new
function thus breaking +perl/dyn build. Attached patch should fix
that.


--
Sergey Khorev
http://sites.google.com/site/khorser
Can anybody think of a good tagline I can steal?

--
You received this message from the "vim_dev" maillist.
For more information, visit http://www.vim.org/maillist.php

if_perl_510.txt (1K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Windows build issue with (strawberry) perl

Bram Moolenaar

Sergey khorev wrote:

> > Does anyone else see this problem? Same issue with Active State's Perl
> > distro, can Perl 5.10 not be dynamically linked with gVim (on
> > Windows)?
>
> I happened to run on this issue too. It seems Perl 5.10 added a new
> function thus breaking +perl/dyn build. Attached patch should fix
> that.

Thanks.  I'll check it out next week.

--
Some of the well know MS-Windows errors:
        EMEMORY Memory error caused by..., eh...
        ELICENSE Your license has expired, give us more money!
        EMOUSE Mouse moved, reinstall Windows
        EILLEGAL Illegal error, you are not allowed to see this
        EVIRUS Undetectable virus found

 /// Bram Moolenaar -- [hidden email] -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\        download, build and distribute -- http://www.A-A-P.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

--
You received this message from the "vim_dev" maillist.
For more information, visit http://www.vim.org/maillist.php