蓬莱enclave TEE编译和运行说明
蓬莱enclave-spmp 编译和运行说明
蓬莱是一个RISC-V TEE系统,其设计具有安全性,高性能和可扩展性。基于PMP的OpenSBI版本的蓬莱Enclave使用可以参考下文,具体仓库地址为:https://github.com/Penglai-Enclave/Penglai-Enclave-sPMP
penglai编译环境准备
创建~/dev目录,将sdk、penglai-enclave-driver、secgear目录放置在~/dev目录中,最终布局如下,
~/dev
├── penglai-enclave-driver
├── sdk
├── secGear
该sdk和secGear路径与下文cmake编译secGear时指定的蓬莱sdk路径参数相关,不建议修改
安装内核模块编译相关依赖:
dnf install -y kernel-devel kernel-source cmake g++在RISC-V下编译secGear需要Ocaml等依赖环境,如果不能通过软件源安装,则需要自行编译并指定路径。目前我们已经准备预编译的Ocaml包来简化这个过程,用户可以直接从 https://ipads.se.sjtu.edu.cn:1313/d/6a464e02cd3d4c1bafb0/ 下载已经编译好的opam工具,解压后将
opam.tar.gz拷贝至~/目录并解压。
对应仓库:
- penglai-enclave-drvier: https://github.com/Penglai-Enclave/Penglai-Enclave-sPMP/tree/opensbi/penglai-enclave-driver
- penglai-sdk: https://github.com/Penglai-Enclave/penglai-sdk
- penglai-secGear: https://github.com/Penglai-Enclave/Penglai-secGear/tree/oe-release
编译penglai-enclave-driver
进入penglai-enclave-driver目录:
cd ~/dev/penglai-enclave-driver
#modify source path
sed -i 's|make -C ../openeuler-kernel/ ARCH=riscv M=$(PWD) modules|make -C /usr/lib/modules/$(shell uname -r)/build ARCH=riscv M=$(PWD) modules|' Makefile > /dev/null 2>&1
make -j$(nproc)
insmod penglai.ko
oe中编译sdk目录中相关库和demo
进入~/dev/sdk目录编译penglai-sdk:
cd ~/dev/sdk
./replace_compiler_prefix.sh
PENGLAI_SDK=$(pwd) make -j8
运行demo测试
cd ~/dev/sdk/demo
./host/host count/count
oe中编译secGear程序
进入~/dev/secGear目录
cd ~/dev/secGear && source environment && mkdir -p debug && cd debug
cmake -DENCLAVE=PL -DSDK_PATH=/root/dev/sdk .. && make && make install
运行demo测试
cd ~/dev/secGear/debug
./bin/secgear_helloworld
./bin/secgear_calculation
蓬莱enclave TEE编译和运行说明的更多相关文章
- notepad++编译并运行java (自定义包)
最近用Notepad++写汇编,感觉用起来挺顺手,于是想能不能也在这个优秀的编辑器下编写java并编译运行呢,因为每次启动eclipse都要挺长时间,而且eclipse实在太占内存了... 于是各种百 ...
- 手动编译并运行Java项目的过程
现在Java开发基本上就是IDE调试,如果跨平台打个jar包过去运行一般就可以了,但是有些情况比如需要引入外部依赖的时候,这个时候是不能直接运行的,还需要引入一些外部的参数,并不是简单的javac和j ...
- 如何使用命令行编译以及运行java文件
要想编译和运行java文件,很简单,只需要两个命令: (1) javac:作用:编译java文件:使用方法: javac Hello.java ,如果不出错的话,在与Hello.java 同一目录下会 ...
- [JAVA] 一个可以编辑、编译、运行Java简单文件的记事本java实现
本来是Java课做一个仿windows记事本的实验,后来突然脑子一热,结果就给它加了一个编译运行Java文件的功能. 本工程总共大约3000行代码,基本上把所学的java界面.文件.控件的功能都包含在 ...
- .NET程序的编译和运行
程序的编译和运行,总得来说大体是:首先写好的程序是源代码,然后编译器编译为本地机器语言,最后在本地操作系统运行. 下图为传统代码编译运行过程: .NET的编译和运行过程与之类似,首先编写好的源代码,然 ...
- Java程序编译和运行的过程
Java整个编译以及运行的过程相当繁琐,本文通过一个简单的程序来简单的说明整个流程. 如下图,Java程序从源文件创建到程序运行要经过两大步骤:1.源文件由编译器编译成字节码(ByteCode) 2 ...
- Java程序编译和运行的过程【转】
转自:http://www.360doc.com/content/14/0218/23/9440338_353675002.shtml Java整个编译以及运行的过程相当繁琐,本文通过一个简单的程序来 ...
- .NET概念:.NET程序编译和运行
.NET概念:.NET程序编译和运行 分类: c#程序设计 2012-02-29 15:46 3001人阅读 评论(2) 收藏 举报 .net编译器语言microsoftassemblyvb.net ...
- Xcode常见的编译、运行等错误的解决
Xcode常见的编译.运行等错误的解决 项目没找到Info.plist的错误 The solution for this particular instance of the error was “I ...
- DOS环境下含包并引用第三方jar的java程序的编译及运行
DOS环境下含包并引用第三方jar的java程序的编译及运行 1.程序目录机构 bin:class文件生成目录 lib:第三方jar包目录 src:源程序文件目录 2.程序代码: 3.程序编译 jav ...
随机推荐
- win10家庭版禁用更新
前言 2020年初因为疫情在家远程办公,而我老家没有电脑,先后向两位大学生借了两台电脑来办公,发现一个现象:他们的电脑系统都是家庭版,也就是刚买电脑时安装的win10家庭版.也问了其它几位计算机专业的 ...
- 微信小程序-应用程序生命周期方法
官方文档地址:https://developers.weixin.qq.com/miniprogram/dev/reference/api/App.html // app.js App({ onLau ...
- Python自动化办公--Pandas玩转Excel数据分析【三】
相关文章: Python自动化办公--Pandas玩转Excel[一] Python自动化办公--Pandas玩转Excel数据分析[二] python处理Excel实现自动化办公教学(含实战)[一] ...
- 有用的工具类(Java)
IP地址获取 public class IPUtil { private static final String UNKNOWN = "unknown"; protected IP ...
- Intel(R) Ethernet Controller X710驱动升级
环境 CentOS Linux release 7.9.2009 (Core) 升级 先查看原驱动版本 [root@xcdcs ~]# lspci |grep net 01:00.0 Ethernet ...
- 硬盘SMART信息解读
目录 一.SMART概述 4 二.SMART的ID代码 4 三.SMART的描述(Description) 5 四.SMART的值 5 1.临界 ...
- 【Linux】虚拟机太卡咋办?用云服务器Xshell配置Vmware虚拟机【技能篇】
[Linux]用云服务器Xshell配置Vmware虚拟机[技能篇] 强烈建议本篇收藏后再食用~ 文章目录 Xshell下载 配置Vmware 尾声 平时我们使用虚拟机,可能最烦人的问题就是卡顿了.今 ...
- 教你用JavaScript实现表情评级
案例介绍 欢迎来到我的小院,我是霍大侠,恭喜你今天又要进步一点点了!我们来用JavaScript编程实战案例,做一个表情评价程序.用户打星进行评价,表情会根据具体星星数量发生变化. 案例演示 点击星星 ...
- 19c RAC 告警日志报错 ORA 7445 [pevm_icd_call_common()+225]
问题现象: 在一套2节点的19c RAC 环境下,节点2 alert告警 ORA 7445,且频度固定为每分钟报一次:期间有重启实例,但故障依旧: ========================== ...
- RHEL7安装11204 RAC的注意事项
最近在某客户的RHEL7 + 11204 RAC环境上测试遇到不少的坑,好在都赶在正式上线前及时发现并处理完毕. 其中两个问题比较典型所以特别记录下:问题都和主机重启后,O相关服务没有自启动导致,看来 ...