感谢您花时间阅读本文,希望能帮助我成功解决问题。
我删除了之前的帖子,因为它已经死了(没有答案的时间),所以我希望能恢复它。
我正在尝试安装名为Rose :: DB的perl模块,经过多种方法后我终于安装了它,但每当我运行我的代码时它告诉我它找不到名为Bit :: Vector的模块,所以我试图安装它。
我第一次做Makefile.PL没有错误。 然后,我尝试做dmake ...它给了我很多行,其中大多数是这样的警告:
Vector.o:Vector.c:(.text+0x11591): undefined reference to `_imp__Perl_newXS'
Vector.o:Vector.c:(.text+0x115a0): undefined reference to `_imp__Perl_get_context'
之后,最后几行表明了这一点:
collect2: ld returned 1 exit status
dmake.exe: Error code 129, while making 'blib\arch\auto\Bit\Vector\Vector.dll'
有人可以帮我正确安装模块吗?我真的很感激。
PS:这是查看所有行的链接: http://www.sendspace.com/file/97pk32
PS:我正在使用Strawberry,正在使用ActivePerl,但却给了我错误,建议使用草莓。答案 0 :(得分:1)
我在 Windows 上遇到了与Win32 :: UTCFileTime模块相同的问题。
这可能是因为你安装了Strawberry和ActivePerl。所以,你的perl配置可能是错误的。
如果你有类似的话:
$ perl -V
...
cc='C:\STRAWB~1\c\bin\gcc.exe',...
...
ld='C:\STRAWB~1\c\bin\g++.exe', ldflags='... -L"C:\Perl\lib\CORE"...'
...
这意味着您正在尝试使用Strawberry的编译器/链接器和ActivePerl库构建perl模块。这可能是原因。
另外,一个简单的“黑客”是暂时将C:\ Perl重命名为C:\ whatever 。 然后,您应该:
$ perl -V
...
cc='gcc',...
...
ld='g++', ldflags='... -L"C:\strawberry\lib\CORE"...'
...
因此,您的链接器将能够找到Strawberry perl CORE API函数(_imp__Perl_ *,perlguts)。它对我有用。
答案 1 :(得分:0)
如果有两个perl安装,如Strawbery和其他类似Dwimperl或activeperl,重命名一个未使用的,解决了我的dmake.exe问题:错误代码129