ΠΡΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
Π ΡΠ°Π·ΠΈ ΠΏΠΎΡΠ΅Π΄ΠΈΡΠ° ΡΡΠ°ΡΠΈΠΈ ΠΈΡΠΊΠ°ΠΌ Π΄Π° ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΌ ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π·Π° ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ Π½Π° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡ buildroot ΠΈ Π΄Π° ΡΠΏΠΎΠ΄Π΅Π»Ρ ΠΎΠΏΠΈΡ Π² Π½Π΅ΠΉΠ½ΠΎΡΠΎ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅. Π’ΡΠΊ ΡΠ΅ Π±ΡΠ΄Π΅ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎ ΠΈΠ·ΠΆΠΈΠ²ΡΠ²Π°Π½Π΅ Π·Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΠΌΠ°Π»ΠΊΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ° Ρ Π³ΡΠ°ΡΠΈΡΠ΅Π½ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡ.
ΠΡΠ΅Π΄ΠΈ Π²ΡΠΈΡΠΊΠΎ, Π½Π΅ ΡΡΡΠ±Π²Π° Π΄Π° Π±ΡΡΠΊΠ°ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π·Π° ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ ΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡΡΠ°. Buildroot ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΡΠ·Π΄Π°Π΄Π΅ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΎΡ Π½Π°Π±ΠΎΡ ΠΎΡ ΠΏΠ°ΠΊΠ΅ΡΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ° ΠΌΡ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈ. Buildroot Π΅ ΠΏΠΎΡΡΡΠΎΠ΅Π½ Π½Π° make-ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΈ Π·Π°ΡΠΎΠ²Π° ΠΏΡΠ΅Π΄Π»Π°Π³Π° ΠΎΠ³ΡΠΎΠΌΠ½ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π·Π° ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·Π°ΡΠΈΡ. ΠΠ° Π·Π°ΠΌΠ΅Π½ΠΈΡΠ΅ ΠΏΠ°ΠΊΠ΅Ρ Ρ Π΄ΡΡΠ³Π° Π²Π΅ΡΡΠΈΡ, Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡΠ΅ ΡΠ²ΠΎΠΉ ΠΏΠ°ΠΊΠ΅Ρ, Π΄Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π°ΡΠ° Π·Π° ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠ°, Π΄Π° ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡΠ°ΡΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠ»Π΅Π΄ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° Π²ΡΠΈΡΠΊΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈ? ΠΡΠΈΡΠΊΠΎ ΡΠΎΠ²Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Ρ buildroot.
Π Π ΡΡΠΈΡ buildroot ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°, Π½ΠΎ ΡΠΏΠΎΡΠ΅Π΄ ΠΌΠ΅Π½ ΠΈΠΌΠ° ΠΌΠ°Π»ΠΊΠΎ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π½Π° ΡΡΡΠΊΠΈ Π΅Π·ΠΈΠΊ Π·Π° Π½Π°ΡΠΈΠ½Π°Π΅ΡΠΈ.
Π¦Π΅Π»ΡΠ° Π½Π° ΡΠ°Π±ΠΎΡΠ°ΡΠ° Π΅ Π΄Π° ΡΠ΅ ΡΡΠ·Π΄Π°Π΄Π΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡ Ρ live-ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅, ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ icewm ΠΈ Π±ΡΠ°ΡΠ·ΡΡ. Π¦Π΅Π»Π΅Π²Π°ΡΠ° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° Π΅ virtualbox.
ΠΠ°ΡΠΎ Π΄Π° ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°ΡΠ΅ ΡΠ²ΠΎΠΉ ΡΠΎΠ±ΡΡΠ²Π΅Π½ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡ? Π§Π΅ΡΡΠΎ Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡ ΠΏΡΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈ ΡΠ΅ΡΡΡΡΠΈ. ΠΡΠ΅ ΠΏΠΎ-ΡΠ΅ΡΡΠΎ Π² Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡΡΠ° ΡΠ΅ Π½Π°Π»Π°Π³Π° Π΄Π° ΡΠ΅ ΡΡΠ·Π΄Π°Π²Π°Ρ ΡΡΡΠΌΡΠ΅ΡΠΈ. ΠΡΠΈΡΠΏΠΎΡΠΎΠ±ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΎΠ±ΡΠ° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡ, ΠΏΡΠ΅ΠΌΠ°Ρ Π²Π°ΠΉΠΊΠΈ ΠΈΠ·Π»ΠΈΡΠ½ΠΈΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΈ ΠΈ ΠΏΡΠ΅Π²ΡΡΡΠ°ΠΉΠΊΠΈ Ρ Π²ΡΠ² ΡΡΡΠΌΡΠ΅Ρ, Π΅ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΏΠΎ-ΡΡΡΠ΄ΠΎΠ΅ΠΌΡΠΊ ΠΏΡΠΎΡΠ΅Ρ, ΠΎΡΠΊΠΎΠ»ΠΊΠΎΡΠΎ Π΄Π° ΡΠ΅ ΡΡΠ·Π΄Π°Π΄Π΅ Π½ΠΎΠ² Π΄ΠΈΡΡΡΠΈΠ±.
Buildroot Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠΎΡΠ½Π° ΡΠΈΡΡΠ΅ΠΌΠ°, Π½ΠΎ Π½ΡΠΌΠ° Π΄Π° ΡΠ²ΡΡΡΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΠ° Π²ΠΌΠ΅ΡΡΠΎ Π²Π°Ρ. Π’Ρ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½ΠΎ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ° ΠΏΡΠΎΡΠ΅ΡΠ° Π½Π° ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅.
ΠΠ»ΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΠΈΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΠΈ Π·Π° ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ (yocto, open build system ΠΈ Π΄ΡΡΠ³ΠΈ) Π½Π΅ ΡΠ΅ ΡΠ°Π·Π³Π»Π΅ΠΆΠ΄Π°Ρ ΠΈ Π½Π΅ ΡΠ΅ ΡΡΠ°Π²Π½ΡΠ²Π°Ρ.
ΠΡΠ΄Π΅ Π΄Π° Π½Π°ΠΌΠ΅ΡΠΈΡΠ΅ ΠΈ ΠΊΠ°ΠΊ Π΄Π° Π·Π°ΠΏΠΎΡΠ½Π΅ΡΠ΅
Π£Π΅Π±ΡΠ°ΠΉΡ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° β . Π’ΡΠΊ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·ΡΠ΅Π³Π»ΠΈΡΠ΅ Π°ΠΊΡΡΠ°Π»Π½Π°ΡΠ° Π²Π΅ΡΡΠΈΡ ΠΈ Π΄Π° ΠΏΡΠΎΡΠ΅ΡΠ΅ΡΠ΅ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎΡΠΎ. Π’Π°ΠΌ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΡΠΎ Π΄Π° ΡΠ΅ ΡΠ²ΡΡΠΆΠ΅ΡΠ΅ Ρ ΠΎΠ±ΡΠ½ΠΎΡΡΡΠ°, ΠΈΠΌΠ° Π±Π°Π³ΡΡΠ΅ΠΉΠΊΡΡ, ΠΏΠΎΡΠ΅Π½ΡΠΊΠΈ ΡΠΏΠΈΡΡΡΠΈ ΠΈ IRC-ΠΊΠ°Π½Π°Π».
Buildroot ΡΠ°Π±ΠΎΡΠΈ Ρ defconfig ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π·Π° ΡΠ΅Π»Π΅Π²Π°ΡΠ° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° Π·Π° ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅. Defconfig Π΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π΅Π½ ΡΠ°ΠΉΠ», ΠΊΠΎΠΉΡΠΎ ΡΡΠ΄ΡΡΠΆΠ° ΡΠ°ΠΌΠΎ ΠΎΠΏΡΠΈΠΈΡΠ΅, ΠΊΠΎΠΈΡΠΎ Π½ΡΠΌΠ°Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅. Π’ΠΎΠΉ Π΄Π΅ΡΠΈΠ½ΠΈΡΠ° ΠΊΠ°ΠΊΠ²ΠΎ ΠΈ ΠΊΠ°ΠΊ ΡΠ΅ Π±ΡΠ΄Π΅ ΠΈΠ·Π³ΡΠ°Π΄Π΅Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ°. ΠΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠ΄Π΅Π»Π½ΠΎ Π΄Π° Π½Π°ΡΡΡΠΎΠΈΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈΡΠ΅ Π·Π° busybox, linux-kernel, uglibc, bootloaders u-boot ΠΈ barebox, Π½ΠΎ Π²ΡΠΈΡΠΊΠΈΡΠ΅ ΡΠ΅ ΡΠ΅ Π±ΡΠ΄Π°Ρ ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ ΡΠ΅Π»Π΅Π²Π°ΡΠ° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°.
Π‘Π»Π΅Π΄ ΡΠ°Π·Π°ΡΡ
ΠΈΠ²ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΈΠ·ΡΠ΅Π³Π»Π΅Π½ΠΈΡ Π°ΡΡ
ΠΈΠ² ΠΈΠ»ΠΈ ΠΊΠ»ΠΎΠ½ΠΈΡΠ°Π½Π΅ΡΠΎ ΠΎΡ git ΠΏΠΎΠ»ΡΡΠ°Π²Π°ΠΌΠ΅ Π³ΠΎΡΠΎΠ² Π·Π° ΡΠ°Π±ΠΎΡΠ° buildroot. ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎ Π·Π° ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° Π½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈΡΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΡΠΎΡΠ΅ΡΠ΅ΡΠ΅ Π² ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎΡΠΎ, ΡΠ΅ ΡΠΏΠΎΠΌΠ΅Π½Π° ΡΠ°ΠΌΠΎ Π½Π°ΠΉ-Π²Π°ΠΆΠ½ΠΈΡΠ΅:
board β ΠΊΠ°ΡΠ°Π»ΠΎΠ³ Ρ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅, ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΈ Π·Π° Π²ΡΡΠΊΠ° ΠΏΠ»Π°ΡΠΊΠ°. Π’ΠΎΠ²Π° ΠΌΠΎΠ³Π°Ρ Π΄Π° Π±ΡΠ΄Π°Ρ ΡΠΊΡΠΈΠΏΡΠΎΠ²Π΅ Π·Π° Π³Π΅Π½Π΅ΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΈΠΌΠΈΠ΄ΠΆΠΈ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° (iso, sdcart, cpio ΠΈ Π΄ΡΡΠ³ΠΈ), ΠΊΠ°ΡΠ°Π»ΠΎΠ³ overlay, ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Π½Π° ΡΠ΄ΡΠ° ΠΈ Π΄ΡΡΠ³ΠΈ
configs β ΡΠΎΠ±ΡΡΠ²Π΅Π½ΠΎ defconfig Π½Π° ΠΏΠ»Π°ΡΠΊΠ°ΡΠ°. Defconfig β ΡΠΎΠ²Π° Π΅ Π½Π΅ΠΏΡΠ»Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Π½Π° ΠΏΠ»Π°ΡΠΊΠ°ΡΠ°. Π Π½Π΅Π³ΠΎ ΡΠ΅ ΡΡΡ
ΡΠ°Π½ΡΠ²Π°Ρ ΡΠ°ΠΌΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅, ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΎΡ Π΄Π΅ΡΠΎΠ»ΡΠ½ΠΈΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ
dl β ΠΊΠ°ΡΠ°Π»ΠΎΠ³ ΡΡΡ ΡΠ²Π°Π»Π΅Π½ΠΈ ΠΈΠ·Ρ
ΠΎΠ΄Π½ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅/ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡ
output/target β ΡΡΠ±ΡΠ°Π½Π°ΡΠ° ΡΠ°ΠΉΠ»ΠΎΠ²Π° ΡΠΈΡΡΠ΅ΠΌΠ° Π½Π° ΠΏΠΎΠ»ΡΡΠ΅Π½Π°ΡΠ° ΠΠ‘. ΠΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠ΅ ΠΎΡ Π½Π΅Ρ ΡΠ΅ ΡΡΠ·Π΄Π°Π²Π°Ρ ΠΈΠΌΠΈΠ΄ΠΆΠΈ Π·Π° Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅/ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½Π΅
output/host β host-ΡΡΠΈΠ»ΠΈΡΠΈ Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡ
output/build β ΡΡΠ±ΡΠ°Π½ΠΈΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΈ
ΠΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡΡΠ° ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π° ΡΡΠ΅Π· KConfig. Π’Π°Π·ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΡΡΡΠΎ Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡ Π½Π° ΡΠ΄ΡΠΎΡΠΎ Π½Π° linux. Π‘ΠΏΠΈΡΡΠΊ Π½Π° Π½Π°ΠΉ-ΡΠ΅ΡΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ (ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π°ΠΉΡΠ΅ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° buildroot):
- make menuconfig β Π΄Π° ΠΈΠ·Π²ΠΈΠΊΠ°ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΡΠ° Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡΡΠ°. ΠΠΎΠΆΠ΅ΡΠ΅ ΡΡΡΠΎ ΡΠ°ΠΊΠ° Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ Π³ΡΠ°ΡΠΈΡΠ΅Π½ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ (make nconfig, make xconfig, make gconfig)
- make linux-menuconfig β Π΄Π° ΠΈΠ·Π²ΠΈΠΊΠ°ΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° Π½Π° ΡΠ΄ΡΠΎΡΠΎ.
- make clean β Π΄Π° ΠΈΠ·ΡΠΈΡΡΠΈΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈΡΠ΅ ΠΎΡ ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡΡΠ° (Π²ΡΠΈΡΠΊΠΎ, ΠΊΠΎΠ΅ΡΠΎ ΡΠ΅ ΡΡΡ ΡΠ°Π½ΡΠ²Π° Π² output)
- make β Π΄Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ°. ΠΡΠΈ ΡΠΎΠ²Π° Π½Π΅ ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π° ΠΏΠΎΠ²ΡΠΎΡΠ½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡ Π½Π° Π²Π΅ΡΠ΅ ΡΡΠ±ΡΠ°Π½ΠΈΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΠΈ
- make defconfig_name β Π΄Π° ΠΏΡΠ΅Π²ΠΊΠ»ΡΡΠΈΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ defconfig
- make list-defconfigs β Π΄Π° ΠΏΠΎΠΊΠ°ΠΆΠ΅ΡΠ΅ ΡΠΏΠΈΡΡΠΊΠ° Π½Π° defconfig-ΠΈΡΠ΅
- make source β ΡΠ°ΠΌΠΎ Π΄Π° ΡΠ²Π°Π»ΠΈΡΠ΅ ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΠΎΠ½Π½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅, Π±Π΅Π· ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡ.
- make help β Π΄Π° ΠΈΠ·Π²Π΅Π΄Π΅ΡΠ΅ ΡΠΏΠΈΡΡΠΊ Π½Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ
ΠΠ°ΠΆΠ½ΠΎ Π΄Π° ΡΠ΅ ΠΎΡΠ±Π΅Π»Π΅ΠΆΠΈ ΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΠΈ ΡΡΠ²Π΅ΡΠΈ
Buildroot Π½Π΅ ΠΏΡΠ΅-ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ° Π²Π΅ΡΠ΅ ΡΡΠ±ΡΠ°Π½ΠΈΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΈ! Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° Π²ΡΠ·Π½ΠΈΠΊΠ½Π΅ ΡΠΈΡΡΠ°ΡΠΈΡ, Π² ΠΊΠΎΡΡΠΎ Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠ° ΠΏΡΠ»Π½Π° ΠΏΡΠ΅-ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡ.
ΠΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΡΠ΅-ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°ΡΠ΅ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ΅Π½ ΠΏΠ°ΠΊΠ΅Ρ Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° make packagename-rebuild. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΡΠ΅-ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°ΡΠ΅ ΡΠ΄ΡΠΎΡΠΎ Π½Π° linux:
make linux-rebuildBuildroot ΡΡΡ ΡΠ°Π½ΡΠ²Π° ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ΡΠΎ Π½Π° Π²ΡΠ΅ΠΊΠΈ ΠΏΠ°ΠΊΠ΅Ρ, ΡΡΠ·Π΄Π°Π²Π°ΠΉΠΊΠΈ .stamp-ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° output/build/$packagename:

Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΡΠ΅-ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°ΡΠ΅ root-fs ΠΈ ΠΈΠΌΠΈΠ΄ΠΆΠΈΡΠ΅ Π±Π΅Π· ΠΏΡΠ΅-ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅:
rm output/build/host-gcc-final-*/*.stamp_host_installed; rm -rf output/target; find output/ -name ".stamp_target_installed" | xargs rm -rf; makeΠΠΎΠ»Π΅Π·Π½ΠΈ ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ
Π buildroot ΠΈΠΌΠ° Π½Π°Π±ΠΎΡ ΠΎΡ ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ Π·Π° ΡΠ΄ΠΎΠ±Π½ΠΎ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½Π΅
- $TOPDIR β ΠΊΠΎΡΠ΅Π½Π΅Π½ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ Π½Π° buildroot
- $BASEDIR β ΠΊΠ°ΡΠ°Π»ΠΎΠ³ OUTPUT
- $HOST_DIR, $STAGING_DIR, $TARGET_DIR β ΠΊΠ°ΡΠ°Π»ΠΎΠ·ΠΈ Π½Π° Ρ ΠΎΡΡ fs, staging fs, target fs.
- $BUILD_DIR β ΠΊΠ°ΡΠ°Π»ΠΎΠ³ Ρ ΡΠ°Π·ΠΏΠ°ΠΊΠΎΠ²Π°Π½ΠΈ ΠΈ ΡΡΠ±ΡΠ°Π½ΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈ
ΠΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ
Π buildroot ΠΈΠΌΠ° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ. ΠΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·Π³ΡΠ°Π΄ΠΈΡΠ΅ ΡΡ Π΅ΠΌΠ° Π½Π° Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ, Π³ΡΠ°ΡΠΈΠΊ Π½Π° Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡ, Π³ΡΠ°ΡΠΈΠΊ Π½Π° ΡΠ°Π·ΠΌΠ΅ΡΠ° Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅ Π² ΠΊΡΠ°ΠΉΠ½ΠΈΡ ΠΏΡΠΎΠ΄ΡΠΊΡ. Π Π΅Π·ΡΠ»ΡΠ°ΡΠΈΡΠ΅ Π² PDF ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ (ΠΏΠΎ ΠΈΠ·Π±ΠΎΡ: svn, png) Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° output/graph.
ΠΡΠΈΠΌΠ΅ΡΠΈ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ Π·Π° Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ:
make graph-dependsΠΏΠΎΡΡΡΠΎΠΈΡΠ΅ Π΄ΡΡΠ²ΠΎ Π½Π° Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈΡΠ΅make -graph-dependsΠΏΠΎΡΡΡΠΎΠΈΡΠ΅ Π΄ΡΡΠ²ΠΎ Π½Π° Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈΡΠ΅ Π·Π° ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ΅Π½ ΠΏΠ°ΠΊΠ΅ΡBR2_GRAPH_OUT=png make graph-buildΠΏΠΎΡΡΡΠΎΠΈΡΠ΅ Π³ΡΠ°ΡΠΈΠΊ Π½Π° Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡ Ρ ΠΈΠ·Ρ ΠΎΠ΄ Π² PNGmake graph-sizeΠΏΠΎΡΡΡΠΎΠΈΡΠ΅ Π³ΡΠ°ΡΠΈΠΊ Π½Π° ΡΠ°Π·ΠΌΠ΅ΡΠ° Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅
ΠΠΎΠ»Π΅Π·Π½ΠΈ ΡΠΊΡΠΈΠΏΡΠΎΠ²Π΅
Π ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° buildroot ΠΈΠΌΠ° ΠΏΠΎΠ΄ΠΊΠ°ΡΠ°Π»ΠΎΠ³ utils Ρ ΠΏΠΎΠ»Π΅Π·Π½ΠΈ ΡΠΊΡΠΈΠΏΡΠΎΠ²Π΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ°ΠΌ ΠΈΠΌΠ° ΡΠΊΡΠΈΠΏΡ, ΠΊΠΎΠΉΡΠΎ ΠΏΡΠΎΠ²Π΅ΡΡΠ²Π° ΠΊΠΎΡΠ΅ΠΊΡΠ½ΠΎΡΡΡΠ° Π½Π° ΠΎΠΏΠΈΡΠ°Π½ΠΈΡΡΠ° Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅. Π’ΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ Π΄Π° Π΅ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΏΡΠΈ Π΄ΠΎΠ±Π°Π²ΡΠ½Π΅ΡΠΎ Π½Π° Π²Π°ΡΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈ (ΡΠ΅ Π³ΠΎ Π½Π°ΠΏΡΠ°Π²Ρ ΠΏΠΎ-ΠΊΡΡΠ½ΠΎ). Π ΡΠ°ΠΉΠ»Π° utils/readme.txt ΠΈΠΌΠ° ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π½Π° ΡΠ΅Π·ΠΈ ΡΠΊΡΠΈΠΏΡΠΎΠ²Π΅.
ΠΠ΅ΠΊΠ° ΡΡΠ±Π΅ΡΠ΅ΠΌ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΈΡ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²
ΠΠ°ΠΆΠ½ΠΎ Π΅ Π΄Π° ΡΠ΅ ΠΏΡΠΈΠΏΠΎΠΌΠ½ΠΈ, ΡΠ΅ Π²ΡΠΈΡΠΊΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π°Ρ ΠΎΡ ΠΈΠΌΠ΅ΡΠΎ Π½Π° ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π», Π° Π½Π΅ root.
ΠΡΠΈΡΠΊΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ ΡΠ΅ ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π°Ρ Π² ΠΊΠΎΡΠ΅Π½Π° Π½Π° buildroot. Π Π΄ΠΎΡΡΠ°Π²ΠΊΠ°ΡΠ° Π½Π° buildroot Π²Π΅ΡΠ΅ ΠΈΠΌΠ° Π½Π°Π±ΠΎΡ ΠΎΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π·Π° ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈ ΠΏΠ»Π°ΡΠΊΠΈ ΠΈ Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ.
ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΠΌΠ΅ ΡΠΏΠΈΡΡΠΊ Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ:

ΠΡΠ΅Π²ΠΊΠ»ΡΡΠ²Π°ΠΌΠ΅ ΡΠ΅ Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ qemu_x86_64_defconfig
make qemu_x86_64_defconfigΠ ΡΡΠ°ΡΡΠΈΡΠ°ΠΌΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡΡΠ°
, Π·Π°ΡΠΎΠ²Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈΡΠ΅ Π½Π° Windows ΡΡΡΠ±Π²Π° Π΄Π° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Ρ Cygwin ΠΈΠ»ΠΈ Π΄Π° ΡΠ΅ ΡΠΏΡΠ°Π²ΡΡ ΡΠ°ΠΌΠΈ Ρ Visual Studio ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈΡΠ΅.ΠΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡΡΠ° Π·Π°Π²ΡΡΡΠ²Π° ΡΡΠΏΠ΅ΡΠ½ΠΎ, Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈΡΠ΅:
![]()
Buildroot ΡΡΠ±ΡΠ° ΠΎΠ±ΡΠ°Π·ΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΡΡΠ°ΡΡΠΈΡΠ°Ρ Π² Qemu, Π·Π° Π΄Π° ΡΠ΅ ΡΠ²Π΅ΡΠΈΡΠ΅, ΡΠ΅ ΡΠ°Π±ΠΎΡΡΡ.
qemu-system-x86_64 -kernel output/images/bzImage -hda output/images/rootfs.ext2 -append "root=/dev/sda rw" -s -SΠ Π΅Π·ΡΠ»ΡΠ°ΡΡΡ β ΡΠΈΡΡΠ΅ΠΌΠ°, ΡΡΠ°ΡΡΠΈΡΠ°Π½Π° Π² qemu:

Π‘ΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Π·Π° ΡΠΎΠ±ΡΡΠ²Π΅Π½Π° ΠΏΠ»Π°ΡΠΊΠ°
ΠΠΎΠ±Π°Π²ΡΠ½Π΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π·Π° ΠΏΠ»Π°ΡΠΊΠ°ΡΠ°
ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΠΌΠ΅ ΡΠΏΠΈΡΡΠΊ Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ:

Π ΡΠΏΠΈΡΡΠΊΠ° Π²ΠΈΠΆΠ΄Π°ΠΌΠ΅ pc_x86_64_efi_defconfig. Π©Π΅ ΡΡΠ·Π΄Π°Π΄Π΅ΠΌ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π° ΠΏΠ»Π°ΡΠΊΠ°, ΠΊΠΎΠΏΠΈΡΠ°ΠΉΠΊΠΈ Ρ ΠΎΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ°:
cp configs/pc_x86_64_bios_defconfig configs/my_x86_board_defconfigΠΠ΅ΠΊΠ° Π²Π΅Π΄Π½Π°Π³Π° ΡΡΠ·Π΄Π°Π΄Π΅ΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ Π·Π° ΠΏΠ»Π°ΡΠΊΠ°ΡΠ°, Π·Π° Π΄Π° ΡΡΡ ΡΠ°Π½ΠΈΠΌ Π½Π°ΡΠΈΡΠ΅ ΡΠΊΡΠΈΠΏΡΠΎΠ²Π΅, rootfs-overlay ΠΈ Π΄ΡΡΠ³ΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅:
mkdir board/my_x86_boardΠΡΠ΅Π²ΠΊΠ»ΡΡΠ²Π°ΠΌΠ΅ ΡΠ΅ Π½Π° ΡΠΎΠ·ΠΈ defconfig:
make my_x86_board_defconfigΠΠΎ ΡΠΎΠ·ΠΈ Π½Π°ΡΠΈΠ½ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡΡΠ° (ΠΊΠΎΠ΅ΡΠΎ ΡΠ΅ ΡΡΡ ΡΠ°Π½ΡΠ²Π° Π² .config Π² ΠΊΠΎΡΠ΅Π½Π° Π½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΡΠ° buildroot) ΡΠ΅Π³Π° ΡΡΠΎΡΠ²Π΅ΡΡΡΠ²Π° Π½Π° ΡΠ΅Π»Π΅Π²Π°ΡΠ° ΠΌΠ°ΡΠΈΠ½Π° x86-64 legacy(bios) ΡΡΠ°ΡΡ.
ΠΠ΅ΠΊΠ° ΠΊΠΎΠΏΠΈΡΠ°ΠΌΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° Π½Π° linux-kernel (ΡΠ΅ Π΅ ΠΏΠΎΠ»Π΅Π·Π½Π° ΠΏΠΎ-ΠΊΡΡΠ½ΠΎ):
cp board/pc/linux.config board/my_x86_board/ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° Π½Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡΡΠ° ΡΡΠ΅Π· KConfig
Π‘ΡΠ°ΡΡΠΈΡΠ°ΠΌΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΡΠ°:
make menuconfig Π©Π΅ ΡΠ΅ ΠΎΡΠ²ΠΎΡΠΈ ΠΏΡΠΎΠ·ΠΎΡΠ΅ΡΡΡ KConfig. ΠΠΌΠ° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½Π΅ Ρ Π³ΡΠ°ΡΠΈΡΠ΅Π½ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ (make nconfig, make xconfig, make gconfig):

ΠΠ»ΠΈΠ·Π°ΠΌΠ΅ Π² ΠΏΡΡΠ²ΠΈΡ ΡΠ°Π·Π΄Π΅Π» Target Options. Π’ΡΠΊ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·Π±Π΅ΡΠ΅ΡΠ΅ ΡΠ΅Π»Π΅Π²Π°ΡΠ° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°, Π·Π° ΠΊΠΎΡΡΠΎ ΡΠ΅ ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡΡΠ°.

Build options β ΡΡΠΊ ΠΈΠΌΠ° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡΡΠ°. ΠΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π·Π°Π΄Π°Π΄Π΅ΡΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ Π·Π° ΠΈΠ·Ρ ΠΎΠ΄Π½ΠΈΡ ΠΊΠΎΠ΄, Π±ΡΠΎΠΉ ΠΏΠΎΡΠΎΡΠΈ Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡ, ΠΎΠ³Π»Π΅Π΄Π°Π»Π° Π·Π° ΠΈΠ·ΡΠ΅Π³Π»ΡΠ½Π΅ Π½Π° ΠΈΠ·Ρ ΠΎΠ΄Π½ΠΈΡ ΠΊΠΎΠ΄ ΠΈ Π΄ΡΡΠ³ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ. ΠΠ΅ΠΊΠ° ΠΎΡΡΠ°Π²ΠΈΠΌ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈΡΠ΅ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅.
Toolchain β ΡΡΠΊ ΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ° ΡΠ°ΠΌΠΈΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Π½Π΅. ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ Π·Π° Π½Π΅Π³ΠΎ ΠΏΠΎ-ΠΊΡΡΠ½ΠΎ.

Π’ΠΈΠΏ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ΅ΠΏΠΎΡΠΊΠΈ β Π²ΠΈΠ΄ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠ³ΠΎ ΡΡΠ»ΡΠ΅ΠΉΠ½Π°. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΉ Π² buildroot ΠΈΠ»ΠΈ Π²Π½Π΅ΡΠ½ΠΈΠΉ ΡΡΠ»ΡΠ΅ΠΉΠ½ (ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ Ρ ΡΠΆΠ΅ ΡΠΎΠ±ΡΠ°Π½Π½ΡΠΌ ΠΈΠ»ΠΈ URL Π΄Π»Ρ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΡ). ΠΠ»Ρ ΡΠ°Π·Π½ΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡ Π΅ΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΎΠΏΡΠΈΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ arm ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ Π²ΡΠ±ΡΠ°ΡΡ Π²Π΅ΡΡΠΈΡ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΡΡΠ»ΡΠ΅ΠΉΠ½Π° Linaro.
C Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° β Π²ΡΠ±ΠΎΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π‘. ΠΡΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΠ°Π±ΠΎΡΡ Π²ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΡ. ΠΠ±ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ glibc, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΠ°Ρ Π²Π΅ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π». ΠΠΎ ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ ΠΎΠΊΠ°Π·Π°ΡΡΡΡ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΠΊΡΡΠΏΠ½ΠΎΠΉ Π΄Π»Ρ Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΏΠΎΡΡΠΎΠΌΡ ΡΠ°ΡΡΠΎ Π²ΡΠ±ΠΈΡΠ°ΡΡ uglibc ΠΈΠ»ΠΈ musl. ΠΡ Π²ΡΠ±Π΅ΡΠ΅ΠΌ glibc (Π² Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ ΡΡΠΎ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ systemd).
ΠΠ°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ ΡΠ΄ΡΠ° ΠΈ ΠΠ°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΡΠ΄ΡΠ° β Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ Ρ Π²Π΅ΡΡΠΈΠ΅ΠΉ ΡΠ΄ΡΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ Π² ΡΠΎΠ±ΠΈΡΠ°Π΅ΠΌΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅. ΠΠ»Ρ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² ΡΠ΄ΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΡΠΊΠ°Π·Π°ΡΡ ΠΏΡΡΡ ΠΊ ΡΠ°ΡΠ±ΠΎΠ»Ρ ΠΈΠ»ΠΈ git-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ.
ΠΠΠ Π‘ΠΠ COMPILER GCC β Π²ΡΠ±ΠΎΡ Π²Π΅ΡΡΠΈΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Π° Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ.
ΠΠΊΠ»ΡΡΠΈΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ C++ β Π²ΡΠ±Π΅ΡΠ΅ΠΌ Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ c++ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅. Π Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ Π½Π°ΠΌ ΡΡΠΎ ΠΏΡΠΈΠ³ΠΎΠ΄ΠΈΡΡΡ.
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΎΠΏΡΠΈΠΈ gcc β ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°. ΠΠ°ΠΌ ΡΡΠΎ ΠΏΠΎΠΊΠ° Π½Π΅ Π½ΡΠΆΠ½ΠΎ.
ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π·Π°Π΄Π°ΡΡ Π±ΡΠ΄ΡΡΠΈΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ:

ΠΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΏΡΠ½ΠΊΡΠΎΠ² ΠΏΠΎΠ½ΡΡΠ½Ρ ΠΈΠ· Π½Π°Π·Π²Π°Π½ΠΈΡ. ΠΠ±ΡΠ°ΡΠΈΠΌ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΏΡΠ½ΠΊΡΡ:
ΠΡΡΡ ΠΊ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ β ΡΠ°Π±Π»ΠΈΡΠ° Ρ ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΡΠΌΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ ().
ΠΡΠΈΠΌΠ΅Ρ ΡΠ°ΠΉΠ»Π°. ΠΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°Π½ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ user Ρ ΠΏΠ°ΡΠΎΠ»Π΅ΠΌ admin, Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ gid/uid, /bin/sh ΡΠ΅Π»Π»ΠΎΠΌ, Π³ΡΡΠΏΠΏΠΎΠΉ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ user, ΡΠ»Π΅Π½ Π³ΡΡΠΏΠΏΡ root, ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅ΠΌ Foo user.
[alexey@alexey-pc buildroot ]$ cat board/my_x86_board/users.txt
user -1 user -1 =admin /home/user /bin/sh root Foo userΠΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ Π½Π°Π»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΊΠΎΡΠ½Π΅Π²ΠΎΠΉ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ β ΠΊΠ°ΡΠ°Π»ΠΎΠ³, Π½Π°ΠΊΠ»Π°Π΄ΡΠ²Π°Π΅ΠΌΡΠΉ ΠΏΠΎΠ²Π΅ΡΡ ΡΠΎΠ±ΡΠ°Π½Π½ΠΎΠΉ target-fs. ΠΠΎΠ±Π°Π²Π»ΡΠ΅Ρ Π½ΠΎΠ²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΈ Π·Π°ΠΌΠ΅Π½ΡΠ΅Ρ ΠΈΠΌΠ΅ΡΡΠΈΠ΅ΡΡ.
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠ΅ ΡΠΊΡΠΈΠΏΡΡ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅Π΄ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠ² ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ β Π‘ΠΊΡΠΈΠΏΡΡ, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠ΅ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΏΠ΅ΡΠ΅Π΄ ΡΠ²ΠΎΡΠ°ΡΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Π² ΠΎΠ±ΡΠ°Π·Ρ. Π‘Π°ΠΌ ΡΠΊΡΠΈΠΏΡ ΠΏΠΎΠΊΠ° ΠΎΡΡΠ°Π²ΠΈΠΌ ΠΏΡΡΡΡΠΌ.
ΠΠ΅ΡΠ΅ΠΉΠ΄ΡΠΌ Π² ΡΠ°Π·Π΄Π΅Π» Π―Π΄ΡΠΎ.

ΠΠ΄Π΅ΡΡ Π·Π°Π΄Π°ΡΡΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΠ΄ΡΠ°. Π‘Π°ΠΌΠΎ ΡΠ΄ΡΠΎ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΡΠ΅ΡΡΡ ΡΠ΅ΡΠ΅Π· make linux-menuconfig.
ΠΠ°Π΄Π°ΡΡ Π²Π΅ΡΡΠΈΡ ΡΠ΄ΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎ-ΡΠ°Π·Π½ΠΎΠΌΡ: Π²ΡΠ±ΡΠ°ΡΡ ΠΈΠ· ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Π½ΡΡ
, Π²Π²Π΅ΡΡΠΈ Π²Π΅ΡΡΠΈΡ Π²ΡΡΡΠ½ΡΡ, ΡΠΊΠ°Π·Π°ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΈΠ»ΠΈ Π³ΠΎΡΠΎΠ²ΡΠΉ tarball.
ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΡΠ΄ΡΠ° β ΠΏΡΡΡ ΠΊ ΠΊΠΎΠ½ΡΠΈΠ³Ρ ΡΠ΄ΡΠ°. ΠΠΎΠΆΠ½ΠΎ Π²ΡΠ±ΡΠ°ΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π΄Π»Ρ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠΉ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ ΠΈΠ»ΠΈ defconfig ΠΈΠ· Linux. Π ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠ°Ρ Linux Π΅ΡΡΡ Π½Π°Π±ΠΎΡ defconfigβΠΎΠ² Π΄Π»Ρ ΡΠ°Π·Π½ΡΡ ΡΠ΅Π»Π΅Π²ΡΡ ΡΠΈΡΡΠ΅ΠΌ. ΠΠ°ΠΉΡΠΈ Π½ΡΠΆΠ½ΡΠΉ ΠΌΠΎΠΆΠ½ΠΎ, . ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ ΠΏΠ»Π°ΡΡ beagle bone black ΠΌΠΎΠΆΠ½ΠΎ .
Π Π°Π·Π΄Π΅Π» Target packages ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΠΈΠ·Π±Π΅ΡΠ΅ΡΠ΅ ΠΊΠΎΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈ ΡΠ΅ Π±ΡΠ΄Π°Ρ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½ΠΈ Π² ΡΡΠ·Π΄Π°Π²Π°Π½Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°. ΠΠ°ΡΠ΅Π³Π° ΡΠ΅ ΠΎΡΡΠ°Π²ΠΈΠΌ Π±Π΅Π· ΠΏΡΠΎΠΌΡΠ½Π°. ΠΠΎ-ΠΊΡΡΠ½ΠΎ ΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΡΠ²ΠΎΠΈΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΈ Π² ΡΠΎΠ·ΠΈ ΡΠΏΠΈΡΡΠΊ.
Filesystem images β ΡΠΏΠΈΡΡΠΊ Π½Π° ΠΎΠ±ΡΠ°Π·ΠΈ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ Π±ΡΠ΄Π°Ρ ΡΡΠ·Π΄Π°Π΄Π΅Π½ΠΈ. ΠΠ΅ΠΊΠ° Π΄ΠΎΠ±Π°Π²ΠΈΠΌ iso-ΠΎΠ±ΡΠ°Π·.

Bootloaders β ΠΈΠ·Π±ΠΎΡ Π½Π° ΡΡΠ·Π΄Π°Π²Π°Π½ΠΈΡΠ΅ Π·Π°ΡΠ΅ΠΆΠ΄Π°ΡΠΈ ΠΌΠΎΠ΄ΡΠ»ΠΈ. ΠΠ΅ΠΊΠ° ΠΈΠ·Π±Π΅ΡΠ΅ΠΌ isolinix.

ΠΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½Π΅ Π½Π° Systemd
Systemd ΡΡΠ°Π²Π° Π΅Π΄ΠΈΠ½ ΠΎΡ ΡΡΡΠ»Π±ΠΎΠ²Π΅ΡΠ΅ Π½Π° linux, Π½Π°ΡΠ΅Π΄ Ρ kernel ΠΈ glibc. ΠΠ°ΡΠΎΠ²Π° ΠΏΡΠ΅ΠΌΠ΅ΡΡΠΈΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΡΠ° ΠΌΡ Π² ΠΎΡΠ΄Π΅Π»Π΅Π½ ΠΏΡΠ½ΠΊΡ.
ΠΠ°ΡΡΡΠΎΠΉΠ²Π° ΡΠ΅ ΡΡΠ΅Π· make menuconfig, ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° Target packages β System tools β systemd. Π’ΡΠΊ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΠΎΡΠΎΡΠΈΡΠ΅ ΠΊΠΎΠΈ ΡΡΠ»ΡΠ³ΠΈ Π½Π° systemd ΡΠ΅ Π±ΡΠ΄Π°Ρ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½ΠΈ ΠΈ ΡΡΠ°ΡΡΠΈΡΠ°Π½ΠΈ ΠΏΡΠΈ ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ°.

ΠΠ°ΠΏΠ°Π·Π²Π°Π½Π΅ Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ°
ΠΠ°ΠΏΠ°Π·Π²Π°ΠΌΠ΅ ΡΠ°Π·ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΡΡΠ΅Π· KConfig.
Π‘Π»Π΅Π΄ ΠΊΠΎΠ΅ΡΠΎ ΡΠ΅ Π·Π°ΠΏΠ°Π·ΠΈΠΌ Π½Π°ΡΠΈΡ defconfig:
make savedefconfigΠΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ΄ΡΠΎ Π½Π° Linux
ΠΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΡΠ΄ΡΠΎΡΠΎ Π½Π° linux ΡΠ΅ ΠΈΠ·Π²ΠΈΠΊΠ²Π° Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ°:
make linux-menuconfigΠΠ΅ΠΊΠ° Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π²ΠΈΠ΄Π΅ΠΎΠΊΠ°ΡΡΠ°ΡΠ° Virtualbox

ΠΠ΅ΠΊΠ° Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Virtualbox Guest integration.

ΠΠ°ΠΏΠ°Π·Π²Π°ΠΌΠ΅ ΠΈ ΠΈΠ·Π»ΠΈΠ·Π°ΠΌΠ΅. ΠΠΠΠΠ: ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° ΡΠ΅ ΡΠ΅ Π·Π°ΠΏΠ°Π·Π²Π° Π² output/build/linux-$version/config, Π½ΠΎ Π½Π΅ Π² board/my_x86_board/linux.config

ΠΠ°ΡΠΎΠ²Π° ΡΡΡΠ±Π²Π° ΡΡΡΠ½ΠΎ Π΄Π° ΠΊΠΎΠΏΠΈΡΠ°ΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° Π² ΠΌΡΡΡΠΎΡΠΎ Π·Π° ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅:
cp output/build/linux-4.19.25/.config board/my_x86_board/linux.configΠ‘Π»Π΅Π΄ ΠΊΠΎΠ΅ΡΠΎ ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠΈΠΌ ΠΏΡΠ»Π½Π° ΠΏΡΠ΅ΡΠΎΠ±ΡΠ²Π°Π½Π΅ Π½Π° ΡΡΠ»Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°. Π’ΡΠΉ ΠΊΠ°ΡΠΎ buildroot Π½Π΅ ΠΏΡΠ΅ΡΠΎΠ±ΡΠ²Π° Π²Π΅ΡΠ΅ ΡΡΠ±ΡΠ°Π½ΠΈΡΠ΅, ΡΡΡΠ±Π²Π° ΡΡΡΠ½ΠΎ Π΄Π° ΠΏΠΎΡΠΎΡΠΈΠΌ ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅ Π·Π° ΠΏΡΠ΅ΡΠΎΠ±ΡΠ²Π°Π½Π΅. ΠΠ° Π΄Π° Π½Π΅ Π³ΡΠ±ΠΈΡΠ΅ Π²ΡΠ΅ΠΌΠ΅ ΠΈ Π½Π΅ΡΠ²ΠΈ, ΠΌΠ°Π»ΠΊΠ° ΡΠΈΡΡΠ΅ΠΌΠ° Π΅ ΠΏΠΎ-Π»Π΅ΡΠ½ΠΎ Π΄Π° ΡΠ΅ ΠΏΡΠ΅ΡΠΎΠ±ΠΈ Π½Π°ΠΏΡΠ»Π½ΠΎ):
make clean;makeΠ‘Π»Π΅Π΄ Π·Π°Π²ΡΡΡΠ²Π°Π½Π΅ Π½Π° ΡΠ±ΠΎΡΠΊΠ°ΡΠ° ΡΡΠ°ΡΡΠΈΡΠ°ΠΉΡΠ΅ VirtualBox (ΡΠ΅ΡΡΠ²Π°Ρ Π½Π° Π²Π΅ΡΡΠΈΠΈ 5.2 ΠΈ 6.0) Ρ Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ ΠΎΡ cd-Π΄ΠΈΡΠΊ. ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ°:

Π‘ΡΠ°ΡΡΠΈΡΠ°Π½Π΅ ΠΎΡ ΡΡΠ±ΡΠ°Π½ΠΈΡ iso:

Π‘ΠΏΠΈΡΡΠΊ Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈΡΠ΅ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»ΠΈ
- Buildroot manual
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: habr.com
