A C++ telepítése helyben

Tanuld meg, hogyan telepítsd helyben a C++-t, hogy a saját gépeden oldd meg az Exercism feladatait


Előfeltételek

A C++ kurzushoz a következő szoftvereknek kell telepítve lenniük a gépeden:

  • egy modern C++14-es fordító
  • a CMake platformfüggetlen buildrendszer

A teszteléshez a Catch2-t használjuk, amely egy csak fejlécfájlokból álló könyvtár, és a feladatokkal együtt érkezik.

Ez a függőségi kör nagyon gyakori a C++ projekteknél, így ha bármi gondod akadna a beállításával, rengeteg hasznos anyagot találsz majd az interneten.

Sok IDE, köztük a Microsoft Visual Studio, az Apple Xcode és a JetBrains CLion, együtt telepíti a fordítót és a CMake-et, így elég csak az IDE-t telepítened.

Modern C++14-es fordító

Ez a kurzus olyan fordítót igényel, amely támogatja a C++14-et, amely 2014-ben jelent meg. Az elmúlt néhány évben megjelent nagyobb fordítók mind kompatibilisek, így ha viszonylag friss verziót használsz, nem lesz gond. Konkrétan: GCC 7-es vagy újabb verzió, Clang 6-os vagy újabb verzió, illetve Visual Studio 2017 vagy újabb.

CMake

A CMake egy nyílt forráskódú, platformfüggetlen buildrendszer, amely build szkripteket generál a saját natív buildrendszeredhez (make, Visual Studio, Xcode stb.). Az Exercism C++ kurzusa CMake-et használ, hogy egy kész buildet adjon neked, amely:

  • lefordítja a teszteket
  • lefordítja a megoldásodat
  • linkeli a futtatható tesztprogramot
  • minden build részeként automatikusan lefuttatja a teszteket
  • meghiúsítja a buildet, ha bármelyik teszt elbukik

A CMake használatával az Exercism olyan platformfüggetlen build szkriptet tud adni, amely projektfájlokat generál olyan integrált fejlesztői környezetekhez, mint a Visual Studio és az Xcode. Így a feladatra összpontosíthatsz, és nem kell azzal bajlódnod, hogy minden feladathoz külön buildet állíts be.

Nem könnyű hordozható buildet összehozni, hiszen sokféle rendszerhez kell hozzáférni. Ha bármi problémába ütközöl a mellékelt CMake-recepttel, kérünk, jelentsd a hibát, hogy javíthassuk a CMake-támogatást.

A mellékelt build recept használatához CMake 3.5.1 vagy újabb szükséges.

Windows

A Windows-felhasználók letölthetik a Visual Studio Community-t, amely egy ingyenes letöltés, és megadja a Visual Studio IDE-t meg a Microsoft Visual C++ fordító legfrissebb verzióját.

  1. A CMake beállításához kövesd az itteni utasításokat.
  2. Töltsd le a feladatot az Exercism CLI eszközzel.
  3. Nyisd meg a Visual Studio 2017 vagy újabb verzióját (a fenti linken leírtak szerint telepített Visual C++ CMake-eszközökkel).
  4. Nyisd meg a feladat mappáját a VS-ben.
  5. Futtasd a „Build->Build the solution" parancsot. A tesztek a builddel együtt futnak le, a kimenet pedig a build ablakában jelenik meg. Mivel a teszt a build során fut, a VS buildhibának jelzi, ha valamelyik teszt elbukik, és a teszthiba üzenetei a build kimeneti ablakában lesznek.

Más integrált IDE-ket, például a JetBrains CLiont is használhatod hasonló módon.

A Boost telepítése Windows alatt

A meetup és a gigasecond feladat a Boost könyvtárakra épül. A következő lépések leírják, hogyan állítsd be.

  1. Töltsd le a Boost előre lefordított windowsos könyvtárait.
    • A feladatokhoz legalább 1.58-as Boost-verzió kell.
    • Az MSVC verzióját úgy találod meg, hogy a Visual Studio Installerben a „Modify" gombra kattintasz.
  2. Csomagold ki a könyvtárakat egy helyi mappába.
  3. Állítsd be a BOOST_ROOT környezeti változót arra a mappára, ahová a Boost könyvtárakat telepítetted.
  4. Ha eközben nyitva volt a Visual Studio, zárd be, hogy biztosan érvénybe lépjen a BOOST_ROOT értéke.
  5. Indítsd el a Visual Studiót, és nyisd meg a gigasecond vagy a meetup feladatot tartalmazó mappát.
  6. A „Startup Item" legyen gigasecond.exe vagy meetup.exe, és a gigasecond_test.cpp vagy a meetup_test.cpp fájlban buildhibákat kell kapnod, amelyek a hiányzó elemek implementálására szólítanak fel, hasonlóan a többi feladathoz.

Linux

A legutóbbi Linux-disztribúciók mind kompatibilis C++14-es fordítóval rendelkeznek, így a csomagkezelőddel telepítheted. Az általunk támogatott verziók az Ubuntu LTS 18.04 alapértelmezett telepített verziói.

Ubuntun például a következő paranccsal telepítheted a gcc-t.

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

Ha régebbi disztribúciót használsz, lehet, hogy nincs C++14-et támogató fordítód. Ebben az esetben a disztribúcióddal együtt kell kiderítened, hogyan telepíthető a minimális fordítóverzió.

MacOS

A MacOS-felhasználók a Homebrew segítségével telepíthetik a GCC-t a brew install gcc paranccsal.