Имя неизвестного типа __locale_ (при сборке gcc для powerpc)
Я пытаюсь собрать GCC 4.3-74 для PowerPC с использованием кросс-компиляции. Я использовал следующую команду configure для настройки файла make.
./configure --build = i686-pc-linux-gnu --target = powerpc-linux --host = powerpc-linux --with-gmp = / xxx / include --with-gmp-include = / xxx / include --with-ГМФ Пб = / ххх / Lib
Конфигурация выполнена успешно, но когда я делаю make, он завершился неудачей со следующим сообщением
In file included from ../.././libiberty/floatformat.c:31:0:
/usr/include/string.h:548:5: error: unknown type name ‘__locale_t’
__locale_t __loc)
^
/usr/include/string.h:552:18: error: unknown type name ‘__locale_t’
Кажется, что он не выбирает правильный заголовочный файл для powerpc.
У меня была похожая проблема со сборкой binutils, когда я настраивал без опции --host = powerpc-linux. Как только я использовал опцию --host = powerpc-linux в configure, та же ошибка исчезла в случае binutils.
1 ответ
В моем случае для компиляции использовался довольно старый компилятор. Этот старый компилятор был установлен в переменную PATH в моем профиле пользователя. Следовательно, когда я выполнял gcc, он выполнял старый, и это приводило к этой ошибке.
Я удалил настройку PATH в своем профиле пользователя. Теперь, когда я запускаю gcc, он выполняет последнюю версию gcc. Проблема решена сейчас.