பில்ட்ரூட் - பகுதி 1. பொதுவான தகவல், ஒரு குறைந்தபட்ச அமைப்பை அசெம்பிள் செய்தல், மெனு மூலம் உள்ளமைவு

அறிமுகம்

இந்தக் கட்டுரைத் தொடரில், நான் பில்ட்ரூட் விநியோக உருவாக்க அமைப்பைப் பார்த்து, அதைத் தனிப்பயனாக்குவதில் எனது அனுபவத்தைப் பகிர்ந்து கொள்ள விரும்புகிறேன். இங்கே நீங்கள் ஒரு வரைகலை இடைமுகம் மற்றும் குறைந்த செயல்பாட்டுடன் ஒரு சிறிய OS ஐ உருவாக்குவதில் நடைமுறை அனுபவத்தைப் பெறுவீர்கள்.

முதலில், நீங்கள் உருவாக்க அமைப்பு மற்றும் விநியோகத்தை குழப்பக்கூடாது. பில்ட்ரூட் அதற்கு வழங்கப்படும் தொகுப்புகளின் தொகுப்பிலிருந்து ஒரு அமைப்பை உருவாக்க முடியும். பில்ட்ரூட் மேக்ஃபைல்களில் கட்டமைக்கப்பட்டுள்ளது, எனவே மகத்தான தனிப்பயனாக்குதல் திறன்களைக் கொண்டுள்ளது. ஒரு தொகுப்பை வேறொரு பதிப்பில் மாற்றவும், உங்கள் சொந்த தொகுப்பைச் சேர்க்கவும், தொகுப்பை உருவாக்குவதற்கான விதிகளை மாற்றவும், அனைத்து தொகுப்புகளையும் நிறுவிய பின் கோப்பு முறைமையைத் தனிப்பயனாக்கவும்? பில்ட்ரூட் இதையெல்லாம் செய்ய முடியும்.

ரஷ்யாவில், பில்ட்ரூட் பயன்படுத்தப்படுகிறது, ஆனால் என் கருத்துப்படி ஆரம்பநிலைக்கு சிறிய ரஷ்ய மொழி தகவல் உள்ளது.

லைவ் டவுன்லோட், icewm இடைமுகம் மற்றும் பிரவுசருடன் கூடிய விநியோக கிட் ஒன்று சேர்வதே வேலையின் குறிக்கோள். இலக்கு தளம் மெய்நிகர் பெட்டி.

உங்கள் சொந்த விநியோகத்தை ஏன் உருவாக்க வேண்டும்? வரையறுக்கப்பட்ட வளங்களுடன் பெரும்பாலும் வரையறுக்கப்பட்ட செயல்பாடு தேவைப்படுகிறது. இன்னும் அடிக்கடி ஆட்டோமேஷனில் நீங்கள் ஃபார்ம்வேரை உருவாக்க வேண்டும். புதிய விநியோகத்தை உருவாக்குவதை விட தேவையற்ற பேக்கேஜ்களை சுத்தம் செய்து அதை ஃபார்ம்வேராக மாற்றுவதன் மூலம் பொது-நோக்க விநியோகத்தை மாற்றியமைப்பது அதிக உழைப்பு மிகுந்ததாகும். ஜென்டூவைப் பயன்படுத்துவதற்கும் அதன் வரம்புகள் உள்ளன.

பில்ட்ரூட் அமைப்பு மிகவும் சக்தி வாய்ந்தது, ஆனால் அது உங்களுக்கு எதுவும் செய்யாது. இது சட்டசபை செயல்முறையை மட்டுமே இயக்கவும் தானியங்குபடுத்தவும் முடியும்.

மாற்று உருவாக்க அமைப்புகள் (யோக்டோ, ஓபன் பில்ட் சிஸ்டம் மற்றும் பிற) கருதப்படுவதில்லை அல்லது ஒப்பிடப்படுவதில்லை.

எங்கு பெறுவது மற்றும் எப்படி தொடங்குவது

திட்ட இணையதளம் - buildroot.org. இங்கே நீங்கள் தற்போதைய பதிப்பைப் பதிவிறக்கம் செய்து கையேட்டைப் படிக்கலாம். அங்கு நீங்கள் சமூகத்தை தொடர்பு கொள்ளலாம், பிழை கண்காணிப்பாளர், அஞ்சல் பட்டியல்கள் மற்றும் ஐஆர்சி சேனல் உள்ளது.

பில்ட்ரூட் கட்டமைப்பின் இலக்கு பலகைக்கான defconfigs ஐ இயக்குகிறது. Defconfig என்பது இயல்புநிலை மதிப்புகள் இல்லாத விருப்பங்களை மட்டுமே சேமிக்கும் உள்ளமைவு கோப்பாகும். எது எப்படி சேகரிக்கப்படும் என்பதை அவர்தான் தீர்மானிக்கிறார். இந்த வழக்கில், நீங்கள் தனித்தனியாக busybox, linux-kernel, uglibc, u-boot மற்றும் barebox பூட்லோடர்களின் கட்டமைப்புகளை உள்ளமைக்கலாம், ஆனால் அவை அனைத்தும் இலக்கு பலகையுடன் இணைக்கப்படும்.
பதிவிறக்கம் செய்யப்பட்ட காப்பகத்தை அன்பேக் செய்த பிறகு அல்லது git இலிருந்து குளோனிங் செய்த பிறகு, பயன்படுத்தத் தயாராக இருக்கும் பில்ட்ரூட்டைப் பெறுகிறோம். கையேட்டில் உள்ள அடைவு கட்டமைப்பைப் பற்றி நீங்கள் மேலும் படிக்கலாம்; மிக முக்கியமானவற்றைப் பற்றி நான் உங்களுக்குச் சொல்கிறேன்:

குழு - ஒவ்வொரு போர்டுக்கும் குறிப்பிட்ட கோப்புகளைக் கொண்ட கோப்பகம். இவை கணினி படங்களை உருவாக்குவதற்கான ஸ்கிரிப்ட்களாக இருக்கலாம் (iso, sdcart, cpio மற்றும் பிற), மேலடுக்கு அடைவு, கர்னல் கட்டமைப்பு போன்றவை.
உள்ளமைவுகளைப் - பலகையின் உண்மையான defconfig. Defconfig ஒரு முழுமையற்ற பலகை கட்டமைப்பு ஆகும். இது இயல்புநிலை அமைப்புகளிலிருந்து வேறுபட்ட அளவுருக்களை மட்டுமே சேமிக்கிறது
dl — பதிவிறக்கம் செய்யப்பட்ட மூலக் குறியீடுகள்/கோப்புகளுடன் கூடிய அடைவு
வெளியீடு/இலக்கு — இதன் விளைவாக வரும் OS இன் அசெம்பிள் செய்யப்பட்ட கோப்பு முறைமை. பின்னர், பதிவிறக்கம்/நிறுவுவதற்கு அதிலிருந்து படங்கள் உருவாக்கப்படுகின்றன
வெளியீடு/புரவலன் - சட்டசபைக்கான ஹோஸ்ட் பயன்பாடுகள்
வெளியீடு/உருவாக்கம் - கூடியிருந்த தொகுப்புகள்

சட்டசபை KConfig வழியாக கட்டமைக்கப்பட்டுள்ளது. லினக்ஸ் கர்னலை உருவாக்க அதே அமைப்பு பயன்படுத்தப்படுகிறது. பொதுவாகப் பயன்படுத்தப்படும் கட்டளைகளின் பட்டியல் (பில்ட்ரூட் கோப்பகத்தில் இயக்கவும்):

  • menuconfig ஐ உருவாக்கவும் - உருவாக்க உள்ளமைவை அழைக்கவும். நீங்கள் வரைகலை இடைமுகத்தையும் பயன்படுத்தலாம் (nconfig ஐ உருவாக்கவும், xconfig ஐ உருவாக்கவும், gconfig ஐ உருவாக்கவும்)
  • linux-menuconfig ஐ உருவாக்கவும் - கர்னல் உள்ளமைவை அழைக்கவும்.
  • சுத்தம் செய்யுங்கள் - உருவாக்க முடிவுகளை சுத்தம் செய்யுங்கள் (எல்லாமே வெளியீட்டில் சேமிக்கப்பட்டுள்ளது)
  • உருவாக்க - ஒரு அமைப்பை உருவாக்க. இது ஏற்கனவே கூடியிருந்த செயல்முறைகளை மீண்டும் இணைக்காது.
  • defconfig_name ஐ உருவாக்கவும் - கட்டமைப்பை ஒரு குறிப்பிட்ட defconfig க்கு மாற்றவும்
  • பட்டியல்-defconfigs ஐ உருவாக்கவும் - defconfigs பட்டியலைக் காட்டு
  • மூலத்தை உருவாக்கவும் - நிறுவல் கோப்புகளை உருவாக்காமல் பதிவிறக்கவும்.
  • உதவி செய்யுங்கள் - சாத்தியமான கட்டளைகளை பட்டியலிடுங்கள்

முக்கிய குறிப்புகள் மற்றும் பயனுள்ள குறிப்புகள்

பில்ட்ரூட் ஏற்கனவே கட்டப்பட்ட தொகுப்புகளை மீண்டும் உருவாக்காது! எனவே, ஒரு முழுமையான மறுசீரமைப்பு தேவைப்படும் சூழ்நிலை ஏற்படலாம்.

கட்டளையுடன் நீங்கள் ஒரு தனி தொகுப்பை மீண்டும் உருவாக்கலாம் தொகுப்பு பெயர்-மீண்டும் உருவாக்க. எடுத்துக்காட்டாக, நீங்கள் லினக்ஸ் கர்னலை மீண்டும் உருவாக்கலாம்:

make linux-rebuild

பில்ட்ரூட் வெளியீடு/build/$packagename கோப்பகத்தில் .ஸ்டாம்ப் கோப்புகளை உருவாக்குவதன் மூலம் எந்த தொகுப்பின் நிலையையும் சேமிக்கிறது:

பில்ட்ரூட் - பகுதி 1. பொதுவான தகவல், ஒரு குறைந்தபட்ச அமைப்பை அசெம்பிள் செய்தல், மெனு மூலம் உள்ளமைவு

எனவே, தொகுப்புகளை மீண்டும் உருவாக்காமல் ரூட்-எஃப்எஸ் மற்றும் படங்களை நீங்கள் மீண்டும் உருவாக்கலாம்:

rm output/build/host-gcc-final-*/.stamp_host_installed;rm -rf output/target;find output/ -name ".stamp_target_installed" |xargs rm -rf ; make

பயனுள்ள மாறிகள்

பில்ட்ரூட் எளிதான உள்ளமைவுக்கான மாறிகளின் தொகுப்பைக் கொண்டுள்ளது

  • $TOPDIR - பில்ட்ரூட் கோப்பகம்
  • $BASEDIR - அவுட்புட் கோப்பகம்
  • $HOST_DIR, $STAGING_DIR, $TARGET_DIR — ஹோஸ்ட் எஃப்எஸ், ஸ்டேஜிங் எஃப்எஸ், டார்கெட் எஃப்எஸ் பில்ட் டைரக்டரிகள்.
  • $BUILD_DIR - தொகுக்கப்படாத மற்றும் கட்டமைக்கப்பட்ட தொகுப்புகள் கொண்ட அடைவு

காட்சிப்படுத்தல்

buildroot ஒரு காட்சிப்படுத்தல் அம்சத்தைக் கொண்டுள்ளது. நீங்கள் ஒரு சார்பு வரைபடம், உருவாக்க நேர வரைபடம் மற்றும் தொகுப்பு அளவுகளின் வரைபடத்தை இறுதி அமைப்பில் உருவாக்கலாம். முடிவுகள் pdf கோப்புகளின் வடிவத்தில் (நீங்கள் svn,png இலிருந்து தேர்வு செய்யலாம்) வெளியீடு/வரைபட கோப்பகத்தில் இருக்கும்.

காட்சிப்படுத்தல் கட்டளைகளின் எடுத்துக்காட்டுகள்:

  • make graph-depends சார்பு மரத்தை உருவாக்குங்கள்
  • make <pkg>-graph-depends ஒரு குறிப்பிட்ட தொகுப்புக்கான சார்பு மரத்தை உருவாக்கவும்
  • BR2_GRAPH_OUT=png make graph-build PNG வெளியீட்டைக் கொண்டு சதி உருவாக்க நேரம்
  • make graph-size அடுக்கு பாக்கெட் அளவு

பயனுள்ள ஸ்கிரிப்டுகள்

பில்ட்ரூட் கோப்பகத்தில் ஒரு துணை அடைவு உள்ளது பயன்பாடுகள் பயனுள்ள ஸ்கிரிப்ட்களுடன். எடுத்துக்காட்டாக, தொகுப்பு விளக்கங்களின் சரியான தன்மையை சரிபார்க்கும் ஸ்கிரிப்ட் உள்ளது. உங்கள் சொந்த தொகுப்புகளைச் சேர்க்கும்போது இது பயனுள்ளதாக இருக்கும் (இதை நான் பின்னர் செய்வேன்). utils/readme.txt கோப்பு இந்த ஸ்கிரிப்ட்களின் விளக்கத்தைக் கொண்டுள்ளது.

பங்கு விநியோகத்தை உருவாக்குவோம்

அனைத்து செயல்பாடுகளும் ஒரு வழக்கமான பயனரின் சார்பாக மேற்கொள்ளப்படுகின்றன, ரூட் அல்ல என்பதை நினைவில் கொள்வது அவசியம்.
அனைத்து கட்டளைகளும் பில்ட்ரூட்டில் செயல்படுத்தப்படுகின்றன. பில்ட்ரூட் தொகுப்பில் ஏற்கனவே பல பொதுவான பலகைகள் மற்றும் மெய்நிகராக்கத்திற்கான உள்ளமைவுகளின் தொகுப்பு உள்ளது.

உள்ளமைவுகளின் பட்டியலைப் பார்ப்போம்:

பில்ட்ரூட் - பகுதி 1. பொதுவான தகவல், ஒரு குறைந்தபட்ச அமைப்பை அசெம்பிள் செய்தல், மெனு மூலம் உள்ளமைவு

qemu_x86_64_defconfig கட்டமைப்பிற்கு மாறவும்

make qemu_x86_64_defconfig

நாங்கள் சட்டசபையைத் தொடங்குகிறோம்

make

உருவாக்கம் வெற்றிகரமாக முடிந்தது, முடிவுகளைப் பாருங்கள்:

பில்ட்ரூட் - பகுதி 1. பொதுவான தகவல், ஒரு குறைந்தபட்ச அமைப்பை அசெம்பிள் செய்தல், மெனு மூலம் உள்ளமைவு

பில்ட்ரூட் நீங்கள் Qemu இல் இயக்கக்கூடிய படங்களை தொகுத்துள்ளது மற்றும் அவை செயல்படுகின்றனவா என்பதை சரிபார்க்கவும்.

qemu-system-x86_64 -kernel output/images/bzImage -hda    output/images/rootfs.ext2 -append "root=/dev/sda rw" -s -S

இதன் விளைவாக qemu இல் இயங்கும் ஒரு அமைப்பு:

பில்ட்ரூட் - பகுதி 1. பொதுவான தகவல், ஒரு குறைந்தபட்ச அமைப்பை அசெம்பிள் செய்தல், மெனு மூலம் உள்ளமைவு

உங்கள் சொந்த பலகை உள்ளமைவை உருவாக்குதல்

போர்டு கோப்புகளைச் சேர்த்தல்

உள்ளமைவுகளின் பட்டியலைப் பார்ப்போம்:

பில்ட்ரூட் - பகுதி 1. பொதுவான தகவல், ஒரு குறைந்தபட்ச அமைப்பை அசெம்பிள் செய்தல், மெனு மூலம் உள்ளமைவு

பட்டியலில் pc_x86_64_efi_defconfig ஐப் பார்க்கிறோம். உள்ளமைவிலிருந்து நகலெடுத்து எங்கள் சொந்த பலகையை உருவாக்குவோம்:

cp configs/pc_x86_64_bios_defconfig configs/my_x86_board_defconfig

நமது ஸ்கிரிப்ட்கள், ரூட்ஃப்ஸ்-மேலடுக்கு மற்றும் தேவையான பிற கோப்புகளை சேமிக்க உடனடியாக ஒரு போர்டு கோப்பகத்தை உருவாக்குவோம்:

mkdir board/my_x86_board

இந்த defconfig க்கு மாறவும்:

make my_x86_board_defconfig

எனவே, இப்போது உருவாக்க கட்டமைப்பு (பில்ட்ரூட் கோப்பகத்தின் ரூட்டில் .config இல் சேமிக்கப்பட்டுள்ளது) x86-64 மரபு(பயோஸ்) துவக்க இலக்கு இயந்திரத்துடன் ஒத்துள்ளது.

லினக்ஸ்-கர்னல் உள்ளமைவை நகலெடுப்போம் (பின்னர் பயனுள்ளதாக இருக்கும்):

cp board/pc/linux.config board/my_x86_board/

KConfig வழியாக உருவாக்க அளவுருக்களை அமைத்தல்

அமைப்பைத் தொடங்குவோம்:

make menuconfig 

KConfig சாளரம் திறக்கும். வரைகலை இடைமுகத்துடன் கட்டமைக்க முடியும் (nconfig ஐ உருவாக்கவும், xconfig ஐ உருவாக்கவும், gconfig ஐ உருவாக்கவும்):

பில்ட்ரூட் - பகுதி 1. பொதுவான தகவல், ஒரு குறைந்தபட்ச அமைப்பை அசெம்பிள் செய்தல், மெனு மூலம் உள்ளமைவு

நாங்கள் முதல் பகுதி இலக்கு விருப்பங்களை உள்ளிடுகிறோம். இங்கே நீங்கள் கட்டமைக்கப்பட வேண்டிய இலக்கு கட்டமைப்பைத் தேர்ந்தெடுக்கலாம்.

பில்ட்ரூட் - பகுதி 1. பொதுவான தகவல், ஒரு குறைந்தபட்ச அமைப்பை அசெம்பிள் செய்தல், மெனு மூலம் உள்ளமைவு

உருவாக்க விருப்பங்கள் - இங்கே பல்வேறு உருவாக்க அமைப்புகள் உள்ளன. மூலக் குறியீடுகள், பில்ட் த்ரெட்களின் எண்ணிக்கை, மூலக் குறியீடுகளைப் பதிவிறக்குவதற்கான கண்ணாடிகள் மற்றும் பிற அமைப்புகளைக் கொண்ட கோப்பகங்களை நீங்கள் குறிப்பிடலாம். அமைப்புகளை இயல்புநிலையில் விடுவோம்.

கருவித்தொகுப்பு - உருவாக்க கருவிகள் இங்கே கட்டமைக்கப்பட்டுள்ளன. அவரைப் பற்றி மேலும் படிக்கவும்.

பில்ட்ரூட் - பகுதி 1. பொதுவான தகவல், ஒரு குறைந்தபட்ச அமைப்பை அசெம்பிள் செய்தல், மெனு மூலம் உள்ளமைவு

டூல்செயின் வகை - பயன்படுத்தப்படும் டூல்செயின் வகை. இது பில்ட்ரூட்டில் கட்டமைக்கப்பட்ட டூல்செயினாகவோ அல்லது வெளிப்புறமாகவோ இருக்கலாம் (ஏற்கனவே கட்டமைக்கப்பட்ட கோப்பகத்தை அல்லது பதிவிறக்குவதற்கான urlஐக் கொண்டு நீங்கள் குறிப்பிடலாம்). வெவ்வேறு கட்டமைப்புகளுக்கு கூடுதல் விருப்பங்கள் உள்ளன. எடுத்துக்காட்டாக, கைக்கு நீங்கள் வெளிப்புற கருவித்தொகுப்பின் லினாரோ பதிப்பைத் தேர்ந்தெடுக்கலாம்.

C நூலகம் - C நூலகத்தின் தேர்வு முழு அமைப்பின் செயல்பாடும் இதைப் பொறுத்தது. பொதுவாக, glibc பயன்படுத்தப்படுகிறது, இது சாத்தியமான அனைத்து செயல்பாடுகளையும் ஆதரிக்கிறது. ஆனால் உட்பொதிக்கப்பட்ட அமைப்புக்கு இது மிகப் பெரியதாக இருக்கலாம், எனவே uglibc அல்லது musl பெரும்பாலும் தேர்ந்தெடுக்கப்படுகின்றன. நாங்கள் glibc ஐ தேர்ந்தெடுப்போம் (இது systemd ஐப் பயன்படுத்த பின்னர் தேவைப்படும்).

கர்னல் தலைப்புகள் மற்றும் தனிப்பயன் கர்னல் தலைப்புகள் தொடர் - அசெம்பிள் செய்யப்பட்ட அமைப்பில் இருக்கும் கர்னலின் பதிப்போடு பொருந்த வேண்டும். கர்னல் தலைப்புகளுக்கு, நீங்கள் தார்பால் அல்லது ஜிட் களஞ்சியத்திற்கான பாதையையும் குறிப்பிடலாம்.

GCC கம்பைலர் பதிப்புகள் - கட்டமைக்கப் பயன்படுத்தப்படும் கம்பைலர் பதிப்பைத் தேர்ந்தெடுக்கவும்
C++ ஆதரவை இயக்கு - கணினியில் C++ நூலகங்களுக்கான ஆதரவுடன் உருவாக்க தேர்ந்தெடுக்கவும். இது எதிர்காலத்தில் நமக்கு பயனுள்ளதாக இருக்கும்.

கூடுதல் gcc விருப்பங்கள் - நீங்கள் கூடுதல் கம்பைலர் விருப்பங்களை அமைக்கலாம். இப்போதைக்கு நமக்கு அது தேவையில்லை.

உருவாக்கப்பட்ட கணினியின் எதிர்கால அளவுருக்களை அமைக்க கணினி கட்டமைப்பு உங்களை அனுமதிக்கிறது:

பில்ட்ரூட் - பகுதி 1. பொதுவான தகவல், ஒரு குறைந்தபட்ச அமைப்பை அசெம்பிள் செய்தல், மெனு மூலம் உள்ளமைவு

தலைப்பிலிருந்து பெரும்பாலான புள்ளிகள் தெளிவாக உள்ளன. பின்வரும் புள்ளிகளுக்கு கவனம் செலுத்துவோம்:
பயனர் அட்டவணைகளுக்கான பாதை - பயனர்கள் உருவாக்கப்பட வேண்டிய அட்டவணை (https://buildroot.org/downloads/manual/manual.html#makeuser-syntax).

எடுத்துக்காட்டு கோப்பு. பயனர் பயனர் கடவுச்சொல் நிர்வாகி, தானாகவே gid/uid, /bin/sh ஷெல், இயல்புநிலை குழு பயனர், குழு உறுப்பினர் ரூட், கருத்து Foo பயனர் மூலம் உருவாக்கப்படுவார்

[alexey@alexey-pc buildroot ]$ cat board/my_x86_board/users.txt 
user -1 user -1 =admin /home/user /bin/sh root Foo user

ரூட் கோப்பு முறைமை மேலடுக்கு கோப்பகங்கள் - அசெம்பிள் செய்யப்பட்ட டார்கெட்-எஃப்ஸின் மேல் கோப்பகம் மேலெழுதப்பட்டுள்ளது. புதிய கோப்புகளைச் சேர்க்கிறது மற்றும் ஏற்கனவே உள்ளவற்றை மாற்றுகிறது.

கோப்பு முறைமைப் படங்களை உருவாக்கும் முன் இயக்க வேண்டிய பிரத்தியேக ஸ்கிரிப்டுகள் - கோப்பு முறைமையை படங்களாக மடிப்பதற்கு முன் உடனடியாக இயக்கப்படும் ஸ்கிரிப்டுகள். இப்போதைக்கு ஸ்கிரிப்டை காலியாக விடுவோம்.

கர்னல் பகுதிக்கு செல்வோம்

பில்ட்ரூட் - பகுதி 1. பொதுவான தகவல், ஒரு குறைந்தபட்ச அமைப்பை அசெம்பிள் செய்தல், மெனு மூலம் உள்ளமைவு

கர்னல் அமைப்புகள் இங்கே அமைக்கப்பட்டுள்ளன. கர்னல் தான் make linux-menuconfig மூலம் கட்டமைக்கப்படுகிறது.
நீங்கள் கர்னல் பதிப்பை வெவ்வேறு வழிகளில் அமைக்கலாம்: வழங்கப்பட்டவற்றிலிருந்து தேர்ந்தெடுக்கவும், பதிப்பை கைமுறையாக உள்ளிடவும், ஒரு களஞ்சியத்தை அல்லது தயாராக தயாரிக்கப்பட்ட டார்பால் குறிப்பிடவும்.

கர்னல் கட்டமைப்பு — கர்னல் கட்டமைப்புக்கான பாதை. தேர்ந்தெடுக்கப்பட்ட கட்டமைப்பிற்கான இயல்புநிலை உள்ளமைவை நீங்கள் தேர்ந்தெடுக்கலாம் அல்லது Linux இலிருந்து defocnfig ஐ தேர்ந்தெடுக்கலாம். Linux மூலமானது வெவ்வேறு இலக்கு அமைப்புகளுக்கான defconfigs தொகுப்பைக் கொண்டுள்ளது. உங்களுக்கு தேவையானதை நீங்கள் காணலாம் இங்குள்ள ஆதாரங்களை நேரடியாகப் பார்ப்பதன் மூலம். உதாரணமாக, ஒரு பீகிள் எலும்பு கருப்பு பலகைக்கு உங்களால் முடியும் config ஐ தேர்ந்தெடுக்கவும்.

கட்டமைக்கப்பட்ட கணினியில் எந்த தொகுப்புகள் நிறுவப்படும் என்பதைத் தேர்ந்தெடுக்க இலக்கு தொகுப்புகள் பிரிவு உங்களை அனுமதிக்கிறது. இப்போதைக்கு அதை மாற்றாமல் விடுவோம். இந்த பட்டியலில் எங்கள் தொகுப்புகளை பின்னர் சேர்ப்போம்.
கோப்பு முறைமை படங்கள் - சேகரிக்கப்படும் கோப்பு முறைமை படங்களின் பட்டியல். ஐசோ படத்தைச் சேர்க்கவும்

பில்ட்ரூட் - பகுதி 1. பொதுவான தகவல், ஒரு குறைந்தபட்ச அமைப்பை அசெம்பிள் செய்தல், மெனு மூலம் உள்ளமைவு

பூட்லோடர்கள் - சேகரிக்க வேண்டிய துவக்க ஏற்றிகளின் தேர்வு. ஐசோலினிக்ஸ் தேர்வு செய்யலாம்

பில்ட்ரூட் - பகுதி 1. பொதுவான தகவல், ஒரு குறைந்தபட்ச அமைப்பை அசெம்பிள் செய்தல், மெனு மூலம் உள்ளமைவு

Systemd ஐ கட்டமைக்கிறது

கர்னல் மற்றும் glibc உடன் Systemd லினக்ஸின் தூண்களில் ஒன்றாக மாறி வருகிறது. எனவே, அதன் அமைப்பை ஒரு தனி உருப்படிக்கு மாற்றினேன்.

make menuconfig மூலம் கட்டமைக்கப்பட்டது, பின்னர் இலக்கு தொகுப்புகள் → கணினி கருவிகள் → systemd. கணினி தொடங்கும் போது எந்த systemd சேவைகள் நிறுவப்பட்டு தொடங்கப்படும் என்பதை இங்கே குறிப்பிடலாம்.

பில்ட்ரூட் - பகுதி 1. பொதுவான தகவல், ஒரு குறைந்தபட்ச அமைப்பை அசெம்பிள் செய்தல், மெனு மூலம் உள்ளமைவு

கணினி உள்ளமைவைச் சேமிக்கிறது

இந்த கட்டமைப்பை KConfig வழியாக சேமிக்கிறோம்.

பின்னர் எங்கள் defconfig ஐ சேமிக்கவும்:

make savedefconfig

லினக்ஸ் கர்னல் கட்டமைப்பு

லினக்ஸ் கர்னல் கட்டமைப்பு பின்வரும் கட்டளையுடன் செயல்படுத்தப்படுகிறது:

make linux-menuconfig

Virtualbox வீடியோ அட்டைக்கான ஆதரவைச் சேர்ப்போம்

பில்ட்ரூட் - பகுதி 1. பொதுவான தகவல், ஒரு குறைந்தபட்ச அமைப்பை அசெம்பிள் செய்தல், மெனு மூலம் உள்ளமைவு

விர்ச்சுவல்பாக்ஸ் கெஸ்ட் ஒருங்கிணைப்பு ஆதரவைச் சேர்ப்போம்

பில்ட்ரூட் - பகுதி 1. பொதுவான தகவல், ஒரு குறைந்தபட்ச அமைப்பை அசெம்பிள் செய்தல், மெனு மூலம் உள்ளமைவு

சேமிக்க மற்றும் வெளியேறும். முக்கிய: உள்ளமைவு output/build/linux-$version/config இல் சேமிக்கப்படும், ஆனால் board/my_x86_board/linux.config இல் சேமிக்கப்படாது.

பில்ட்ரூட் - பகுதி 1. பொதுவான தகவல், ஒரு குறைந்தபட்ச அமைப்பை அசெம்பிள் செய்தல், மெனு மூலம் உள்ளமைவு

எனவே, நீங்கள் கட்டமைப்பை ஒரு சேமிப்பக இடத்திற்கு கைமுறையாக நகலெடுக்க வேண்டும்:

cp output/build/linux-4.19.25/.config board/my_x86_board/linux.config

அதன் பிறகு, முழு அமைப்பையும் முழுமையாக மறுசீரமைப்போம். பில்ட்ரூட் ஏற்கனவே கட்டப்பட்டதை மீண்டும் உருவாக்கவில்லை, மறுகட்டமைப்பிற்கான தொகுப்புகளை நீங்கள் கைமுறையாக குறிப்பிட வேண்டும். நேரத்தையும் நரம்புகளையும் வீணாக்காமல் இருக்க, ஒரு சிறிய அமைப்பை முழுவதுமாக மீண்டும் உருவாக்குவது எளிது):

make clean;make

அசெம்பிளி முடிந்ததும், விர்ச்சுவல் பாக்ஸ் (5.2 மற்றும் 6.0 பதிப்புகளில் சோதிக்கப்பட்டது) சிடியில் இருந்து பூட் செய்யும் கணினி அளவுருக்கள்:

பில்ட்ரூட் - பகுதி 1. பொதுவான தகவல், ஒரு குறைந்தபட்ச அமைப்பை அசெம்பிள் செய்தல், மெனு மூலம் உள்ளமைவு

கூடியிருந்த ஐசோவில் இருந்து துவக்கவும்:

பில்ட்ரூட் - பகுதி 1. பொதுவான தகவல், ஒரு குறைந்தபட்ச அமைப்பை அசெம்பிள் செய்தல், மெனு மூலம் உள்ளமைவு

பயன்படுத்தப்படும் பொருட்களின் பட்டியல்

  1. பில்ட்ரூட் கையேடு

ஆதாரம்: www.habr.com

கருத்தைச் சேர்