#dart #raspberry-pi #sdk
#dart #малина-пи #sdk
Вопрос:
Я пытаюсь получить Dart SDK на Pi Zero W.
Когда я загружаю архив SDK, извлекаю его и помещаю в папку / usr / lib вручную, я получаю ошибки сегментации при попытке запустить любой из инструментов командной строки. Я перепрошил карту памяти (32 ГБ, так что достаточно большую) с нуля с компьютера x64, а также предварительно загрузил SDK, чтобы убедиться, что не было никакого повреждения файла funky Pi, и получил тот же результат.
Хотя я был уверен, что это не сработает, я загрузил версию SDK ARM7 и получил ошибки несовместимости форматов исполняемых файлов, что было неудивительно.
Я загрузил пакет .deb и получил предупреждение о том, что файл не предназначен для моего Pi и что я могу что-то сломать, поэтому я не пытался его установить.
Я использовал инструкции apt-get с веб-сайта Dart, и это не удалось с ошибкой «E: не удалось найти пакет dart», что, по-видимому, указывает на то, что у меня было неправильное имя для пакета (примечание: я скопировал и вставил его непосредственно с веб-сайта Dart). Я попытался просмотреть содержимое репозитория, и, предполагая, что я просмотрел правильный файл, в нем не было никаких записей Dart, так что ошибка неудивительна.
Моя компетенция в Linux вызывает подозрения, поэтому я мог бы использовать любые идеи. Я бы предпочел не создавать SDK с нуля, поскольку, по моему опыту, инструкции по сборке с открытым исходным кодом почти всегда предполагают, что пользователю необходимо знать / делать что-то, что явно не указано в инструкциях, так что, как правило, это 2-часовое усилие, которое в конечном итоге терпит неудачу (уверен, что я не единственный, у кого был такой опыт).
Мысли, кто-нибудь?
Ответ №1:
Это не сработает. Ваша проблема в том, что «Pi Zero W» — это одноядерный процессор ARMv6 с частотой 1 ГГц (BCM2835)», что означает, что он может выполнять программы только для архитектуры ARMv6 или ниже.
У Dart есть минимальные требования к ARMv7, поскольку в начале этого года они удалили поддержку ARMv6: https://github.com/dart-lang/sdk/issues/42069
Поддержка ARMv6 никогда не была такой хорошей (у меня был старый Raspberry Pi), и программы работали очень медленно с отсутствующей поддержкой FFI. Поэтому я рекомендую приобрести плату, поддерживающую ARMv7 или ARMv8 (ARM64), которая действительно отлично работает.
Комментарии:
1. Дох! В какой-то момент я действительно это знал. Я видел загрузки для ARMv7 и ARMv8, и мой мозг прочитал это как ARMv6 и ARMv7. Ну что ж… большое спасибо за быстрый ответ!