I-GNU Make 4.4 isivele ikhishiwe futhi lezi izindaba zayo

gnu-make

I-GNU make iyithuluzi elilawula ukwenziwa kwezinto ezisebenzisekayo namanye amafayela

Ngemva kweminyaka ecishe ibe mithathu yentuthuko, kukhishwe uhlelo lokwakha lwe-GNU Make 4.4, Kule nguqulo entsha, ngaphezu kokulungisa amaphutha, kungabonakala ukuthi ukuthuthukiswa kwengeziwe, kanye nokuthi izidingo zendawo yokuhlanganisa ziye zanda.

Kulabo kini abasanda kuhlanganyela kwi-GNU Make, kufanele nazi ukuthi lokhu iwusizo lokuthuthukisa idume ngendlela emangalisayo ehlela ukuhlanganiswa kwamaphrojekthi esoftware. I-Make ivame ukusetshenziselwa ukuphatha isethi ye-GCC compiler, kodwa ingasetshenziselwa ukuthuthukiswa kwesofthiwe noma umsebenzi wokupakisha.

Njengoba ukudala izinhlelo ezinkulu ze-C/C++ kuvame ukubandakanya izinyathelo ezimbalwa, ithuluzi elifana nokwenza liyadingeka ukuze kuqinisekiswe ukuthi wonke amafayela omthombo ahlanganisiwe futhi axhunyiwe. I-Make iphinde ivumele unjiniyela ukuthi alawule ukuthi amafayela asekelayo, njengamadokhumenti, amakhasi abantu, amaphrofayela e-systemd, imibhalo yokuqala, nezifanekiso zokumisa, apakishwa futhi afakwe.

Ukwenza akukhawulelwe ezilimini ezifana ne-C/C++. Abathuthukisi bewebhu bangasebenzisa i-GNU Make ukuze benze imisebenzi ephindaphindayo efana nokwenza i-CSS ne-JS encane, futhi abalawuli besistimu bangenza imisebenzi yokulungisa ngokuzenzakalelayo.

Ukwengeza, abasebenzisi bokugcina bangasebenzisa Yenza ukuze bahlanganise futhi bafake isofthiwe ngaphandle kokuba umhleli noma uchwepheshe kusofthiwe abayifakayo.

Izici ezintsha eziyinhloko ze-GNU Yenza i-4.4

Kule nguqulo entsha eyethulwa, I-OS/2 (EMX), AmigaOS, Xenix ne-Cray platforms zihoxisiwe, kanye nokwesekwa kwalezi zinhlelo kuzosuswa enguqulweni elandelayo ye-GNU Make.

Olunye ushintsho olwethulwa enguqulweni entsha ukuthi ukwanda kwezidingo zemvelo yokwakha, ukuze uhlanganise i-GNU Gnulib manje udinga isihlanganisi esisekela izici zezinga le-C99.

Ngaphandle kwakho, i-.WAIT build target yengeziwe Isici esikhethekile esikuvumela ukuthi umise kancane ukuqaliswa kokwakhiwa kokuhlosiwe okuthile kuze kuqedwe ukwakhiwa kokunye okuhlosiwe.

Ngesikhathi .NOTPARALLEL, ikhono lokucacisa izimfuneko liyasetshenziswa (amafayela adingekayo ukuze kudalwe okuqondiwe) ukuze uqalise ngokulandelana okuhlosiwe okuhlotshaniswa nawo (njengokungathi okuthi ".WAIT" kwakubekwe phakathi kwemfuneko ngayinye).

Ngakolunye uhlangothi, i-.NOTINTERMEDIATE yengeziwe, ekhubaza ukuziphatha okuhlotshaniswa nokusetshenziswa kokukhonjiwe okumaphakathi (.INTERMEDIATE) kumafayela athile, amafayela afana nemaski, noma yonke i-makefile.

Kumasistimu ahambisana ne mkfifo, indlela entsha yokuxhumana neseva yomsebenzi ngesikhathi sokwenziwa ngokufana inikeziwe yemisebenzi esekelwe ekusetshenzisweni kwamapayipi aqanjwe igama, kanye nenketho ethi “–jobserver-style=pipe” yengezwe ukubuyisela indlela endala esekelwe emapayipini angashiwongo.

Kuphinde kuqashelwe ukuthi ukusetshenziswa kwamafayela esikhashana enqubweni yesisebenzi kwandisiwe (izinkinga zingavela lapho uhlelo lokwakha lusetha enye inkomba yamafayela esikhashana (TMPDIR) futhi isusa okuqukethwe kwe-TMPDIR ngesikhathi sokuhlanganiswa).

Kwezinye izinguquko okuvelele kule nguqulo entsha:

  • Kusetshenziswe umsebenzi we-$(let…), okuvumela ukuthi uchaze okuguquguqukayo kwasendaweni emisebenzini echazwe umsebenzisi.
  • Kusetshenziswe umsebenzi we-$(intcmp…) ukuze uqhathanise izinombolo.
  • Uma usebenzisa inketho ethi “-l” (–load-average), inani lemisebenzi ezoqalwa manje licabangela idatha esefayilini /proc/loadavg mayelana nomthwalo ohlelweni.
  • Kwengezwe inketho ethi “-shova” ukuze ushovise izimfuneko, okuvumela ukuziphatha okunganqunyelwe ekwakhiweni okuhambisanayo (isibonelo, ukuhlola i-fuzz ukulunga kwencazelo yezimfuneko ku-makefile).

Okokugcina uma unentshisekelo yokwazi kabanzi ngakho, ungabheka imininingwane Kulesi sixhumanisi esilandelayo.

Uyifaka kanjani i-GNU Make ku-Linux?

Okwalabo unentshisekelo yokukwazi ukufaka leli thuluzi, bangakwenza lokho ngokusebenzisa omunye wemiyalo elandelayo:

Okwalabo abasebenzisi be I-Debian/Ubuntu noma okunye okuphuma kulokhu:

sudo apt install make

Endabeni yalabo abangabasebenzisi be I-Fedora/RHEL noma okuphuma kuyo:
yum install make

Ngenkathi kulabo abangabasebenzisi be I-Arch Linux kanye nokuphuma kokunye:

sudo pacman -S make


Shiya umbono wakho

Ikheli lakho le ngeke ishicilelwe. Ezidingekayo ibhalwe nge *

*

*

  1. Ubhekele imininingwane: Miguel Ángel Gatón
  2. Inhloso yedatha: Lawula Ugaxekile, ukuphathwa kwamazwana.
  3. Ukusemthethweni: Imvume yakho
  4. Ukuxhumana kwemininingwane: Imininingwane ngeke idluliselwe kubantu besithathu ngaphandle kwesibopho esisemthethweni.
  5. Isitoreji sedatha: Idatabase ebanjwe yi-Occentus Networks (EU)
  6. Amalungelo: Nganoma yisiphi isikhathi ungakhawulela, uthole futhi ususe imininingwane yakho.