Согласно Wiki , изображение Arch не использует поддержку Hard Float, и я уверен, что он использует набор инструкций ARMv5. Можно ли построить дистрибутив, который использует Hard Float и ARMv6?
Согласно Wiki , изображение Arch не использует поддержку Hard Float, и я уверен, что он использует набор инструкций ARMv5. Можно ли построить дистрибутив, который использует Hard Float и ARMv6?
Ответы:
ОБНОВЛЕНИЕ: Arch Linux ARM теперь изначально поддерживает,
armv6h
поэтому будет оптимизирован для работы с Pi. Остальная часть этого ответа все еще относится к другим архитектурам.
Да, это было бы возможно, но вам пришлось бы перекомпилировать каждую часть программного обеспечения для ARMv6-hard. У Arch есть системы сборки и инфраструктура, которые делают это автоматически для своих поддерживаемых платформ (ARMv5-soft и ARMv7-hard), поэтому вам придется дублировать это самостоятельно где-нибудь, чтобы создавать версии ARMv6-hard всего.
Было бы вполне возможно сделать это на обычном настольном ПК под управлением Arch, просто требуется время, чтобы все заработало и заработало. Затем вам также необходимо отслеживать обновления пакетов и заставлять систему сборки загружать новые версии и компилировать их, чтобы ваше программное обеспечение не устарело.
Если вы (или кто-либо другой) сделали это, было бы полезно опубликовать скомпилированные двоичные файлы на общедоступном веб-сайте, чтобы другие люди могли использовать ваш новый вариант Arch, не беспокоясь о его компиляции.
Если вы хотите это сделать, вам необходимо ознакомиться с:
Для начала лучше всего выбрать несколько пакетов из AUR и скомпилировать их в свой собственный репозиторий, а также убедиться, что вы можете синхронизировать его с pacman. Как только это будет сделано, все, что вам нужно сделать, это настроить флаги компилятора (для ARMv6-hard), а затем повторить, вероятно, для всех пакетов в репозитории [core] по умолчанию.
Затем вы можете попросить pacman переустановить каждый пакет на вашем Pi из вашего нового репозитория hardfloat, перезагрузиться, и тогда вы будете запускать все из ваших собственных пакетов hardfloat.