सामग्री पर जाएँ
Topos Uranos

सारांश

यह पाठ उस परिवेश को स्थापित और जाँचा हुआ छोड़ता है जिसके साथ पूरे पाठ्यक्रम में काम किया जाएगा। यह पहले बताता है कि क्या स्थापित किया जाता है और क्यों: एक कंपाइलर, जो एक अलग प्रोग्राम है; एक संपादक, Visual Studio Code, जो उसे बुलाता है; उसका आधिकारिक C++ एक्सटेंशन; और टर्मिनल, जिससे कंपाइलर को बिना किसी मध्यस्थ के बुलाया जाता है। इसके बाद यह हर सिस्टम के लिए पूरी मार्गदर्शिका देता है: Windows में UCRT64 परिवेश और GCC के साथ MSYS2, या विकल्प के रूप में Microsoft का कंपाइलर; macOS में Clang सहित Xcode के कमांड लाइन टूल, या Apple का संस्करण पर्याप्त न हो तो Homebrew का GCC; Linux में Debian और Ubuntu, Fedora तथा Arch में डिस्ट्रीब्यूशन का GCC। फिर संपादक और उसके एक्सटेंशन की स्थापना आती है, जो तीनों सिस्टमों में एक जैसी है, और Windows कंसोल का कॉन्फ़िगरेशन, ताकि वह टेक्स्ट को UTF-8 में लिखे और पढ़े। अंत में एक जाँच प्रोग्राम है, जो हिंदी की एक पंक्ति और कंपाइलर द्वारा लागू किया गया C++ मानक लिखता है, और स्थापना की आम खराबियाँ हैं, हर एक अपने कारण और उपाय के साथ।

अधिगम उद्देश्य

  1. अपने सिस्टम पर C++23 का समर्थन करने वाला कंपाइलर स्थापित करना और टर्मिनल से उसका संस्करण जाँचना।
  2. Visual Studio Code और उसका आधिकारिक C++ एक्सटेंशन स्थापित करना, और उससे एक कार्य फ़ोल्डर खोलना।
  3. पहला जाँच प्रोग्राम टर्मिनल से और संपादक से कंपाइल करना और चलाना।
  4. स्थापना की कम से कम तीन आम खराबियों (कंपाइलर नहीं मिलता, पुराना संस्करण, मानक पहचाना नहीं जाता) का निदान करना और उन्हें दूर करना।

क्या स्थापित किया जाता है और क्यों

पाठ प्रोग्राम, कंपाइलर और C++ में देखा गया कि C++ में लिखा प्रोग्राम जैसा लिखा है वैसा ही नहीं चलता: एक कंपाइलर उसे एक एक्ज़ीक्यूटेबल फ़ाइल में अनुवादित करता है, यानी मशीन निर्देशों वाली ऐसी फ़ाइल जिसे ऑपरेटिंग सिस्टम चालू कर सकता है। यदि ऐसा है, तो प्रोग्रामिंग के लिए कम से कम दो अलग चीज़ें चाहिए: प्रोग्राम का टेक्स्ट लिखने की एक जगह और एक अनुवादक जो उसे एक्ज़ीक्यूटेबल में बदले। पहली चीज़ संपादक देता है; दूसरी, कंपाइलर। ये अलग-अलग प्रोग्राम हैं, जो अलग-अलग स्थापित होते हैं और अलग-अलग खराब हो सकते हैं, और इन्हें आपस में नहीं मिलाना चाहिए: संपादक कुछ भी कंपाइल नहीं करता, बल्कि कंपाइलर से कंपाइल करने को कहता है और जो वह उत्तर देता है उसे दिखाता है।

इस अलगाव का एक व्यावहारिक परिणाम है, जिस पर इस पाठ की सभी मार्गदर्शिकाएँ टिकी हैं। जब संपादक “कंपाइल करता है”, तो वास्तव में वह टर्मिनल में g++ main.cpp -o main जैसी एक कमांड लिखता है, ठीक वैसे ही जैसे विद्यार्थी स्वयं लिख सकता है। इससे निकलता है कि संपादक जो कुछ करता है वह सब हाथ से टर्मिनल में भी किया जा सकता है, जो वह टेक्स्ट विंडो है जिसमें ऑपरेटिंग सिस्टम के लिए कमांड लिखी जाती हैं; और यह कि यदि संपादक खराब हो, तो टर्मिनल से पता लगाया जा सकता है कि दोष संपादक में है या कंपाइलर में। इसलिए पाठ्यक्रम पहले दिन से दोनों के साथ काम करता है: संपादक सुविधा के लिए, टर्मिनल यह जानने के लिए कि क्या हो रहा है।

स्थापित किए जाने वाले हिस्से चार हैं।

  • कंपाइलर, अपनी मानक लाइब्रेरी के साथ। पाठ्यक्रम C++23 मानक का उपयोग करता है, इसलिए कंपाइलर को उसे पहचानना चाहिए और उसकी लाइब्रेरी में हेडर <print> होना चाहिए, जो std::println देता है। Windows और Linux में GCC (जिसकी C++ के लिए कमांड g++ है) का उपयोग होगा, और macOS में Clang (clang++) का। GCC 15 या उसके बाद का संस्करण चाहिए: हेडर <print> संस्करण 14 के साथ GCC की लाइब्रेरी में आया, लेकिन std::println से पूरा संग्रह लिखने की सुविधा, जिसका उपयोग पाठ्यक्रम पाठ प्रोग्राम, कंपाइलर और C++ से और आगे के कई पाठों में करता है, केवल 15 के साथ आई। macOS में Xcode 16 या उसके बाद के टूल चाहिए।
  • संपादक: Visual Studio Code, जो निःशुल्क है और तीनों सिस्टमों में एक ही प्रोग्राम है, इसलिए पाठ्यक्रम के निर्देश सब पर लागू होते हैं।
  • Visual Studio Code के लिए Microsoft का आधिकारिक C/C++ एक्सटेंशन, जो संपादक को भाषा सिखाता है: कोड को रंगता है, लिखते समय त्रुटियाँ दिखाता है, नाम पूरे करता है और कंपाइलर तथा डिबगर को बुलाना जानता है।
  • डिबगर, Windows और Linux में GDB, macOS में LLDB: एक प्रोग्राम जो निष्पादन को रोककर किसी प्रोग्राम की स्थिति देखने देता है। इसे अभी कंपाइलर के साथ स्थापित किया जाता है और इसका उपयोग इकाई 4 से होगा।

आगे की मार्गदर्शिकाएँ एक-दूसरे से स्वतंत्र हैं: हर विद्यार्थी अपने सिस्टम वाली मार्गदर्शिका का पालन करता है और फिर Visual Studio Code वाले अनुभाग पर पहुँचता है। कमांड वाले ब्लॉकों में, पंक्ति के आरंभ का चिह्न $ टर्मिनल के प्रॉम्प्ट को दर्शाता है और लिखा नहीं जाता; जिन पंक्तियों में यह नहीं है वे टर्मिनल का उत्तर हैं। यहाँ बताई गई आधिकारिक साइटें ही वे स्थान हैं जहाँ से डाउनलोड करना उचित है: कहीं और से लिया गया इंस्टॉलर पुराना या छेड़छाड़ किया हुआ हो सकता है।