在网上下载Ubuntu18.04-desktop镜像,制作光盘或U盘进行安装。
下载地址:http://mirrors.163.com/ubuntu-releases/18.04.4/
在安装过程中我选择的最小安装,但是要勾选安装图形和一些硬件软件等。或者正常安装也是一样的。
如果安装了Ubuntu18.04-server,没有图形界面,后期还要自己安装图形界面,有点麻烦。
国内源比较多,自己选择一个比较快的就行。我选择的163的,感觉速度比较快。
更改步骤:
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 18.04.4 LTS
Release: 18.04
Codename: bionic
$ sudo mv sources.list sources.list.bak
$ sudo vi sources.list
内容编辑为:
deb http://mirrors.163.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-backports main restricted universe multiverse
保存退出。
$ sudo apt-get update
下载地址:https://download.01.org/intel-sgx/sgx-linux/2.9/distro/ubuntu18.04-server/
下载图中的两个.bin文件,其中:
Intel® SGX driver: sgx_linux_x64_driver.bin
Intel® SGX SDK: sgx_linux_
只有64位的安装包了。
注意下载了上述两个软件包后默认是没有执行权限的,使用chmod添加执行权限。
$ chmod 755 *.bin
注意:SGX SDK2.9需要gcc7.3以上版本,在安装gcc的时候注意检查。
(一)安装SGX PSW先决条件
$ sudo apt-get install libssl-dev libcurl4-openssl-dev libprotobuf-dev
$ sudo apt-get install build-essential python
1、SGX driver2.9
2、SGX PSW2.9
3、SGX SDK2.9
(二)卸载顺序
1、SGX driver2.9
2、SGX PSW2.9
3、SGX SDK2.9
安装需要root权限
$ sudo ./sgx_linux_x64_driver_2.6.0_95eaa6f.bin
安装完成后会在/opt/intel目录下多个sgxdriver目录,里面只有卸载脚本uninstall.sh。
1、launch
2、EPID-based attestation
3、algorithm agnostic attestation
(二)从版本2.8开始,PSW被分隔了多个安装包,用户可以自己选择需要安装的包和服务。在安装PSW2.9的时候需要连接互联网:
1、添加Ubuntu18.04源
$ echo 'deb [arch=amd64] https://download.01.org/intel-sgx/sgx_repo/ubuntu bionic main' | sudo tee /etc/apt/sources.list.d/intel-sgx.list
2、下载密钥
wget -qO - https://download.01.org/intel-sgx/sgx_repo/ubuntu/intel-sgx-deb.key | sudo apt-key add -
3、更新源
sudo apt-get update
4、安装launch service:
$ sudo apt-get install libsgx-launch libsgx-urts
5、安装EPID-based attestation service:
$ sudo apt-get install libsgx-epid libsgx-urts
6、algorithm agnostic attestation service:
$ sudo apt-get install libsgx-quote-ex libsgx-urts
在PSW安装完成后会在/opt/intel目录下会多个sgx-aesm-services目录。
(一)安装SGX SDK2.9需要根据SDK的安装目录来决定是否需要root权限。如果想将SDK也安装在/opt/intel目录下的话:
$ sudo ./sgx_linux_x64_sdk_2.9.100.2.bin
会提示是否安装在当前目录,输入no,然后再输入目录:/opt/intel
安装完成后,会提示设置环境变量,普通用户运行下面命令:
$ source /opt/intel/sgxsdk/environment
$ cd SampleCode/SampleEnclave
$ make
$ ./app
这就说明安装成功的,
注意:其中make的选项比较多,可以参照SampleEnclave目录下的README.txt文件自行选择编译的选项。
在Oracle官网下载JDK1.8或者更高版本。
https://www.oracle.com/java/technologies/javase/javase8u211-later-archive-downloads.html
这部分可以参照网上其他人的教程,或者按下面的步骤也可以正常使用:
$ cd /opt
$ sudo mkdir java
将下载的jdk1.8解压到java目录下,然后修改/etc/profile文件,只需要在该文件的最后添加下面的内容即可:
修改完成后,建议重启一下机器,然后使用java -version验证:
如果使用source命令的话有可能会有一些问题。
下载地址:
https://mirrors.tuna.tsinghua.edu.cn/eclipse/technology/epp/downloads/release/2019-12/R/eclipse-cpp-2019-12-R-linux-gtk-x86_64.tar.gz
Eclipse版本要求是Mars1(4.5.1)以上。
下载完成后使用tar -zxvf解压就可以了,双击eclipse应该就可以正常使用了。
将eclipse固定在左侧收藏夹:
1.终端代码 :sudo vi /usr/share/applications/eclipse.desktop
然后在弹出的文件中道输入:
[Desktop Entry]
Encoding=UTF-8
Name=eclipse
Comment=Eclipse IDE
Exec=/usr/local/eclipse/eclipse_SDK/eclipse(路径,视自己的而定版)
Icon=/usr/local/eclipse/eclipse_SDK/icon.xpm(路径,视自己的而定)
Terminal=false
StartupNotify=true
Type=Application
Categories=Application;Development;
然后给该文件赋权:sudo chmod u+x /usr/share/applications/eclipse.desktop
这样再次打开eclipse就可以将它固定在左侧了。
(一)下载SGX eclipse plugin2.9地址:
https://download.01.org/intel-sgx/sgx-linux/2.9/sgx_eclipse_plugin_2.9.zip
下载好后不需要解压,不需要解压,不需要解压。
打开eclipse,点击Help->Install New Software->Add,在弹出的Add Repository对话框中Name:可以输入Intel(R) SGX,然后点击Archive,选择刚下载的sgx_eclipse_plugin_2.9.zip
注意勾选的几个地方,我的已经安装过了,next无法点击了。大家点击了next后还要同意协议,最后Finish就可以了。
以上全部成功之后可以测试一下:
打开eclipse->File->Import->General->Existing Projects into Workspace,选择到SampleEnclave目录级别即可,并勾选Copy projects into workspace,
再点击Finish即可。我的已经导入了,不能再点了。
之后可以直接点击Build,,点击下拉框选择编译的选项,我选择的是Hardware Debug。
右键单击app->Run as->Local C/C++ Application。
跟之前使用命令行的输出是一致的。
注意:在该项目中有可能部分文件里面会有报错的文件,但并不影响编译和执行。想要消除错误文件的话,需要右键单击项目->Properties,然后在Environment中添加SGX_SDK环境变量,再检查Paths and Symbols的Includes设置,需要有${SGX_SDK}/include选项。
更多的内容还在摸索学习中,欢迎讨论交流。