GNU Make Book - Linux Build Automation'i Demystifying

Linux ilə əlaqədar yazıların yanı sıra dağılımlar və alətlər haqqında təhlil və dərslər yazmaq kimi mən də proqram inkişafına çox cəlb edirəm. Təəssüf ki, bu proqram inkişafının 99,9% Windows platformasında baş verir.

C ++, Visual Basic, VB.NET və C # geliştiricisi kimi 20 ildən çox təcrübəm var və mən də DBA və geliştirici kimi SQL Server ilə dab ələkəm.

Mən çox yaxşı deyiləm, Linux üçün proqram hazırlayıram. Bu, həqiqətən, heç vaxt məni narahat etməyən bir şeydir. Əsas səbəbi günün proqram təminatını inkişaf etdirməkdən sonra sonuncu şeyin daha çox proqram yazmaqdan ibarətdir.

Şübhəsiz ki, skript yazmağı və qəribə kiçik proqram yazmağı sevirəm. Bunlar adətən Raspberry PI-də elektronik bazlı layihələr üçün nəzərdə tutulub .

Birincisi, Windows platformasında bir çox inkişaf edənlər ilk Linux-a keçərkən narahatlıqla qarşılaşacaqları bir proqram yaratmaq və paketləmək üçün lazım olan alətlər haqqında öyrənirlər.

İndiyə qədər inkişaf etdirmək üçün ən asan tətbiq növü web proqramlarıdır, çünki ümumiyyətlə tərtib edilmiş kodu (PHP, Perl, Python) tələb etmir və fayllar veb serverdə müəyyən yerə yerləşdirilir.

C, C + + və ya Python istifadə edərək, Linux üçün hazırlanmış çox sayda ərizə hazırlanır. Bir C proqramının tərtib edilməsi nisbətən asandır, ancaq birdən çox asılılıqla bir sıra C proqramları tərtib etmək lazımdırsa, işlər bir az daha çətin olur.

GNU Make, proqramlarınızı təkrar və müxtəlif yollarla tərtib etməyə kömək edən qurma avtomatlaşdırma scripting vasitədir. Məsələn, dəyəri 64-bit və ya 32-bit istifadə edərək bir proqram tərtib edəcək bir parametr təmin edə bilər.

GNU Make kitabının istifadəçiləri GNU Make ilə əlaqəli çətinliklərin daha möhkəm bir şəkildə qalmasına kömək etmək üçün John Graham-Cumming tərəfindən yazılmışdır.

Kitab altı fəsildən ibarətdir:

  1. Əsaslar yenidən nəzərdən keçirildi
  2. Makefile Debugging
  3. Tikinti və yenidən qurulması
  4. Təəccüblər və problemlər
  5. Zarfı itələmək
  6. GNU Standard Kitabxana yarat

Kitabın həqiqətən yeni başlayanlar üçün nəzərdə tutulduğuna inanmıram, çünki "GNU nədir?", "Necə bir fayl yaratmaq olar?", "Niyə faylı yaratmaq olar?", "Niyə" Hər bir proqramı bir-bir tərtib etməkdən daha yaxşı olun? " və "GNU Make istifadə edərək proqramları necə tərtib edə bilərəm?". Bu mövzuların hamısı GNU Make kitabında əhatə olunur.

Birinci fəslin "Əsaslar" adlı əsəri "Əsaslar" olaraq adlandırılan həqiqət, başlamadan əvvəl mövzu ilə əlaqədar bir təməlin olması gözlənildiyini açıq şəkildə göstərir.

Birinci fəsildə dəyişənlərin istifadəsi, əmrlər tərəfindən istifadə edilən mühit və $ (Shell) mühiti kimi bütün əsaslar əhatə olunur. Fəsil sizə uyğunlaşdıqca müqayisə, siyahı və istifadəçi funksiyalarına daxil olun.

GNU Make'ü bir az müddət istifadə edirsinizsə də, özünüzü bir mütəxəssis hesab etmirsinizsə, dərhal görünə bilməyəcəyi bəzi incəlikləri anlamanıza kömək edəcək bəzi gözəl göstərişlər və göstərişlər var.

İkinci bölmə, skript yazıları içərisində səhvləri düzəltməyə çalışdıqlarınız üçün bir ibrət olacaq. "Makefile Debugging" bölməsi mükəmməl göstərişlər və Makefile diskussiyalar üçün məsləhətlər ilə doludur və dəyişən dəyərlərin çap edilməsi və hətta hər bir dəyişənin dəyərini boşaltmaq üçün bölmələr daxildir. Fəsilə əlavə olaraq, skriptlərdən keçmək üçün istifadə edə biləcəyiniz GNU Debugger kitabçası var.

Üçüncü fəsildə makefile nümunə nümunəsi var, ancaq daha çox, təkrar çalıştırabileceğiniz Makefiles'i necə yaratdığınızı göstərir.

"Tuzlar və Problemlər" kimi = və: = və ifndef və? = Kimi müəyyən terminlər arasındakı fərqlərə baxır.

Kitabda daha çox getdiyimdə, GNU Make istifadə etmək üçün fəal deyiləm və mənim məlumatım çox əsas səviyyədə olduğundan, bəzi məsələlər mənim başımdan çox olurdu.

Mən "Zərgini itələmək" bölümünə gəldiyim zaman gözlərim bir qədər şüşəli idi.

Mənim əsas xülasəm, əgər bu kitabı yekunlaşdırmaq istərdimsə, müəllif öz malını dəqiq bilir və mümkün qədər çox məlumat verməyə çalışmışdır.

Məsələ bəzən bir mövzunun ekspertinin bir şey yazmağa çalışdıqları zaman bu "oh asan, bunu etmək lazım olan bütün ..." aura var.

Arxa qapağımdakı rezin möhür ötən həftə başlamışdı və yalnız bir neçə yaşında olduğu üçün hələ də zəmanətdə olduğu kimi onu təchiz edən şirkət adlandırdım.

Telefondakı xanım dedi: "Yaxşı ki, sənə yeni bir möhür göndərəcəyəm".

Mən "Mən bunu edə bilərəmmi?" Deyə soruşdum.

Cavab "Əlbəttə, edə bilərsiniz, hamısını etmək, qapıdan çıxarmaq, mühürə uyğun və qapını geri qoymaqdır".

İndi mənim ani düşüncəm "Woah, bir az geri qayıt, qapını aç!"? Idi. Mən bir qapı çıxarmaq, bir möhürü sığdırmaq və qapını təkrar etmək hüququna malik deyiləm. Bunu mütəxəssislərə buraxıram.

Bu kitabla, mən sizə faydalı olduğunu tapa bilməyinizdən əvvəl başqa bir kitab və Makefiles yazan bir sıra təcrübə lazım olduğunu düşünürəm.

Hesab edirəm ki, göstərişlər, göstərişlər və məlumatlar bəzi insanlara "Oh, buna görə də bunu edir" və ya "bunu bunu edə biləcəyini başa düşmədim" deyə kömək edəcəkdir.

Buna görə mənim qiymətləndirməyiniz, aydınlaşdırma və ya GNU Make haqqında daha çox qabaqcıl məlumat əldə etmək istəyənlər üçün bu kitabın satın alınmasıdır, lakin yeni başlayanlar üçün bir kitab deyildir.