Orientación para garantizar que los eventos de compilación en los proyectos "mrsigner" y "sp" encuentren los archivos requeridos
- Compilada la solución sgx-ra-sample en Visual Studio*
- Errores recibidos de proyectos:sr.signer:
El comando ""sgx-ra-sample\vs\x64\Debug\mrsigner.exe" x64\Debug\enclave_sigstruct_raw > x64\Debug\enclave_mrsigner.txt
: error MSB3073: :VCEnd" salió con el código 1.Sp:
Get-Content: No se puede encontrar la ruta 'sgx-ra-sample\vs\service-provider\policy.in' porque no existe.
En el proyecto mrsigner, vaya al evento posterior a la compilación y cambie $(IntDir) a $(OutDir).
- Seleccione project mrsigner -> Properties -> Build Events -> Post-Build Event.
- Editar línea de comandos: "$(TargetPath)" $(OutDir)enclave_sigstruct_raw > $(OutDir)enclave_mrsigner.txt.
En project sp, vaya al evento previo a la compilación y añada .. \ para policy.in.
- Seleccione project sp -> Properties -> Build Events -> Pre-Build Event.
- Editar línea de comandos: powershell -command "$mrs=Get-Content -Path .. \mrsigner\$(IntDir)enclave_mrsigner.txt; ( Get-Content -Path .. /policy.in -Raw ) -reemplace '@MRSIGNER@', $mrs) | Set-Content $(IntDir)policy.cmd".
El comando predeterminado de PowerShell* en el evento previo a la compilación del proyecto sp no puede encontrar el archivo policy.in.
La ubicación predeterminada de policy.in se encuentra en sgx-ra-sample/vs/policy.in.
Durante el evento previo a la compilación, se ejecuta el comando de PowerShell desde el directorio sgx-ra-sample/vs/service-provider. En consecuencia, coloque .. / frente a policy.in en la línea de comandos de PowerShell para que pueda encontrar policy.in un nivel superior.
Por lo tanto, sabiendo que el comando de PowerShell se ejecuta en sgx-ra-sample/vs/service-provider, informe al comando de PowerShell la ruta de acceso relativa correcta a policy.in si no está en la ubicación predeterminada.