编译OpenWRT 15.05(Chaos Calmer)的模块 tools/mkimage(u-boot-2014.10) 的时候碰到了下面的错误信息:
u-boot-2014.10/lib/rsa/rsa-sign.c:279:21: error: dereferencing pointer to incomplete type 'RSA {aka struct rsa_st}'
if (BN_num_bits(key->e) > 64)
^~
-
原因
- 编译Server的OpenSSL版本是1.1x,OpenSSL 1.1.x对一些API做了改动,因此出现错误信息。
$ openssl version
OpenSSL 1.1.0g 2 Nov 2017
-
解决方法
-
参考
https://github.com/openwrt/openwrt/commit/70b104f98c0657323b28fce140b73a94bf3eb756
加入patch - 210-openssl-1.1.x-compat.patch