在Mac上,按以下官方文档的攻略是可以编译通过的,但是在Linux上加上java就编译失败!
首先,按官方攻略把Mac流程跑通
//官方攻略BEGIN
编译Java接口
由于GmSSL编译脚本还不能实现在所有操作系统上自动编译Java接口代码,因此编译脚本中默认没有启用Java接口的编译。 开启方式如下: 在源代码根目录下找到Configure文件,找到
$config{dirs} = [ "crypto", "ssl", "engines", "apps", "util", "tools", "fuzz", "test" ];
这一行,并将其修改为
$config{dirs} = [ "crypto", "ssl", "engines", "apps", "util", "tools", "fuzz", "test", "java" ];
重新编译,则可以自动编译java目录下的C代码和Java代码,并生成libgmssljni动态库和GmSSL.class。 这个模块的编译目前在Mac下可以测试通过。
在Linux和Mac下的编译和安装
./config
make
make test
sudo make install
//官方攻略End
在Mac上,编译完成后能产生两个dylib,一个是libgmssljni.dylib, 另一个是libcrypto.dylib