में सॉफ़्टवेयर पैकेज कैसे बनाएं, हम एक सॉफ्टवेयर पैकेज कैसे बना सकते हैं। ताकि हमारे सॉफ्टवेयर टार गेंद उपयोगकर्ता निकालने के बाद ठेठ चरणों कर सकते हैं:यूनिक्स/लिनक्स
$ gunzip < mycode.tar.gz | tar xvf -
$ ./configure
$ make
$ make install
में सॉफ़्टवेयर पैकेज कैसे बनाएं, हम एक सॉफ्टवेयर पैकेज कैसे बना सकते हैं। ताकि हमारे सॉफ्टवेयर टार गेंद उपयोगकर्ता निकालने के बाद ठेठ चरणों कर सकते हैं:यूनिक्स/लिनक्स
$ gunzip < mycode.tar.gz | tar xvf -
$ ./configure
$ make
$ make install
जीएनयू/ऑटोूल को समझने में कठिनाई का एक विकल्प सीएमके है।
http://www.cmake.org/cmake/help/examples.html
उदा केडीई इसका उपयोग कर रहा है।
उपयोग autotools कॉन्फ़िगर स्क्रिप्ट (जो Makefile पिछले दो चरणों के लिए आवश्यक उत्पन्न होगा) बनाने के लिए है, तो साथ एक टारबॉल बनाने इसमें आपके सभी कोड और सामान।
जीएनयू ऑटोकॉन्फ़/ऑटोमैट टूलचैन में देखें। Here's a free tutorial/book.
पुराने दिनों में निर्माण करने के लिए एक कमांड है, इस प्रक्रिया को हाथ से किया गया था। प्रत्येक Makefile
हाथ से लिखा गया था (फ़ाइल make
एक प्रकार की स्क्रिप्ट के रूप में उपयोग करती है)। यह पोर्टेबिलिटी के समय समस्याग्रस्त हो गया, और इसलिए configure
लिपि बनाई गई थी। प्रत्येक परियोजना के लिए ./configure
स्क्रिप्ट हाथ से भी लिखी गई थी। आखिरकार यह जीएनयू द्वारा उनके autotools
पैकेज के साथ स्वचालित किया गया था। इसमें autoconf
, automake
और कुछ अन्य शामिल हैं। जबकि विकल्प मौजूद हैं, खासकर make
के लिए, autotools
का व्यापक रूप से उपयोग किया जाता है। ... कम से कम जीएनयू/लिनक्स सिस्टम पर। विकल्पों में पहले से ही उल्लेख किया गया है CMake, Boost.Build, Boost.Jam, SCons, आदि।
Autotools।
आपको एक config.ac और Makefile.am स्क्रिप्ट लिखने की आवश्यकता होगी।
कॉन्फ़िगर.एक बहुत आसान है और इसे आपके स्रोत कोड पर 'ऑटोस्कैन' चलाने से अधिकतर स्वचालित रूप से स्वत: उत्पन्न किया जा सकता है। इससे एक 'config.scan' फ़ाइल उत्पन्न होगी जिसे आपको अंतिम config.ac फ़ाइल जेनरेट करने के लिए ट्विक करने की आवश्यकता होगी।
Automake.am फ़ाइल सभी सम्मेलनों से दूर है। =
AUTOMAKE_OPTIONS = foreign subdir-objects
AM_CXXFLAGS = -std=c++11 -static-libstdc++ -Wall -Werror \
-Wfatal-errors -I blah
AM_LDFLAGS = blah
bin_PROGRAMS = mybinary
mybinary_SOURCES = \
blah.h blah.cc
सब कुछ एक नामकरण स्कीमा पर आधारित है: आप शायद की तरह कुछ की आवश्यकता होगी
तो dist_noinst_DATA इमारत के लिए आवश्यक डेटा फ़ाइलों के लिए है लेकिन स्थापित नहीं हैं।
आप उन फ़ाइलों को आप आमतौर पर की तरह कुछ चलाने की आवश्यकता के दोनों है एक बार:
aclocal & & autoheader & & automake --add-लापता & & autoconf
सेटअप करने के लिएAutotools निर्माण के लिए आवश्यक फ़ाइलें। इसे एक शेल स्क्रिप्ट में रखा जा सकता है और चलने से पहले चलाया जा सकता है ./configure।
जब मैं लिंक किए गए मैनपेज को पढ़ता हूं, तो मुझे लगता है कि मुझसे पूछा गया सवाल का जवाब नहीं लगता है: कि आप पहली जगह प्लेटफ़ॉर्म लचीली निर्माण कैसे प्रदान करते हैं (यानी कॉन्फ़िगरेशन और मेकफ़ाइल लिखने में सहायता) ... rpmbuild ऐसा लगता है कि आपके पास ऐसी चीज है। – dmckee
शायद मैंने सवाल गलत समझा। http://www.lrde.epita.fr/~adl/autotools.html – Sharique