Здравствуйте, zx zpectrum, Вы писали:
ЕМ>>При том, что в винде принципиально нет понятия "сборка под родную систему". В ней всегда была и есть "просто сборка". Что под свою систему, что под чужую, что под линукс, что под МК — результат определяется исключительно набором и настройкой используемых средств. ZZ>Это всё красивые концептуальные речи. А теперь пара вопросов из грязной приземлённой практики: ZZ>1. Компилятор msvc с хост-архитектурой x86_64-windows сумеет выдать статическую или динамическую библиотеку с target–архитектурой arm–linux, которую потом успешно всосёт gcc или clang под целевой ОС?
MSVC — это убогое недоразумение. Я его держал у себя исключительно для целей сравнения. А так, все сборки для видны были или с помощью gcc (mingw) или clang'a, которые просто на голову лучше (правда каждый по своему). Ну и есть конечно ещё icc, но это отдельная тема для тех, кому критичен каждый такт и платформа только Intel Х86.
ZZ>2. Какая-нибудь роутерная прошивка OpenWRT потребует под виндой менее забористых и более прямых build–скриптов по сравнению со сборкой оной под линуксом?
OpenWRT — это как раз классический Linux дистрибутив и как все они является самой проблемной целевой платформой для кросс-компиляции. Я подробном писал об этом выше.
ZZ>По-моему Вы просто основываете свои утверждения на маргинальных примерах сборки под MK, то есть под bare metal target. В этом случае все телодвижения действительно на порядок проще оных при сборке именно под чужую ОС.
А скажем сборка под Android (если что, это в данный момент самая массовая ОС на планете) надеюсь не является маргинальным примером? И там кстати тоже ядро Linux... Но при этом кросс-компиляция изначально идеально продумана и работает одинаково беспроблемно на любой хост-системе.