ID de l'article: 000087410 Type de contenu: Messages d'erreur Dernière révision: 22/09/2021

Erreur reçue « MSB3073 » des événements de construction dans le mrsigner et les projets sp lors de la compilation de l’exemple sgx-ra dans Visual Studio*

Environnement

Windows_10

BUILT IN - ARTICLE INTRO SECOND COMPONENT
En bref

Conseils permettant de s’assurer que les événements de construction des projets « mrsigner » et « sp » trouvent les fichiers requis

Descriptif
  • Compilé la solution sgx-ra-sample dans Visual Studio*
  • Erreurs reçues des projets :
    mrsigner :
    La commande « sgx-ra-sample\vs\x64\Debug\mrsigner.exe » x64\Debug\enclave_sigstruct_raw > x64\Debug\enclave_mrsigner.txt
    : erreur MSB3073 : :VCEnd » a quitté le code 1.

    Sp:
    Get-Content : impossible de trouver le chemin « sgx-ra-sample\vs\service-provider\policy.in » car il n’existe pas.

Résolution

Dans mrsignerdu projet, accédez à l’événement Post-Build et changez $(IntDir) en $(OutDir).

  1. Sélectionnez project mrsigner -> Properties -> Build Events -> Post-Build Event.
  2. Modifier la lignede commande : « $(TargetPath) » $(OutDir)enclave_sigstruct_raw > $(OutDir)enclave_mrsigner.txt.

Dans project sp, accédez à l’événement de pré-build et ajoutez .. \ à policy.in.

  1. Sélectionnez project sp -> Properties -> Build Events -> Événement de pré-build.
  2. Modifier la ligne de commande: powershell -commande « $mrs=Get-Content -Path .. \mrsigner\$(IntDir)enclave_mrsigner.txt ; (Get-Content -Path .. /policy.in -Raw) -remplacez « @MRSIGNER@ », $mrs) | Set-Content $(IntDir)policy.cmd »».
Informations complémentaires

La commande powershell* par défaut de l’événement de pré-build du projet sp n’est pas en mesure de trouver le fichier policy.in.

L’emplacement par défaut de policy.in est sous sgx-ra-sample/vs/policy.in.

Pendant l’événement de pré-build, la commande PowerShell est exécutée à partir du répertoire sgx-ra-sample/vs/service-provider. En conséquence, placez .. / en face de policy.in dans la ligne de commande PowerShell afin qu’il puisse trouver policy.in un niveau supérieur.

Ainsi, sachant que la commande PowerShell fonctionne dans sgx-ra-sample/vs/service-provider, indiquez à la commande PowerShell la voie relative correcte pour policy.in si elle n’est pas à l’emplacement par défaut.

Produits associés

Cet article concerne 1 produits

Le contenu de cette page est une combinaison de traduction humaine et informatique du contenu original en anglais. Ce contenu vous est fourni pour votre commodité et à titre informatif seulement et ne saurait être totalement exact ou complet. En cas de contradiction entre la version anglaise de cette page et la traduction, c'est la version anglaise qui prévaut. Afficher la version anglaise de cette page.