为了研究openssl中sm2的国密算法,需要做一个调试环境。
最后在linux虚机机中用eclipse做相关调试。
openssl 安装
先从github上取出源码,最新的1.1.1的是有国密算法sm2的。
在解压目录下执行如下命令生成makefile文件
./config --prefix=/usr/local/openssl shared
执行make命令:make
使用root权限,安装openssL:
sudo make install
在eclipse中配置的方法
新建一个C语言测试工程,例如openssL_test,右键-属性-C/C++ Build-设置,然后单击图中右侧第一个红框,也就是GCC C Compiler 下的include,做如下设置,这里的path就是上面include的位置。
然后单击GCC C Linker 下的libraries ,做如下设置:
ssl和crypto是用户手动加上去的,但不是随意写的,其实这两个变量对应着/usr/local/openssl/lib目录下的libssl.so和libcrypto.so文件。
添加连接库目录
链接库的配制在/etc/ld.so.conf.d
里,可以看到配制是加载/etc/ld.so.conf.d/
目录下所有以conf结尾的文件。
sudo cat /etc/ld.so.conf
include /etc/ld.so.conf.d/*.conf
这里做如下配制:
touch openssl.conf
sudo vi openssl.conf
将/usr/local/openssl/lib
复制进去,保存
启动用新配制:
sudo ldconfig
到这编译链接启动开发的程序就没问题了。