总结了可信计算教材(可信计算3.0工程初步)中实验的一些坑,实验内容包含cube框架编译和国密sm2算法及例子测试。
前期步骤中需要修改的环境变量
2.关于临时环境变量设置
使用source set_env.sh命令,完成编译环境设置中,实际上是调用export。但export设置环境变量是暂时的,只在本次登录中有效(同一个terminal下有效),所以如果再新建shell,然后去编译框架会导致找不到头文件错误。
3.sm2算法及测试代码
在进入sm2_impl目录,执行make时会出现sm3_ext.o无法生成的错误,猜测可能是本地多次更新升级代码,Makefile文件中的编译过程有问题。这里有两个解决办法,第一个是读懂sm3相关几个文件的代码逻辑,补全Makefile中缺少的文件编译过程;第二个是找到老版本的例子和算法(教材出版后,gitee上的代码有多次更新)。我用的是第二种方法,老版本算法及例子链接:
https://wws.lanzous.com/b0260t2ej
密码:3etf
4.测试代码的环境变量
- 这里需要在不切换shell的情况下执行
- set_env.sh的默认权限是没法执行脚本的,按理来说赋予执行权限就足够了chmod +x set_env.sh,不过我的环境里还是出现了一些别的问题,所以又简单粗暴地设置了chmod 775 set_env.sh(实际上不建议),两个目录下的set_env.sh文件都需要修改下权限(好像只有一个是有问题的,建议两个都覆盖修改一遍)
- 查看自己的临时环境变量的命令:export
5.补充提示
最后一步,这里需要修改环境变量