培训中提到:
问题定位:麒麟系统中默认使用openssl 1.1.1,导致依赖1.0.2的低版本某开源软件无法移植至kylin;
解决方案:源码级修改,重新适配编译安装
想追问下:
移植中出现了什么报错呢,1.1.1应该是向下兼容的,我们行内全网大面积做了很多1.0.2向1.1.1升级的动作,暂时没有碰到失败现象,所以想了解下细节。
抱歉,先给你看下我找到还存在着当时的安装报错,提示缺乏依赖库:
上述截图中是安装阶段报错,是依赖库问题,后续在基于1.1.1编译新版mesos时,出现了兼容性问题,包括但不限于:OpenSSL 1.1.0 Changes - OpenSSLWiki
通过兼容性补丁,源代码补丁
后续如果我找到更多当时的问题的时候,再追加分享
从您提供的信息来看,问题出在某开源软件依赖1.0.2版本的openssl,而麒麟系统中默认使用的是1.1.1版本的openssl,导致该开源软件无法移植至kylin。
虽然1.1.1版本的openssl应该是向下兼容的,但是在实际操作中,由于不同版本之间可能存在一些细微的差异,因此可能会出现一些不兼容的情况。具体的报错信息需要根据实际情况来确定,可能会涉及到函数调用、库链接等方面。
针对这种情况,源码级修改重新适配编译安装是一种可行的解决方案。通过修改开源软件的源代码,将其适配到1.1.1版本的openssl上,重新编译安装,就可以解决该问题。
需要注意的是,由于修改源代码需要一定的技术水平,因此需要有相关的开发人员进行操作。同时,在进行修改时,需要对代码进行充分的测试,以确保修改后的软件能够正常运行,并且不会出现其他的问题。