如题,小弟今天编译的openssl-0.9.8zg,在执行nmake -f ms\ntdll.mak后,总是出现以下错误
-c .\crypto\ec\ec_asn1.c
ec_asn1.c
.\crypto\ec\ec_asn1.c(264) : error C2370: “ECPKPARAMETERS_it”: 重定义;不同的
存储类
.\crypto\ec\ec_asn1.c(262) : 参见“ECPKPARAMETERS_it”的声明
.\crypto\ec\ec_asn1.c(265) : error C2370: “ECPKPARAMETERS_it”: 重定义;不同的
存储类
.\crypto\ec\ec_asn1.c(262) : 参见“ECPKPARAMETERS_it”的声明
.\crypto\ec\ec_asn1.c(275) : error C2370: “EC_PRIVATEKEY_it”: 重定义;不同的存
储类
.\crypto\ec\ec_asn1.c(273) : 参见“EC_PRIVATEKEY_it”的声明
.\crypto\ec\ec_asn1.c(276) : error C2370: “EC_PRIVATEKEY_it”: 重定义;不同的存
储类
.\crypto\ec\ec_asn1.c(273) : 参见“EC_PRIVATEKEY_it”的声明
NMAKE : fatal error U1077: “D:\Program\VS2010\VC\BIN\cl.EXE”: 返回代码“0x2”
Stop.
不论是更换openssl版本还是清空环境变量,在这里总是出错,之前同样的步骤在另一个电脑上还成功编译的,网上的方法都试了,完全无效。
恳请各位前辈救小弟与水火,谢谢!
已经找到原因了,原来是在配置编译文件时,指令
perl VC-WIN64A ...写成了“perl VC_WIN64A ...”了
呵呵,真是知道真相的我眼泪掉下来。。。所以说失之毫厘,谬之千里啊,大家一定要吸取我的教训。。。
最后做一个openssl编译中常犯的错误总结吧,后面的新人可以提前注意少走点弯路
1、如果你是Windows平台下编译安装,一定要用VS自带的本地命令提示符,尽量少用系统自带的命令提示符
2、千万注意命令的大小写和“_”与“-”的区别
3、注意你的环境变量,就这么多啦,我也是新人,后面要加紧学习