2010-10-27 9 views
0

Nous recevons ces erreurs de contrainte où les appels OSAF comme m_NCS_SEL_OBJ_ZERO (& nSelObjSet) est appelé dans notre code. C'est lors de la compilation croisée en utilisant le compilateur tilera - tile-g ++. Avec g ++, il compile toujours bien. Tout pointeur serait utile.Tilera cross compilation - Une idée à ce sujet Erreur: inconnue asm contrainte lettre

Note: m_NCS_SEL_OBJ_ZERO est une macro et remplacée par FD_ZERO

Exemple de code:

// initialise and set selection object set 
m_NCS_SEL_OBJ_ZERO(&nSelObjSet); 
m_NCS_SEL_OBJ_SET(nMdsSelObj, &nSelObjSet);** 

Les erreurs sont les suivantes:

/u/TILERA/STACK/DEV/lte/lte_enb/enb_cfgmgr/src/ConfigManagerThread.cxx: 
"/u/TILERA/STACK/DEV/lte/lte_enb/enb_cfgmgr/src/ConfigManagerThread.cxx", line 103: error: 
      unknown asm constraint letter 'c' 
     m_NCS_SEL_OBJ_ZERO(&nSelObjSet); 
     ^

"/u/TILERA/STACK/DEV/lte/lte_enb/enb_cfgmgr/src/ConfigManagerThread.cxx", line 103: error: 
      unknown asm constraint letter 'D' 
     m_NCS_SEL_OBJ_ZERO(&nSelObjSet); 
     ^

"/u/TILERA/STACK/DEV/lte/lte_enb/enb_cfgmgr/src/ConfigManagerThread.cxx", line 103: error: 
      unknown asm constraint letter 'a' 
     m_NCS_SEL_OBJ_ZERO(&nSelObjSet); 
     ^

"/u/TILERA/STACK/DEV/lte/lte_enb/enb_cfgmgr/src/ConfigManagerThread.cxx", line 110: error: 
      unknown asm constraint letter 'q' 
      if (m_NCS_SEL_OBJ_ISSET(nMdsSelObj, &nSelObjSet)) 
       ^

4 errors detected in the compilation of "/u/TILERA/STACK/DEV/lte/lte_enb/enb_cfgmgr/src/ConfigManagerThread.cxx". 
/u/TILERA/STACK/DEV/lte/lte_enb/enb_cfgmgr/src/EnbCfgMgr.cxx: 

Arun L.

Répondre

0

Le problème est que votre compilation croisée récupère les en-têtes du système hôte plutôt que aders qui conviennent à la cible.

Ces lettres de contraintes asm «inconnues» sont des lettres spécifiques à i386 utilisées dans glibc's i386-specific definitions of FD_ZERO() and FD_ISSET().

+0

Oui, le compilateur croisé récupérait les en-têtes d'hôte. Maintenant, il est corrigé pour ramasser l'en-tête cible pour FD_ZERO et la compilation est terminée. Matthew, je vous remercie pour la réponse. – arun