无法安装 perl 模块 Crypt::TEA
Can`t install perl module Crypt::TEA
当我尝试在 Windows 7 上将 Crypt::TEA 模块安装到 perl 5.18 时,显示错误:
TEA.xs: In function 'XS_Crypt__TEA_crypt':
TEA.xs:58:9: error: invalid use of void expression
问题是this line:
if (SvREADONLY(output) || !SvUPGRADE(output, SVt_PV))
croak("cannot use output as lvalue");
SvUPGRADE() 是一个有两个无效操作的宏,它没有 return 一个值。如果它失败了,它会吱吱作响。改成这样:
if (!SvREADONLY(output))
SvUPGRADE(output, SVt_PV);
当我尝试在 Windows 7 上将 Crypt::TEA 模块安装到 perl 5.18 时,显示错误:
TEA.xs: In function 'XS_Crypt__TEA_crypt': TEA.xs:58:9: error: invalid use of void expression
问题是this line:
if (SvREADONLY(output) || !SvUPGRADE(output, SVt_PV))
croak("cannot use output as lvalue");
SvUPGRADE() 是一个有两个无效操作的宏,它没有 return 一个值。如果它失败了,它会吱吱作响。改成这样:
if (!SvREADONLY(output))
SvUPGRADE(output, SVt_PV);