linux_centos intel SGX 安装

注意,最好升级到centso8以上

一、安装SGX驱动

1.下载

https://github.com/intel/linux-sgx-driver 

2.编译

将目录更改为驱动程序路径,然后输入以下命令:

$ make

3.要安装Intel(R)SGX驱动程序,请以root特权输入以下命令:

$ sudo mkdir -p "/lib/modules/"`uname -r`"/kernel/drivers/intel/sgx"    
$ sudo cp isgx.ko "/lib/modules/"`uname -r`"/kernel/drivers/intel/sgx"    
$ sudo sh -c "cat /etc/modules | grep -Fxq isgx || echo isgx >> /etc/modules"    
$ sudo /sbin/depmod
$ sudo /sbin/modprobe isgx

4.卸载sgx驱动

卸载Intel(R)SGX驱动程序之前,请确保aesmd服务已停止

$ sudo /sbin/modprobe -r isgx
$ sudo rm -rf "/lib/modules/"`uname -r`"/kernel/drivers/intel/sgx"
$ sudo /sbin/depmod
$ sudo /bin/sed -i '/^isgx$/d' /etc/modules

二、安装SDK

1.下载:

下载地址:https://01.org/intel-software-guard-extensions/downloads

选择:Intel(R) SGX Installers for CentOS* 8.1进行下载

2.安装:

复制到/opt/soft目录,使用root用户执行

$ chmod u+x sgx_linux_x64_sdk_2.11.100.2.bin
$ sudo ./sgx_linux_x64_sdk_2.11.100.2.bin

安装过程中需要选择安装的文件夹,可以输入yes安装到当前文件夹,也可以输入no选择自己想安装到的文件夹。

我这里选择no,会让你输入指定的路径,我放到了/home/SGXSDK,SGX SDK软件会在/home/SGXSDK路径下建立一个sgxsdk文件夹,并将SDK安装到该文件夹中。

3.测试:

在/home/SGXSDK/sgxsdk/SampleCode/SampleEnclave中修改Makefile文件两个值:

1)修改SGX_SDK ?= /opt/intel/sgxsdk中的“=”后面的内容为我们的SGX SDK安装目录,在我这里是:SGX_SDK ?= /home/SGXSDK/sgxsdk。SGX应用程序编译时,需要使用SDK里面的库,默认SDK目录是/opt/intel/sgxsdk,我们要把它改成我们自己的目录。
2)修改SGX_MODE ?= SIM,硬件不支持,进行模拟运行。

然后执行:

$ make

4.添加库路径

在运行样例代码时,尽管编译没有报错,但是在运行时我出现了以下错误

libsgx_urts.so: cannot open shared object file: No such file or directory

首先查看该文件是否存在(../sgxsdk/lib64目录下),一般来说安装成功,文件都是存在的,解决办法:

进入目录

$ cd /etc/ld.so.conf.d

添加文件

$ vi sgx.conf

并填写../sgxsdk/lib64路径,保存退出,最后运行ldconfig即可

$ sudo ldconfig

重新运行你的程序就可以了

或者直接修改/etc/ld.so.conf的内容在最后添加库加载的新的路径即可,最后执行:

$ sudo ldconfig
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值