Quick steps to install all required Intel® Software Guard Extensions (Intel® SGX) Platform Software libraries for Linux* to fix Intel® EPID errors
- Installed the Intel® Software Guard Extensions (Intel® SGX) SDK for Linux*, Linux SGX driver, and PSW individual components according to these instructions.
- Ran the sgx-ra-sample or other remote attestation application.
- Received any of the following errors after running the client (other errors are possible):
- Please use the correct SGX EPID library from PSW package
- sgx_get_extended_epid_group_id: ./client: undefined symbol: sgx_get_extended_epid_group_id
- Executing $ cat /var/log/syslog | grep -i aesm returns: aesm_service[18751]: [ADMIN]EPID Provisioning failed
- Access the Intel® SGX PSW libraries following one of two methods:
- Configure access to Intel's apt repository as detailed in page 11 of Intel® SGX Installation Guide for Linux*
$ echo 'deb [arch=amd64] https://download.01.org/intel-sgx/sgx_repo/ubuntu focal main' | sudo tee /etc/apt/sources.list.d/intel-sgx.list ; wget -qO - https://download.01.org/intel-sgx/sgx_repo/ubuntu/intel-sgx-deb.key | sudo apt-key add - ; sudo apt-get update
- Build a local repository
- Configure access to Intel's apt repository as detailed in page 11 of Intel® SGX Installation Guide for Linux*
- Install all components of the Intel® SGX PSW:
$ sudo apt-get install libsgx-launch libsgx-urts libsgx-epid libsgx-quote-ex libsgx-uae-service - Run sudo apt list --installed | grep sgx to ensure that you have the latest version of the PSW packages.
The instructions for installing the Intel® Software Guard Extensions (Intel® SGX) PSW are missing libsgx_uae_service but it is required.