nim-lang/Nim

Build Status

Ez a tároló tartalmazza a Nim fordítót, a Nim stdlib-jét, az eszközöket és a dokumentációt.További információ a Nim-ről, beleértve a letöltéseket és a legújabb kiadás dokumentációját, nézze meg a Nim webhelyét vagy a bleeding edge docs-t.

közösség

csatlakozzon az IRC csevegéshezcsatlakozzon a Discord szerverhezcsatlakozzon a Gitter csevegéshezkérjen segítségetview nim hozzászólás Stack túlcsorduláskövesse @nim_lang a Twitteren

  • a fórum – a legjobb hely, hogy kérdéseket feltenni, és hogy megvitassák nim.
  • #nim IRC csatorna (Freenode)-a Nim valós idejű megvitatásának helye.Ahol a legtöbb fejlesztési döntés születik.
  • Discord – egy további hely a Nim valós idejű megvitatására. A legtöbb csatorna az IRC-hez van áthidalva.
  • Gitter-egy további hely, hogy megvitassák Nim valós időben. Van egy híd Gitter és az IRC csatorna között.
  • távirat-egy további hely a Nim valós idejű megvitatására. Ott van a hivatalos Telegram csatorna. Nincs áthidalva az IRC-hez.
  • Stack Overflow – népszerű Q / A webhely a kapcsolódó témák programozásához, amely a Nim-ről szóló bejegyzéseket tartalmaz.
  • Github Wiki – egyéb felhasználói tartalom.

fordítás

a fordító jelenleg hivatalosan támogatja a következő platform andarchitektúra kombinációk:

  • Windows (Windows XP vagy újabb) – x86 és x86_64
  • Linux (a legtöbb, ha nem az összes disztribúció) – x86, x86_64, ppc64 és armv6l
  • Mac OS X (10.04 vagy újabb) – x86, x86_64 és ppc64

Több platform támogatott, azonban ezeket nem tesztelik rendszeresen és lehet, hogy nem olyan stabilak, mint a fent felsorolt platformok.

a Nim fordító összeállítása meglehetősen egyszerű, ha követi ezeket a lépéseket:

először a Nim fordító régebbi verziójának C forrására van szükség a legújabb verzió Bootstrap-jához, mert maga a Nim fordító az IM programozási nyelven íródott. Ezek a C források anim-lang/csources adattárban érhetők el.

ezután a forrásból való építéshez szüksége lesz:

  • egy C fordítóra, például gcc 3.x / újabb vagy egy alternatíva, például clangVisual C++vagy Intel C++. Ajánlott a gcc 3 használata.x orlater.
  • vagy gitvagy wget a szükséges forrástárak letöltéséhez.
  • abuild-essential csomag agcc Ubuntuban (és valószínűleg más disztrókban is).
  • Windows rendszeren a MinGW 4.3.0 (GCC 8.10) a minimálisan ajánlott fordító.
  • Nim egy ismert működő MinGW disztribúciót tárol:
    • MinGW32.7z
    • MinGW64.7z

Windows megjegyzés: a Cygwin és hasonló POSIX futásidejű környezetek nem támogatottak.

ezután, ha a * Nix rendszer vagy a Windows, a következő lépéseket kell compileNim forrásból a gccgit, és a koch build eszköz.

Megjegyzés: A következő parancsok a fordító fejlesztési verziójára vonatkoznak.A legtöbb felhasználó számára elegendő a legújabb stabil verzió telepítése. Nézze meg a weboldalon található telepítési utasításokat: https://nim-lang.org/install.html.

a csomag karbantartói számára: lásd a csomagolási irányelveket.

először szerezze be a Nim-et a github-ból:

git clone https://github.com/nim-lang/Nim.gitcd Nim

ezután futtassa a megfelelő build shell szkriptet a platformjához:

  • build_all.sh (Linux, Mac)
  • build_all.bat (Windows)

a Windowshoz számos olyan parancsfájl szükséges, amely egyéb függőségek, amelyeket telepítenie kell, beleértve a pcre-t és az OpenSSL-t. A Nim egy zip csomagot tartalmaz, amely itt tartalmazza a szükséges DLL-ek ismert működő verzióit.

végül, miután befejezte a build lépéseket (Windows, Mac vagy Linux rendszeren) hozzá kell adnia a bin könyvtárat az elérési útjához.

Lásd még a fordító újjáépítése.

Koch

koch az a build eszköz, amelyet többek között a Nim különböző részeinek felépítésére, valamint a generatedocumentation és a weboldal létrehozására használnak. A koch eszköz a Nim tesztcsomag futtatásához is használható.

feltételezve, hogy hozzáadta a NIM bin könyvtárát az elérési útjához, a teszteket a ./koch testshasználatával hajthatja végre. A tesztek futtatása eltart egy ideig, de önfuttathatja a tesztek egy részhalmazát egy kategória megadásával (például./koch tests cat async).

a koch build eszközről további információt a DOC/koch dokumentációjában talál.első fájl.

fürge

nimble a Nim csomagkezelője. Ha többet szeretne megtudni róla, olvassa el anim-lang/nimble adattárat.

közreműködők

Ez a projekt minden közreműködőnek köszönhetően létezik.

közreműködő

támogatók a nyílt kollektívánszponzorok a nyílt kollektívánállítson be egy bounty-t a Bountysource segítségéveladományoz bitcoinnyílt forráskódú segítők

lásd a részletes hozzájárulási irányelveket.Örömmel fogadunk minden hozzájárulást a Nim-hez, függetlenül attól, hogy milyen kicsiek vagy nagyok. Mindent a helyesírási javításoktól kezdve az új modulokig, amelyeket be kell építeni a standard könyvtárba, örömmel fogadjuk és értékeljük. A hozzájárulás megkezdése előtt ismerkedjen meg a következő adattárszerkezettel:

  • bin/build/ – ezek a könyvtárak üresek, de a Nim felépítésekor használatosak.
  • compiler/ – a fordító forráskódja. Tartalmazza a nimfix-et és acompiler/nimfix és compiler/plugins plugineket is.
  • nimsuggest – a nimsuggest eszköz, amely korábban a nim-lang/nimsuggest adattárban élt.
  • config/ – a fordító és a dokumentációgenerátor konfigurációja.
  • doc/ – a dokumentációs fájlok reStructuredText formátumban.
  • lib/ – a standard könyvtár, beleértve:
    • pure/ – modulok a standard könyvtár írt tiszta Nim.
    • impure/ – modulok a standard könyvtár írt tiszta Nim withdependencies írt más nyelveken.
    • wrappers/ – modulok, amelyek más nyelveken írt függőségeket csomagolnak.
  • tests/ – kategorizált teszteket tartalmaz a fordító és a standard könyvtár számára.
  • tools/ – a következő eszközök: niminst és nimweb (többnyire akoch).
  • koch.nim – a Nim indításához, C források létrehozásához, a weboldal felépítéséhez és a dokumentáció létrehozásához használt eszköz.

Ha nem ismeri a GitHub és / vagy a git használatával történő lekérési kérelmet, kérjük, olvassa el ezt az útmutatót.

ideális esetben meg kell győződnie arról, hogy minden teszt sikeres-e, mielőtt benyújtja a pull kérést.Ha azonban kevés az idő, akkor csak futtathatja a saját tesztjeitváltozások csak a megfelelő tesztkategóriák futtatásával. A Travis CI ellenőrzi, hogy minden teszt sikeres-e, mielőtt engedélyezné a húzási kérelem elfogadását, ezért csak a meghatározott tesztek futtatásának ártalmatlannak kell lennie.Az integrációs teszteket tests/untestablekell elvégezni.

Ha keres a módját, hogy hozzájáruljon, kérjük, nézd meg a probléma tracker.Mindig rengeteg probléma van Easy; ezeknek jó kiindulópontnak kell lenniük a Nim-hez való kezdeti hozzájáruláshoz.

adományokkal is segíthetsz a Nim fejlesztésében. Az adományok a következők segítségével készülhetnek:

  • nyílt kollektíva
  • Bountysource
  • Bitcoin

Ha bármilyen kérdése van, nyugodtan küldjön kérdést a theNim fórumon, vagy az IRC-n keresztül a #nim csatornán.

támogatók

Köszönjük minden támogatónknak!

szponzorok

támogassa ezt a projektet szponzorként. Az Ön logója itt jelenik meg egy linkkel a webhelyére.

azt is látni egy listát az összes szponzorok/támogatók a különböző fizetési szolgáltatások a szponzorok oldalon honlapunkon.

licenc

a fordító és a standard könyvtár MIT licenc alatt van licencelve, kivéve néhány olyan modult, amely kifejezetten másként rendelkezik. Ennek eredményeként bármilyen kompatibilis licencet (lényegében bármilyen licencet) használhat az nim-mel kifejlesztett saját programjaihoz. Kifejezetten engedélyezett kereskedelmi alkalmazások fejlesztése a Nim használatával.

kérjük, olvassa el a másolást.txt fájl további részletekért.

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.