home.social

#crosscompilation — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #crosscompilation, aggregated by home.social.

  1. Строим свой остров: как создать минимальный Linux для Raspberry Pi

    Ещё три года назад меня просили рассказать, как собрать минимальный Linux для Raspberry Pi, — и сейчас я выполняю эту просьбу. Несмотря на то, что первоначальной целью Raspberry Pi было создание дешёвого устройства для обучения базовым навыкам программирования, информации о том как, создать минимальный Linux для Raspberry Pi в интернете немного. Я хочу восполнить этот пробел для желающих начать погружение в embedded-разработку. Linux для встраиваемых систем, включая Raspberry Pi, и Linux для PC имеют ряд различий. Различия касаются используемых загрузчиков, платформо-зависимого кода ядра, файловых систем и прочего. Для встраиваемых систем большое значение имеет Board Support Package (BSP), который обычно сопровождает различные системы на кристалле (System on Chip — SoC) или одноплатные компьютеры (Single Board Computer — SBC). Чтобы сделать статью интереснее и полезнее, я рассмотрю создание Linux для Raspberry Pi 3 и для Raspberry Pi 4 и укажу на различие этих одноплатных компьютеров в контексте загрузки и сборки ядра Linux. Также мы соберём и запустим downstream и upstream Linux-ядра для Raspberry Pi. Под Raspberry Pi 3 и Raspberry Pi 4 подразумеваются модели Raspberry Pi 3 Model B и Raspberry Pi 4 Model B соответственно. А обе модели называются в статье Raspberry Pi. Как и в моей прошлой статье по сборке Linux для PC собирать мы будем без использования Buildroot или Yocto Project , только сделаем его более практичным, так как он будет поддерживать работу с SD-картой. Такие сборки минимального Linux без Buildroot и Yocto Project мне чем-то напоминают высадку на необитаемый остров, где вы вынуждены минимальным набором инструментов благоустраивать свою жизнь. Да, вашей жизни ничего не угрожает, но определённая закалка в виде полученных базовых знаний остаётся. Поэтому системе Linux, создаваемой в статье, я дал кодовое название Robinson Linux. Я надеюсь, что после прочтения статьи вам будет гораздо проще собрать Linux для другого одноплатного компьютера, например, Orange Pi. Кому интересно погрузиться в embedded-разработку, добро пожаловать под кат.

    habr.com/ru/companies/ruvds/ar

    #linux #embedded_linux #raspberry_pi #linux_kernel #crosscompilation #devicetree #bootloader #uart #arm #статьи_ruvds

  2. Строим свой остров: как создать минимальный Linux для Raspberry Pi

    Ещё три года назад меня просили рассказать, как собрать минимальный Linux для Raspberry Pi, — и сейчас я выполняю эту просьбу. Несмотря на то, что первоначальной целью Raspberry Pi было создание дешёвого устройства для обучения базовым навыкам программирования, информации о том как, создать минимальный Linux для Raspberry Pi в интернете немного. Я хочу восполнить этот пробел для желающих начать погружение в embedded-разработку. Linux для встраиваемых систем, включая Raspberry Pi, и Linux для PC имеют ряд различий. Различия касаются используемых загрузчиков, платформо-зависимого кода ядра, файловых систем и прочего. Для встраиваемых систем большое значение имеет Board Support Package (BSP), который обычно сопровождает различные системы на кристалле (System on Chip — SoC) или одноплатные компьютеры (Single Board Computer — SBC). Чтобы сделать статью интереснее и полезнее, я рассмотрю создание Linux для Raspberry Pi 3 и для Raspberry Pi 4 и укажу на различие этих одноплатных компьютеров в контексте загрузки и сборки ядра Linux. Также мы соберём и запустим downstream и upstream Linux-ядра для Raspberry Pi. Под Raspberry Pi 3 и Raspberry Pi 4 подразумеваются модели Raspberry Pi 3 Model B и Raspberry Pi 4 Model B соответственно. А обе модели называются в статье Raspberry Pi. Как и в моей прошлой статье по сборке Linux для PC собирать мы будем без использования Buildroot или Yocto Project , только сделаем его более практичным, так как он будет поддерживать работу с SD-картой. Такие сборки минимального Linux без Buildroot и Yocto Project мне чем-то напоминают высадку на необитаемый остров, где вы вынуждены минимальным набором инструментов благоустраивать свою жизнь. Да, вашей жизни ничего не угрожает, но определённая закалка в виде полученных базовых знаний остаётся. Поэтому системе Linux, создаваемой в статье, я дал кодовое название Robinson Linux. Я надеюсь, что после прочтения статьи вам будет гораздо проще собрать Linux для другого одноплатного компьютера, например, Orange Pi. Кому интересно погрузиться в embedded-разработку, добро пожаловать под кат.

    habr.com/ru/companies/ruvds/ar

    #linux #embedded_linux #raspberry_pi #linux_kernel #crosscompilation #devicetree #bootloader #uart #arm #статьи_ruvds

  3. Строим свой остров: как создать минимальный Linux для Raspberry Pi

    Ещё три года назад меня просили рассказать, как собрать минимальный Linux для Raspberry Pi, — и сейчас я выполняю эту просьбу. Несмотря на то, что первоначальной целью Raspberry Pi было создание дешёвого устройства для обучения базовым навыкам программирования, информации о том как, создать минимальный Linux для Raspberry Pi в интернете немного. Я хочу восполнить этот пробел для желающих начать погружение в embedded-разработку. Linux для встраиваемых систем, включая Raspberry Pi, и Linux для PC имеют ряд различий. Различия касаются используемых загрузчиков, платформо-зависимого кода ядра, файловых систем и прочего. Для встраиваемых систем большое значение имеет Board Support Package (BSP), который обычно сопровождает различные системы на кристалле (System on Chip — SoC) или одноплатные компьютеры (Single Board Computer — SBC). Чтобы сделать статью интереснее и полезнее, я рассмотрю создание Linux для Raspberry Pi 3 и для Raspberry Pi 4 и укажу на различие этих одноплатных компьютеров в контексте загрузки и сборки ядра Linux. Также мы соберём и запустим downstream и upstream Linux-ядра для Raspberry Pi. Под Raspberry Pi 3 и Raspberry Pi 4 подразумеваются модели Raspberry Pi 3 Model B и Raspberry Pi 4 Model B соответственно. А обе модели называются в статье Raspberry Pi. Как и в моей прошлой статье по сборке Linux для PC собирать мы будем без использования Buildroot или Yocto Project , только сделаем его более практичным, так как он будет поддерживать работу с SD-картой. Такие сборки минимального Linux без Buildroot и Yocto Project мне чем-то напоминают высадку на необитаемый остров, где вы вынуждены минимальным набором инструментов благоустраивать свою жизнь. Да, вашей жизни ничего не угрожает, но определённая закалка в виде полученных базовых знаний остаётся. Поэтому системе Linux, создаваемой в статье, я дал кодовое название Robinson Linux. Я надеюсь, что после прочтения статьи вам будет гораздо проще собрать Linux для другого одноплатного компьютера, например, Orange Pi. Кому интересно погрузиться в embedded-разработку, добро пожаловать под кат.

    habr.com/ru/companies/ruvds/ar

    #linux #embedded_linux #raspberry_pi #linux_kernel #crosscompilation #devicetree #bootloader #uart #arm #статьи_ruvds

  4. Getting started with a cool new project: building my own minimalist Linux OS for x86_64 using Buildroot! 🛠️

    Just finished the full cross-compilation with the pc_x86_64_bios_defconfig. The resulting tiny system is up and running in QEMU.

    Excited to spend the next few days exploring Buildroot's potential, from custom kernels to package management. Time to dig into the embedded world! 🚀

    #Buildroot #Linux #EmbeddedSystems #QEMU #CrossCompilation #OSDev #VirtIO #OpenSource

  5. Getting started with a cool new project: building my own minimalist Linux OS for x86_64 using Buildroot! 🛠️

    Just finished the full cross-compilation with the pc_x86_64_bios_defconfig. The resulting tiny system is up and running in QEMU.

    Excited to spend the next few days exploring Buildroot's potential, from custom kernels to package management. Time to dig into the embedded world! 🚀

    #Buildroot #Linux #EmbeddedSystems #QEMU #CrossCompilation #OSDev #VirtIO #OpenSource

  6. Getting started with a cool new project: building my own minimalist Linux OS for x86_64 using Buildroot! 🛠️

    Just finished the full cross-compilation with the pc_x86_64_bios_defconfig. The resulting tiny system is up and running in QEMU.

    Excited to spend the next few days exploring Buildroot's potential, from custom kernels to package management. Time to dig into the embedded world! 🚀

    #Buildroot #Linux #EmbeddedSystems #QEMU #CrossCompilation #OSDev #VirtIO #OpenSource

  7. Getting started with a cool new project: building my own minimalist Linux OS for x86_64 using Buildroot! 🛠️

    Just finished the full cross-compilation with the pc_x86_64_bios_defconfig. The resulting tiny system is up and running in QEMU.

    Excited to spend the next few days exploring Buildroot's potential, from custom kernels to package management. Time to dig into the embedded world! 🚀

    #Buildroot #Linux #EmbeddedSystems #QEMU #CrossCompilation #OSDev #VirtIO #OpenSource

  8. Getting started with a cool new project: building my own minimalist Linux OS for x86_64 using Buildroot! 🛠️

    Just finished the full cross-compilation with the pc_x86_64_bios_defconfig. The resulting tiny system is up and running in QEMU.

    Excited to spend the next few days exploring Buildroot's potential, from custom kernels to package management. Time to dig into the embedded world! 🚀

    #Buildroot #Linux #EmbeddedSystems #QEMU #CrossCompilation #OSDev #VirtIO #OpenSource

  9. I've found out the reason for the error:

    error: could not find native static library `ggml`, perhaps an -L flag is missing?

    Apparently, when cross-compiling, it can sometimes happen (especially with Windows target) that the compiler searches for "lib*" as prefix in the file name.

    So when renaming compiled `ggml` to `libggml`, the error disappeared.

    Unfortunately, I still get a linker error, but I don't bother anymore (direct Windows compile in CI works now)

    #CrossCompilation #CrossCompiling

  10. [Перевод] Dart 3.8 — что нового в Dart?

    Этот релиз приносит обновления форматера, null-aware элементы для коллекций, новые возможности кросс-платформенной разработки, лучший способ находить трендовые пакеты на pub.dev , доступность горячей перезагрузки (hot reload) для веба и многое другое! Мы также надеемся, что найдутся разработчики, заинтересованные в участии в нашей программе раннего доступа к FFigen и JNIgen .

    habr.com/ru/articles/912544/

    #dart #flutter #ffi #crosscompilation #Nullaware #formatter

  11. [Перевод] Dart 3.8 — что нового в Dart?

    Этот релиз приносит обновления форматера, null-aware элементы для коллекций, новые возможности кросс-платформенной разработки, лучший способ находить трендовые пакеты на pub.dev , доступность горячей перезагрузки (hot reload) для веба и многое другое! Мы также надеемся, что найдутся разработчики, заинтересованные в участии в нашей программе раннего доступа к FFigen и JNIgen .

    habr.com/ru/articles/912544/

    #dart #flutter #ffi #crosscompilation #Nullaware #formatter

  12. [Перевод] Dart 3.8 — что нового в Dart?

    Этот релиз приносит обновления форматера, null-aware элементы для коллекций, новые возможности кросс-платформенной разработки, лучший способ находить трендовые пакеты на pub.dev , доступность горячей перезагрузки (hot reload) для веба и многое другое! Мы также надеемся, что найдутся разработчики, заинтересованные в участии в нашей программе раннего доступа к FFigen и JNIgen .

    habr.com/ru/articles/912544/

    #dart #flutter #ffi #crosscompilation #Nullaware #formatter

  13. [Перевод] Dart 3.8 — что нового в Dart?

    Этот релиз приносит обновления форматера, null-aware элементы для коллекций, новые возможности кросс-платформенной разработки, лучший способ находить трендовые пакеты на pub.dev , доступность горячей перезагрузки (hot reload) для веба и многое другое! Мы также надеемся, что найдутся разработчики, заинтересованные в участии в нашей программе раннего доступа к FFigen и JNIgen .

    habr.com/ru/articles/912544/

    #dart #flutter #ffi #crosscompilation #Nullaware #formatter

  14. #CrossCompilation via binfmt.emulatedSystems on #nix #nixos kinda sucks. I mean yeah, it is great that it's easy and the speed is OK when it can just download the results from the caches. But actually building packages takes forever no matter how fast the machine is.

    I guess I'm somewhat spoiled by using #Yocto #OpenEmbedded professionally, for which real #CrossCompilation just works.