संकलन प्रणाली. साध्या कॉन्फिगरेशनच्या पलीकडे, बनवा, स्थापित करा

सर्व किंवा जवळजवळ सर्व (आणि आपण भाग्यवान नसल्यास) आम्हाला स्त्रोत कोडमधून एक प्रोग्राम संकलित करावा लागला आहे. वास्तविक, बर्‍याच प्रकल्पांमध्ये प्रोग्राम स्थापित करण्यासाठी एक ./ कॉन्फिगर अँड अँड मेक अँड एंड मेक करणे पुरेसे आहे, परंतु आम्ही भिन्न पर्याय पाहणार आहोत.

जीएनयू मेक

जीएनयू मेक ही एक निम्न-स्तरीय संकलन प्रणाली आहे, काही गोष्टी कॉन्फिगर केल्या आहेत आणि चाचण्या केल्या जात नाहीतः

साधक:

  • खूप व्यापक
  • समजण्यास सोपे
  • जलद

बाधक:

  • थोडे कॉन्फिगर करण्यायोग्य
  • राखण्यासाठी कठीण
  • चाचण्या करत नाहीत

make

बीएसडी मेक

बीएसडी मेक ही सध्या बीएसडी ऑपरेटिंग सिस्टमद्वारे वापरली जाणारी मेक ची आणखी एक आवृत्ती आहे. हे जीएनयू मेकपेक्षा भिन्न आहे, जे कार्यक्षमतेत सर्वात व्यापक बीएसडी मेक असूनही ते कमी व्यापक आहे.

साधक:

  • जलद
  • समजण्यास सोपे
  • जीएनयू मेकपेक्षा अधिक वैशिष्ट्ये

बाधक:

  • लिनक्स जगात व्यापक नाही
  • चाचण्या करत नाहीत
  • थोडे कॉन्फिगर करण्यायोग्य
  • राखण्यासाठी कठीण

make

ऑटोटूल

ऑटोटूल ही अधिकृत जीएनयू सिस्टम आहे आणि कॉन्फिगर नावाची स्क्रिप्ट व्युत्पन्न करते जीएनयू मेकमधून संबंधित मेकफाईल जनरेट करण्यासाठी आम्हाला कॉल करणे आवश्यक आहे. हे सर्वत्र पसरलेले आहे, तथापि, जास्तीत जास्त लोकांना (मी समाविष्ट केलेले) असे वाटते की ते खूप अवजड आहे, कठीण आहे, हळू आहे आणि फार अनुकूल नाही.

साधक:

  • अत्यंत कॉन्फिगर करण्यायोग्य
  • खूप व्यापक

बाधक:

  • नॉन-युनिक्स सिस्टममधील पोर्टेबिलिटी
  • बर्‍याच चाचण्या करा (सर्वकाही तपासा आणि सर्व काही सर्वकाही आहे)
  • सेटिंग करताना खूप हळू
  • खराब मागास सुसंगतता

./configure && make

सीएमके

(माझी आवडती प्रणाली) सीएमके एक अशी प्रणाली आहे जी भयानक बॅकवर्ड सुसंगतता आणि पोर्टेबिलिटी सारख्या बर्‍याच बाबींमध्ये ऑटोटूल्सच्या उणीवा पूर्ण करते. तसेच प्रत्येक प्रकल्पांच्या आवश्यकतांसाठी अत्यधिक कॉन्फिगर करण्यायोग्य चाचणी प्रणालीमध्ये सुधारणा करणे. सत्य हे आहे की अधिकाधिक प्रकल्प सीएमके जसे की केडी, पोर्टऑडिओ, ओग्रे 3 डी इत्यादी वापरतात. आम्ही या प्रकारचे सिस्टम सीएमकेलिस्ट.टीएक्सटी फाईलचे आभार मानू शकतो जे एक मेकफाईल किंवा एक्लिप्स किंवा कोडब्लॉक्ससाठी प्रकल्प तयार करेल

साधक:

  • जलद
  • ग्रेट क्रॉस-प्लॅटफॉर्म समर्थन
  • आपण चाचण्या अतिशय सानुकूलित मार्गाने परिभाषित करू शकता

बाधक:

  • प्रथम समजणे कठीण
  • आपल्याला एका अमूर्ततेसह कार्य करावे लागेल जे आधी धडकी भरवणारा असेल
  • थोडेसे वाढले तरी थोडेसे वाढते

cmake . && make

क्यूमेक

QMake ही Qt मधे बनविलेले प्रोजेक्ट्स संकलित करण्यासाठी ट्रोलटेक द्वारा डिझाइन केलेली एक प्रणाली आहे. अशाप्रकारे qmake क्यूटीवर बरेच जोर देते आणि सामान्यत: आयटीई जसे की क्यूटीक्रिएटर द्वारे वापरले जाणारे स्वरूप आहे. क्यूटी प्रोजेक्टमध्ये हे बर्‍यापैकी लोकप्रिय आहे परंतु हे या वातावरणाबाहेर आढळले नाही:

साधक:

  • Qt सह खूप चांगले समाकलित
  • जलद
  • Qt मधे चांगले मल्टीप्लाटफॉर्म

बाधक:

  • क्यूटी अ‍ॅप्सच्या बाहेरील अविशिष्ट

qmake . && make

स्कॉन्स

सी / सी ++ प्रकल्प संकलित करण्यासाठी एसकॉन ही पायथन-आधारित प्रणाली आहे. ऑटोटूलच्या विपरीत, सीएमके किंवा क्यूमेक; स्कॅन मेकफाईल तयार करत नाहीत. स्कॅन खूप बदलण्यायोग्य आहे परंतु हे साध्या ऑपरेशन्समध्ये सर्वात धीमे आहे
साधक:

  • सुलभ फेरबदल
  • गोरा चाचण्या घ्या

बाधक:

  • थोडेसे पसरले
  • हळू

scons

बूस्ट.जॅम

बूस्ट.जॅम ही पर्फोर्स जामची आवृत्ती आहे जी लोकप्रिय सी ++ बूस्ट लायब्ररीत वापरली जाते, जरी संकलन प्रणाली स्वतंत्रपणे वापरली जाऊ शकते. जीएनयू मेक विपरीत, बूस्ट.जॅम जामफाइल्स वापरते, जे मेकफाइल्सची सुधारित आवृत्ती आहे. ते बीओएस / झेटा / हायकू वातावरणात बर्‍यापैकी लोकप्रिय आहेत.

साधक:

  • जलद
  • सर्वात लहान लिहा

बाधक:

  • थोडेसे पसरले
  • चाचण्या करण्यात अडचण

bjam

निन्जा

निन्जा ही Google द्वारे विकसित केलेली एक सिस्टम आहे जी मूलतः क्रोमियम प्रोजेक्टसाठी तयार केलेली एक अल्ट्रा-फास्ट बिल्ड सिस्टम प्रदान करते. निन्जा सुधारित करणे सोपे करण्यासाठी डिझाइन केलेले नाही, त्याच्या स्वत: च्या लेखकांच्या मते, निन्जा निर्माण करणारी प्रणाली सापडली पाहिजे. सीएमके आणि जिपची शिफारस केली जाते.

साधक:

  • माय रायपोडो

बाधक:

  • आपल्याला निन्जा तयार करण्यासाठी दुसर्‍या सिस्टमची आवश्यकता आहे
  • थोडेसे पसरले

ninja

इतर

आपण आपली स्वतःची बॅश किंवा अजगर स्क्रिप्ट सारख्या इतर कोणत्याही प्रणालीचा वापर करू शकता. इतर गैर-मूळ भाषांसाठी जनरेटर देखील आहेत ज्यांचा वापर ग्रीडल, मावेन, जिप इ. सारख्या करता येऊ शकतो.


आपली टिप्पणी द्या

आपला ई-मेल पत्ता प्रकाशित केला जाणार नाही. आवश्यक फील्ड चिन्हांकित केले आहेत *

*

*

  1. डेटा जबाबदार: मिगुएल Áन्गल गॅटन
  2. डेटाचा उद्देशः नियंत्रण स्पॅम, टिप्पणी व्यवस्थापन.
  3. कायदे: आपली संमती
  4. डेटा संप्रेषण: कायदेशीर बंधन वगळता डेटा तृतीय पक्षास कळविला जाणार नाही.
  5. डेटा संग्रहण: ओकेन्टस नेटवर्क (EU) द्वारा होस्ट केलेला डेटाबेस
  6. अधिकारः कोणत्याही वेळी आपण आपली माहिती मर्यादित, पुनर्प्राप्त आणि हटवू शकता.

  1.   abimaelmartell म्हणाले

    मेक एक संकलन प्रणाली नाही, तर स्त्रोत कोडमधील बायनरीज (किंवा लक्ष्य) चे जनरेटर आहे. हे टास्क रनर म्हणूनही वापरले जाऊ शकते.

    मी आपल्याशी फरक करतो की बीएसडी बनवलेले कार्यक्षमतेत विस्तृत आहे, जीएनयू मेक अधिक पूर्ण आहे, त्यात अधिक कार्यक्षमता आहे. आणि मी हे माझ्या स्वतःच्या अनुभवावरून सांगतो, बीएसडीमध्ये मला नेहमीच जीएनयू मेक स्थापित करावा लागतो कारण जीएनयू मेकच्या तुलनेत बीएसडी मेक अगदी सोपा आहे.

    मी आपल्याशी सहमत आहे की ऑटोटूल हे खूपच अवजड आहेत, मी फक्त मेकफाइल वापरणे पसंत करतो. ऑटोटूलद्वारे व्युत्पन्न केलेल्या मेकफाइल्स डीबग करणे कठीण आहे.

    धन्यवाद!

    1.    अ‍ॅड्रियनअरोयोस्ट्रिट म्हणाले

      टिप्पणी दिल्याबद्दल धन्यवाद!
      माझ्या मते जीएनयू मेक नेहमीच मूळ पारंपारिक कार्यक्रमापेक्षा अधिक पारंपारिक आणि विश्वासू राहिला आहे आणि बीएसडी मेक नेहमीच अधिक नाविन्यपूर्ण असेल परंतु तुलना करताना मला इतर गोष्टी लक्षात आल्या असतील.

      ऑटोटूल खरोखर एक मोठी डोकेदुखी आहेत. हायकू ऑपरेटिंग सिस्टमचे योगदानकर्ता म्हणून मला ऑटोटूलद्वारे सॉफ्टवेअर पोर्ट करावे लागले आणि ते नरक आहे. अशी गडबड निराकरण करण्यापूर्वी मी मेकफाईल किंवा सीएमकेलिस्ट.टीएक्सटी तयार करणे समाप्त केल्याची काही प्रकरणे नाहीत.

  2.   चक डॅनिएल्स म्हणाले

    मी सध्या प्रीमके using वापरत आहे, जे लूआ स्क्रिप्टवर आधारित अतिशय कॉन्फिगर करण्यायोग्य आणि सोपे आहे. आपल्याला माहित नसेल तर पहा.
    लेखाबद्दल अभिनंदन, साधा आणि संक्षिप्त, उत्कृष्ट संदर्भ.

  3.   हाडे म्हणाले

    मेक वापरल्यानंतर संकलन तपासण्यासाठी 'मेक चेक' चा वापर केला जातो
    शुभेच्छा