C++ को अपनी मशीन पर इंस्टॉल कीजिए

Exercism के अभ्यास अपनी मशीन पर हल करने के लिए C++ को अपने कंप्यूटर पर इंस्टॉल करना सीखिए।


आवश्यकताएँ

C++ भाषा ट्रैक के लिए ज़रूरी है कि आपके सिस्टम पर ये सॉफ्टवेयर इंस्टॉल हों:

  • आधुनिक C++14 कंपाइलर
  • CMake क्रॉस-प्लेटफॉर्म बिल्ड सिस्टम

टेस्टिंग के लिए हम Catch2 इस्तेमाल करते हैं। यह एक हेडर-ओनली लाइब्रेरी है, जो अभ्यासों के साथ ही शामिल आती है।

C++ प्रोजेक्ट्स में ऐसी निर्भरताएँ बहुत आम हैं। इसलिए अगर इन्हें सेट करने में कोई परेशानी आए, तो ऑनलाइन आपको कई मददगार संसाधन मिल जाएँगे।

Microsoft का Visual Studio, Apple का Xcode और JetBrains का CLion समेत कई IDE कंपाइलर और CMake दोनों साथ में देते हैं, इसलिए आपको सिर्फ IDE इंस्टॉल करना पड़ेगा।

आधुनिक C++14 कंपाइलर

इस भाषा ट्रैक के लिए ऐसा कंपाइलर ज़रूरी है जो C++14 को सपोर्ट करता हो, और C++14 साल 2014 में आया था। पिछले कुछ सालों में आए सभी बड़े कंपाइलर इसके साथ चल जाने चाहिए, इसलिए अगर आपका वर्ज़न काफी नया है तो कोई दिक्कत नहीं होगी। खास तौर से, GCC वर्ज़न 7 या उससे नया, Clang वर्ज़न 6 या उससे नया, या Visual Studio 2017 या उससे नया।

CMake

CMake एक ओपन सोर्स क्रॉस-प्लेटफॉर्म बिल्ड सिस्टम है, जो आपके नेटिव बिल्ड सिस्टम (make, Visual Studio, Xcode आदि) के लिए बिल्ड स्क्रिप्ट बनाता है। Exercism का C++ ट्रैक CMake का इस्तेमाल करके आपको एक तैयार बिल्ड देता है, जो:

  • टेस्ट कंपाइल करता है
  • आपके हल को कंपाइल करता है
  • टेस्ट एक्ज़ीक्यूटेबल को लिंक करता है
  • हर बिल्ड के दौरान टेस्ट अपने आप चलाता है
  • अगर कोई भी टेस्ट फेल हो तो बिल्ड को फेल कर देता है

CMake की मदद से Exercism ऐसी क्रॉस-प्लेटफॉर्म बिल्ड स्क्रिप्ट दे पाता है जो Visual Studio और Xcode जैसे इंटीग्रेटेड डेवलपमेंट एनवायरनमेंट के लिए प्रोजेक्ट फाइलें बना सकती है। इससे आपका ध्यान समस्या पर रहता है और हर अभ्यास के लिए बिल्ड सेट करने की चिंता नहीं करनी पड़ती।

पोर्टेबल बिल्ड बनाना आसान नहीं है, और इसके लिए कई तरह के सिस्टम तक पहुँच चाहिए। अगर दी गई CMake रेसिपी में कोई परेशानी आए, तो कृपया समस्या की जानकारी दीजिए, ताकि हम CMake सपोर्ट को बेहतर बना सकें।

दी गई बिल्ड रेसिपी इस्तेमाल करने के लिए CMake 3.5.1 या उससे नया चाहिए।

Windows

Windows इस्तेमाल करने वाले Visual Studio Community ले सकते हैं। यह मुफ़्त डाउनलोड है, जिसमें Visual Studio IDE और Microsoft Visual C++ कंपाइलर का नया वर्ज़न मिलता है।

  1. CMake सेट करने के लिए यहाँ दिए निर्देशों का पालन कीजिए।
  2. exercism cli टूल की मदद से अभ्यास डाउनलोड कीजिए।
  3. Visual Studio 2017 या उससे नया खोलिए (ऊपर दिए लिंक में बताए अनुसार CMake के लिए Visual C++ टूल इंस्टॉल करने के बाद)।
  4. VS में अभ्यास का फोल्डर खोलिए।
  5. "Build->Build the solution" चलाइए। बिल्ड के साथ ही टेस्ट भी चलेंगे और उनका आउटपुट बिल्ड विंडो में दिखेगा। चूँकि टेस्ट बिल्ड के दौरान ही चलते हैं, इसलिए अगर कोई टेस्ट फेल हुआ तो VS इसे बिल्ड फेल बताएगा, और टेस्ट फेल होने के संदेश बिल्ड आउटपुट विंडो में दिखेंगे।

इसी तरह आप JetBrains के CLion जैसे दूसरे इंटीग्रेटेड IDE भी इस्तेमाल कर सकते हैं।

Windows पर Boost इंस्टॉल करना

meetup और gigasecond अभ्यास Boost लाइब्रेरी पर निर्भर करते हैं। इसे सेट करने के चरण नीचे दिए गए हैं।

  1. Boost के लिए पहले से बनी Windows लाइब्रेरी डाउनलोड कीजिए।
    • अभ्यासों के लिए Boost का कम से कम वर्ज़न 1.58 चाहिए।
    • Visual Studio Installer में "Modify" पर क्लिक करके आप MSVC का वर्ज़न देख सकते हैं।
  2. लाइब्रेरी को अपने कंप्यूटर के किसी फोल्डर में एक्सट्रैक्ट कीजिए।
  3. BOOST_ROOT एनवायरनमेंट वेरिएबल को उस फोल्डर पर सेट कीजिए जहाँ आपने Boost लाइब्रेरी इंस्टॉल की है।
  4. अगर यह करते समय Visual Studio खुला था, तो उसे बंद कर दीजिए, ताकि BOOST_ROOT की वैल्यू ज़रूर पढ़ ली जाए।
  5. Visual Studio शुरू कीजिए और gigasecond या meetup अभ्यास वाला फोल्डर खोलिए।
  6. "Startup Item" gigasecond.exe या meetup.exe होना चाहिए, और आपको gigasecond_test.cpp या meetup_test.cpp में बिल्ड एरर मिलेंगी, जो बाकी अभ्यासों की तरह बताएँगी कि कौन सी चीज़ें बनाना बाकी है।

Linux

Linux के सभी हाल के डिस्ट्रीब्यूशन रिलीज़ में C++14 सपोर्ट वाले कंपाइलर होते हैं, इसलिए आप इसे अपने पैकेज मैनेजर से इंस्टॉल कर सकते हैं। हम जिन वर्ज़न का सपोर्ट करते हैं, वे Ubuntu LTS 18.04 में डिफ़ॉल्ट रूप से इंस्टॉल होते हैं।

जैसे, Ubuntu पर gcc इंस्टॉल करने के लिए आप यह कमांड इस्तेमाल करेंगे।

$ sudo apt-get install gcc
$ gcc --version

अगर आपका डिस्ट्रीब्यूशन पुराना है, तो हो सकता है आपके पास C++14 सपोर्ट करने वाला कंपाइलर न हो। ऐसी स्थिति में आपको अपने डिस्ट्रीब्यूशन के हिसाब से पता लगाना होगा कि कम से कम कौन सा कंपाइलर वर्ज़न इंस्टॉल किया जाए।

MacOS

MacOS पर आप Homebrew की मदद से brew install gcc चलाकर GCC इंस्टॉल कर सकते हैं।