问题描述
编译成功,执行失败,报错找不到共享文件:libsgx_urts.so.2
lyx@LP:/opt/intel/sgxsdk/SampleCode/SampleEnclave$ sudo ./app
./app: error while loading shared libraries: libsgx_urts.so.2: cannot open shared object file: No such file or directory
打开sgxsdk里的lib64,libsgx_urts.so.2,浅蓝色代表链接文件,刚开始不知道是不是此文件没装好?,第二个图是在成功安装好sgx之后查看的,一模一样,所以不是这个文件的原因。最开始肯定某一步有问题,一般这种碰到缺少文件的就很难解决,因为内部运行的东西一个套一个环环相扣,你根本就不清楚。。。。。
解决过程:
在安装sgx时,要安装PSW的3个服务时出错,根据这个博主做的:
https://www.cnblogs.com/fightKun/p/16645468.html
可能是前面某一步遗漏或者有问题,最好的方式就是卸载之后重新装。。。之前总是遇到卸载驱动之后就安装不上的情况。经过我不断…摸索,发现是没删除干净。删除顺序是 psw–>sdk–>driver,驱动是最后删除的!!我总是只删除了驱动,没管sdk的删除。。。记得删除用uninstall。
linux系统约定的默认颜色:
白色:表示普通文件
蓝色:表示目录
绿色:表示可执行文件
红色:表示压缩文件
浅蓝色:链接文件
红色闪烁:表示链接的文件有问题
黄色:表示设备文件
灰色:表示其他文件。