Перекрестная компиляция Tilera - Любая идея об этой ошибке: неизвестное письмо ограничения asm - PullRequest
0 голосов
/ 27 октября 2010

Мы получаем эти ошибки ограничения в зависимости от того, какие вызовы OSAF, такие как m_NCS_SEL_OBJ_ZERO (& nSelObjSet), вызываются нашим кодом Это при кросс-компиляции с использованием компилятора tilera - tile-g ++. С g ++ он всегда хорошо компилируется. Любые указатели были бы полезны.

Примечание: m_NCS_SEL_OBJ_ZERO является макросом и заменен на FD_ZERO

Пример кода:

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

Ошибки следующие:

/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:

Арун Л.

1 Ответ

1 голос
/ 28 октября 2010

Проблема в том, что ваша кросс-скомпилированная сборка получает заголовки из хост-системы, а не заголовки, которые подходят для цели.

Эти "неизвестные" буквы ограничения asm относятся к i386 и используются в определениях glibc, специфичных для i386, для FD_ZERO () и FD_ISSET () .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...