编译安装gmssl后,运行遇到问题:
error:while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory gmssl: symbol BIO_debug_callback version OPENSSL_1_1_0d not defined in file libcrypto.so.1.1 with link time reference
这个问题应该时找到了gmssl运行时的依赖库libssl.so.1.1。但这个库并不是跟gmssl编译时同时生成的库,而是ubuntu原有的同名库。用ldd命令可以查看:
ldd /usr/local/bin/gmssl
解决办法:
修改Gmssl的Makefile文件,在CFLAGS赋值时添加-Wl,-rpath=$(LIBRPATH),LIB_LDFLAGS赋值LIB_LDFLAGS=-Wl,-rpath=$(LIBRPATH) -znodelete -m64。
重新编译、安装:
make clean
make install