to repozytorium zawiera kompilator Nim, stdlib Nim, narzędzia i dokumentację.Aby uzyskać więcej informacji na temat Nim, w tym pliki do pobrania i dokumentację najnowszego wydania, odwiedź witrynę Nim lub dokumenty bleeding edge.
społeczność
- forum – najlepsze miejsce do zadawania pytań i dyskutowania o nim.
- #nim kanał IRC (Freenode) – miejsce do dyskusji o Nim w czasie rzeczywistym.Również tam, gdzie większość decyzji rozwojowych się.
- Niezgoda – dodatkowe miejsce do dyskusji o Nim w czasie rzeczywistym. Większość kanałów jest połączona z IRC.
- Gitter – dodatkowe miejsce do dyskusji o Nim w czasie rzeczywistym. Istnieje pomost pomiędzy Gitterem a kanałem IRC.
- Telegram – dodatkowe miejsce do dyskusji o Nim w czasie rzeczywistym. Jest oficjalny kanał Telegram. Nie podłączony do IRC.
- Stack Overflow-popularna strona Do Programowania relatedtopics zawierająca posty o Nim.
- Github Wiki-różne treści dodane przez użytkownika.
Kompilowanie
kompilator obecnie oficjalnie obsługuje następujące kombinacje platform i:
- Windows (Windows XP lub nowszy) – x86 i x86_64
- Linux (większość, jeśli nie wszystkie, dystrybucje) – x86, x86_64, ppc64 i armv6l
- Mac OS X (10.04 lub nowszy) – x86, x86_64 i ppc64
Więcej Platform jest obsługiwanych, jednak nie są one regularnie testowane i nie mogą być tak stabilne jak wyżej wymienione Platformy.
skompilowanie kompilatora Nim jest dość proste, jeśli wykonasz następujące kroki:
Po pierwsze, źródło C starszej wersji kompilatora Nim jest potrzebne, aby uruchomić najnowszą wersję, ponieważ sam kompilator Nim jest napisany w języku programowania theNim. Te źródła C są dostępne w repozytoriumnim-lang/csources
.
następnie, aby zbudować ze źródła, będziesz potrzebował:
- kompilatora C, takiego jak
gcc
3.x / later lub alternatywą, taką jakclang
Visual C++
lubIntel C++
. Zaleca się użyciegcc
3.x orlater. - albo
git
lubwget
, aby pobrać potrzebne repozytoria źródłowe. - pakiet
build-essential
podczas używaniagcc
na Ubuntu (i prawdopodobnie także na innych dystrybucjach). - w Windows MinGW 4.3.0 (GCC 8.10) jest minimalnym zalecanym kompilatorem.
- nim hostuje znaną działającą dystrybucję MinGW:
- MINGW32.7z
- Mingw64.7z
Windows Uwaga: Cygwin i podobne środowiska uruchomieniowe POSIX nie są obsługiwane.
następnie, jeśli jesteś w systemie *nix lub Windows, następujące kroki powinny skompilować ze źródła za pomocą gcc
git
I koch
narzędzie do budowania.
uwaga: poniższe polecenia są przeznaczone dla wersji deweloperskiej kompilatora.Dla większości użytkowników wystarczy zainstalowanie najnowszej stabilnej wersji. Sprawdź instrukcję instalacji na stronie internetowej, aby to zrobić: https://nim-lang.org/install.html.
dla opiekunów opakowań: patrz wytyczne dotyczące pakowania.
najpierw pobierz Nim z Githuba:
git clone https://github.com/nim-lang/Nim.gitcd Nim
następnie uruchom odpowiedni skrypt powłoki kompilacji dla Twojej platformy:
-
build_all.sh
(Linux, Mac) -
build_all.bat
(Windows)
Windows wymaga numeru innych zależności, które może być konieczne do zainstalowania, w tym pcre i OpenSSL. Nim hostuje pakiet zip zawierający znane działające wersje wymaganych bibliotek DLL.
wreszcie, po zakończeniu kroków budowania (w systemach Windows, Mac lub Linux) należy dodaćbin
do swojej ścieżki.
Zobacz też: przebudowa kompilatora.
Koch
koch
to narzędzie służące do budowania różnych części Nim oraz generowania dokumentacji i strony internetowej, między innymi. Narzędziekoch
może być również użyte do uruchomienia zestawu testów Nim.
zakładając, że dodałeś do swojej ścieżki katalog Nim bin
, możesz wykonać testy używając ./koch tests
. Testy trwają chwilę, ale można uruchomić podzbiór testów, określając kategorię (na przykład./koch tests cat async
).
aby uzyskać więcej informacji na tematkoch
narzędzie do budowania, zobacz dokument w dokumencie doc / koch.plik rst.
Nimble
nimble
jest menedżerem pakietów Nim. Aby dowiedzieć się więcej na ten temat, zobacznim-lang/nimble
repozytorium.
Contributors
Ten projekt istnieje dzięki wszystkim osobom, które wnoszą wkład.
przyczynianie się
Zobacz szczegółowe wskazówki dotyczące wkładu.Mile widziane są wszystkie wkłady do Nim, niezależnie od tego, jak małe lub duże są. Wszystko, od poprawek ortograficznych po nowe moduły, które mają być zawarte w bibliotece thestandard, jest mile widziane i doceniane. Zanim zaczniesz dodawać, powinieneś zapoznać się z następującą strukturą repozytorium:
-
bin/
build/
– te katalogi są puste, ale są używane podczas budowania Nim. -
compiler/
– kod źródłowy kompilatora. Zawiera również nimfix i wtyczki wcompiler/nimfix
Icompiler/plugins
odpowiednio. -
nimsuggest
– narzędzie nimsuggest, które wcześniej działało w repozytoriumnim-lang/nimsuggest
. -
config/
– konfiguracja dla kompilatora i generatora dokumentacji. -
doc/
– pliki dokumentacji w formacie reStructuredText. -
lib/
– biblioteka standardowa, w tym:-
pure/
– Moduły w bibliotece standardowej napisane czystym Nim. -
impure/
– Moduły w bibliotece standardowej napisane czystym Nim, z zależnościami napisanymi w innych językach. -
wrappers/
– Moduły zawijające zależności napisane w innych językach.
-
-
tests/
– zawiera skategoryzowane testy dla kompilatora i biblioteki standardowej. -
tools/
– narzędzia, w tymniminst
Inimweb
(najczęściej wywoływane przezkoch
). -
koch.nim
– narzędzie służące do bootstrap Nim, generowania źródeł C, budowania Strony oraz generowania dokumentacji.
Jeśli nie jesteś zaznajomiony z tworzeniem pull request za pomocą GitHub i / lub git, zapoznaj się z tym przewodnikiem.
najlepiej, aby wszystkie testy przeszły przed wysłaniem pull request.Jeśli jednak masz mało czasu, możesz po prostu uruchomić testy specyficzne dla yourchanges, uruchamiając tylko odpowiednie kategorie testów. Travis CI sprawdza, czy wszystkie testy przechodzą przed zaakceptowaniem pull request, więc tylko wykonywanie konkretnych testów powinno być nieszkodliwe.Testy integracyjne powinny przejść w tests/untestable
.
Jeśli szukasz sposobów, aby wnieść swój wkład, zajrzyj do naszego śledzenia problemów.Zawsze jest wiele spraw oznaczonych Easy
; powinny one być dobrym punktem wyjścia dla początkowego wkładu w Nim.
Możesz również pomóc w rozwoju Nim, dokonując darowizn. Darowizny można składać za pomocą:
- Open Collective
- Bountysource
- Bitcoin
Jeśli masz jakiekolwiek pytania, wyślij je na forum theNim lub poprzez IRC na kanale #nim.
Sponsorzy
dziękujemy wszystkim naszym sponsorom!
Sponsorzy
Wesprzyj ten projekt zostając sponsorem. Twoje logo pojawi się tutaj z linkiem do twojej strony internetowej.
Możesz również zobaczyć listę wszystkich naszych sponsorów/sponsorzy z różnych usług płatniczych na stronie sponsorów naszej strony internetowej.
Licencja
kompilator i biblioteka standardowa są licencjonowane na licencji MIT, z wyjątkiem niektórych modułów, które wyraźnie stwierdzają inaczej. W rezultacie możesz używać dowolnej kompatybilnej licencji (w zasadzie dowolnej licencji) dla własnych programów opracowanych za pomocą nim. Użytkownik jest wyraźnie uprawniony do tworzenia aplikacji komercyjnych przy użyciu Nim.
proszę przeczytać kopiowanie.plik txt po więcej szczegółów.