LINUX.ORG.RU

Подскажите как компилять на м1 код на С под linux arm

 , ,


0

2

Задача - пишет под макосью на С, компиляем, в том числе, под линух бегающий на арм64 и арм32 (и совсем хорошо если под мипс)
Проблема - проц м1
Текущее решение - в виртуалке убунта под арм64 которая после кучки костылей научилась и в gnueabi-gcc но основательно при этом поломалась так что пора перестать лениться и сделать нормально.
В brew тулчейн только под амд64 ищется

Наверняка я не один такой балбес и может кто подскажет как организовать более компактное и внятное решение чем виртуалка или внешний сервачок.
В идеале если со статейкой для особо краборуких ^_^

★★★★

более компактное и внятное решение чем виртуалка

ты промучаешься с невоспроизводимым окружением под макосью.

Почему бы сразу не собирать в докере под линуксом?

max_lapshin ★★★★★
()
Ответ на: комментарий от max_lapshin

ты промучаешься с невоспроизводимым окружением под макосью.

У меня довольно простой случай - си используется для небольших программ где Ява либо не умеет в железо либо где железо не умеет в Яву

По сути все портировалось на позикс за пару дней и теперь можно и писать и дебажить и гонять напрямую на маке НО вот с собирать - пока чуток сложнее.

Самый простой путь - дебиан на амд64 машине на котором можно собирать под все зоопарки сразу - удобно и подходит, но грозит мне командировка в попу мира где придется активно править и соотв перекомпилять, и очень не хочется зависеть от интернетов ровно как и везти вторую машину.
С виртуалкой под арм64 на убунте был пучок проблем (решенных с помощью лора но приведших к немного другим проблемам :D) а виртуалка под амд64 через транслятор … ну такое себе, хотя в целом работает.

Вообщем я надеялся на то что есть некий простой путь с «накидал себе глибсов и тулчейнов под нужные платформы и дальше дергай их скриптом по очереди» но видимо действительно проще вернуть виртуалочку (докером я не особо проникся - мне проще полную вм)

rukez ★★★★
() автор топика
Ответ на: комментарий от rukez

нет доверия к чему, что там clang что-то не так скомпилирует? Потому что если не трогать собственно zig, то это перепакованный clang с дедуплицированными glibc и musl, и не более того.

Lrrr ★★★★★
()
Ответ на: комментарий от Lrrr

zig cc умеет компилять под linux-arm

А как это реализовано у них кстати? У них там собственные компиляторы написаны и libc или они на рельсах LLVM едут?

:ps: Напомни что у тебя была за старая автатарка пожалуйста.

EXL ★★★★★
()
Ответ на: комментарий от rukez

Вот честно, чего-то ты перезаморачиваешься.

Один докер файл и сборка под целевой amd64 и arm64 без каких-либо проблем: и на макоси м1, и на убунте amd64.

Просто если ты ещё и едешь в глушь, то я бы с собой взял нормальное человеческое железо в виде мощного ноута на core i7 на линуксе, это всё таки надежно в отличие от капризного рассыпающегося мака.

max_lapshin ★★★★★
()