Как собрать binutils для конкретной цели

Я пытаюсь настроить binutils для процессора ARM, в частности ARMv5TE. Процессор Marvell 88F5281. В настоящее время на устройстве работает NetBSD, поэтому я хочу убедиться, что я настроил binutils для правильной целевой архитектуры / ОС.

Есть ли способ перечислить комбинацию целей/ОС при настройке binutils?

На данный момент я нашел arm-*-netbsdelf со следующей страницы http://gcc.gnu.org/install/specific.html#arm-x-eabi

Но мне все еще интересно, есть ли список целей/ОС, когда я запускаю скрипт configure из командной строки.


person ipatch    schedule 13.04.2014    source источник


Ответы (1)


Хорошим местом для начала может быть NetBSD build.sh, который предназначен для создания полного набора инструментов кросс-компилятора для цели NetBSD на хосте POSIX.

  • Загрузите и извлеките исходное дерево для версии NetBSD, на которой работает ваша цель.
  • Запустите './build.sh -m evbarm tools'
  • По завершении он должен сказать вам, где найти встроенные binutils и кросс-компилятор.

Примечание. Если целью является bigendian, вам нужно будет использовать evbarm-eb в команде build.sh.

person abs    schedule 14.04.2014
comment
Хост-ОС, которую я пытаюсь создать, — это OS X, поэтому вы говорите, что устанавливаете NetBSD на виртуальной машине, а затем создаете кросс-компилятор на виртуальной машине? - person ipatch; 14.04.2014
comment
Вы должны иметь возможность загрузить исходный код NetBSD, установить OS X Xcode и собрать кросс-компилятор NetBSD непосредственно под OS X. NetBSD разработана таким образом, чтобы позволить вам кросс-сборку полного дистрибутива для любой цели NetBSD из любого блока POSIX — *BSD, Linux , OS X и т. д. В данном случае нас интересует только цепочка инструментов, но проще всего загрузить все дерево, а затем просто запустить этап «сборки инструментов». - person abs; 15.04.2014
comment
Я только что создал инструменты кросс-компиляции на виртуальной машине NetBSD 4.0, но до сих пор не могу скомпилировать простую Hello World программу. Он выдает ошибку, утверждая, что не может найти stdio.h - person ipatch; 17.04.2014
comment
Я счастлив попытаться воспроизвести этот конец. Не могли бы вы подтвердить, какая версия NetBSD установлена ​​на цели - 4.0? У меня есть несколько ящиков для рук (и, вероятно, я мог бы просто запустить qemu для тестирования на моем ноутбуке, если я путешествую), и я настрою набор инструментов NetBSD на своем Mac для воспроизведения - person abs; 20.04.2014
comment
Да, действительно, коробки работают под управлением NetBSD 4.0. Я успешно собрал набор инструментов для ARM, используя скрипт build.sh, и собрал двоичный файл для платформы. Однако мне не повезло с MIPS. - person ipatch; 21.04.2014
comment
Какую ошибку вы получаете на стороне MIPS — во время сборки или во время выполнения? Какой целевой ЦП - Big/Little endian 32/64 bit? - person abs; 23.04.2014