KREMEN Реклама
KREMEN Реклама

Сборка прошивки Marlin под Linux

dallas9
Идет загрузка
Загрузка
15.02.2021
3374
7
Личные дневники

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.

Отписаться от уведомлений вы всегда сможете в профиле автора.

2

Навеяло этой статьей https://3dtoday.ru/blogs/lyxstv/sborka-prosivki-marlin-2-dlya-skr-13-pod-linuksom

Docker для такой простой процедуры не нужен чуть более, чем совсем, а загаживание системы лишними файлами можно предотвратить другими методами.

на Linux (на примере последней Ubuntu 20.10) нужно установить 2 пакета:

sudo apt install python3-pip python3-virtualenv

python в системе уже наверняка стоит. в других дистрибутивах Linux названия пакетов могут быть другие, нам нужны утилиты питона pip и virtualenv. версия python нужна не менее 3.6.

далее делаем простенький скриптик marlin_build.sh в каталоге с распакованным Marlin (рядом должен быть марлиновский файл platformio.ini) :

#!/bin/sh

#

# add in platformio.ini:

#

# [platformio]

# core_dir       = pio-env/platformio

#

virtualenv pio-env

pio-env/bin/pip install platformio

pio-env/bin/pio run

иногда бывает, что в системе много питонов, тогда придется virtualenv добавить ключик -p:

 -p PYTHON_EXE, --python=PYTHON_EXE

                         The Python interpreter to use, e.g.,

                           --python=python3.5 will use the python3.5 interpreter

                         to create the new environment. The default is the

                         interpreter that virtualenv was installed with

в марлиновский platformio.ini в секцию [platformio] рекомендуется прописать строчку

core_dir = pio-env/platformio

без нее те компоненты, что скачает platformio, попадут в домашний каталог в ~/.pio, а с этой строчкой у нас все будет в одном месте и не будет пересекаться с другими версиями марлина для других принтеров

для SKR 1.3/1.4 секция в итоге будет выглядеть так:

[platformio]

src_dir = Marlin

boards_dir = buildroot/share/PlatformIO/boards

default_envs = LPC1768

include_dir = Marlin

core_dir = pio-env/platformio

делаем скрипт исполняемым:

chmod 755 marlin_build.sh

и запускаем:

./marlin_build.sh

если все сделано правильно, на выходе собранный Marlin

вобщем-то это работает и с другими *nix, но для той же FreeBSD нет нужных компонентов platformio для сборки, поэтому собирать придется под линуксолятором.на десерт аналогичный батник для винды, нужен установленный и вписанный в PATH питон, pip ставится вместе с ним:

@echo off

rem

rem add in platformio.ini:

rem

rem [platformio]

rem core_dir = pio-env/platformio

rem

pip install virtualenv

virtualenv pio-env

pio-env\Scripts\pip install platformio

pio-env\Scripts\pio run

pause

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.

Отписаться от уведомлений вы всегда сможете в профиле автора.

2
Комментарии к статье
Lider 3D Реклама
Lider 3D Реклама