Функция sem_wait () из uClib c на платформе MIPS не реализована - PullRequest
0 голосов
/ 13 апреля 2020

Это так случилось, что мы вынуждены использовать Linux 2.6.21, который был выпущен в 2007 году на платформе MIPS, и нет, об изменении ядра не может быть и речи, или, скорее, вопрос действительно дорогой.

Для этого я создаю свой собственный набор инструментов, используя crosstool-ng с ./maintainer/addToolVersion.sh - linux - устаревший 2.6.21, чтобы добавить поддержку старого kenel и uClib c -0.9.33.2 настроен для потоков NPTL. Так что у меня проблема с семафорами, особенно с sem_wait () и sem_timedwait () - при вызове с любыми аргументами они возвращают -1 и устанавливают для errno значение Не реализовано.

Я пытался заменить все экземпляры из sem_wait (), __new_sem_wait () и __old_sem_wait (), за исключением кода сборки x86, с простыми функциями, которые устанавливают разные значения Errno, но они не работают и по-прежнему возвращаются Не реализовано.

Итак, мой вопрос: сделал Кто-нибудь видел такую ​​проблему или, может быть, вы знаете, как uClib c выбирает, какие функции использовать для платформы MIPS?

...