Closed you-n-g closed 7 years ago
And I'm sure the app is linking to the correct libsgx_urts.so.
[15:23:28]root@young-Inspiron-13-7359:/home/young/repos/linux-sgx/linux/installer/bin/sgxsdk/SampleCode/SampleEnclave# ldd app
linux-vdso.so.1 => (0x00007ffdea1ec000)
libsgx_urts.so => /opt/intel/sgxsdk/lib64/libsgx_urts.so (0x00007f2edcaf4000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f2edc7da000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f2edc5c4000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f2edc1ff000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f2edbef8000)
/lib64/ld-linux-x86-64.so.2 (0x0000561fb5c94000)
Make sure PSW installer has been installed. Do not set LD_LIBRARY_PATH=/opt/intel/sgxsdk/lib64/ libsgx_urts.so under system folder instead of the one under /opt/intel/sgxsdk/lib64/ should be used
@zhaohuidu I use /usr/lib/libsgx_urts.so and It works!! Thanks very much!
So /usr/lib/libsgx_urts.so comes from the PSW and it is the library for production environment on the hardware. And /opt/intel/sgxsdk/lib64/libsgx_urts.so comes from the SDK and it is only for development.
Did I understand it correctly?
Yes.
can any body tell me where to modify the DL_LIBRARY_PATH mentioned above?????
As the answer above, you usually don't need to set LD_LIBRARY_PATH and it will use the right uRTS in /usr/lib
Do not set LD_LIBRARY_PATH=/opt/intel/sgxsdk/lib64/
May I know why I do not have this file /usr/lib/libsgx_urts.so installed ?
[phung@archlinux HelloEnclave]$ locate urts /opt/intel/sgxpsw/aesm/liburts_internal.so /opt/intel/sgxpsw/lib64/libsgx_urts.so /opt/intel/sgxsdk/include/sgx_urts.h /opt/intel/sgxsdk/lib64/libsgx_urts.so /opt/intel/sgxsdk/lib64/libsgx_urts_sim.so /opt/intel/sgxsdk/pkgconfig/libsgx_urts.pc /opt/intel/sgxsdk/pkgconfig/libsgx_urts_sim.pc [phung@archlinux HelloEnclave]$
I had a similar error but it went away when I ran the compiled app using the sudo
command.
I'm trying to run SampleEnclave with HW mode, but I got same error.
How do I use libsgx_urts.so in /usr/lib
? I have not set LD_LIBRARY_PATH, but the library in /opt/intel/sgxsdk/lib64
is used. I tried to set SGX_LIBRARY_PATH=/usr/lib
in Makefile, but I got same error.
Thank you.
I'm trying to run SampleEnclave with HW mode, but I got same error. How do I use libsgx_urts.so in
/usr/lib
? I have not set LD_LIBRARY_PATH, but the library in/opt/intel/sgxsdk/lib64
is used. I tried to setSGX_LIBRARY_PATH=/usr/lib
in Makefile, but I got same error.Thank you.
I meet the same problem with you, do you solve the problem?
Thank you.
Error Info
Got error "Please use the correct uRTS library from PSW package." when SGX_MODE=HW Here is my output when trying to run the SampleEnclave with SGX_MODE=HW
About my Installation
I have successfully installed the sgx driver with this tutorial and loaded it by following https://github.com/01org/linux-sgx-driver
I have successfully installed The SGX SDK and SGX PSW by following https://github.com/01org/linux-sgx-driver
About my hardware
I'm using dell laptop Inspiron i7359-6790SLV
I'm sure that SGX is available for my CPU and enabled in BIOS by running this script https://github.com/ayeks/SGX-hardware/blob/master/test-sgx.c Here is my result
About my OS
Any comments will be appreciated. Thanks!!!!