Node.js:n natiivien lisäosien rakentamistyökalu
node-gyp
on Node.js:llä kirjoitettu komentorivityökalu Node.js:n natiivien lisäosamoduulien kääntämiseen Node.js:lle. Se on korvaaja node-waf
ohjelmalle, joka on poistettu node v0.8
:lle. Jos sinulla on natiivi lisäosa nodea varten, jossa on edelleen wscript
-tiedosto, sinun pitäisi ehdottomasti lisätä binding.gyp
-tiedosto tukemaan uusimpia node-versioita.
Noden useita kohdeversioita tuetaan (eli 0.8
, 0.9
, 0.10
, …, 1.0
,jne.) riippumatta siitä, mikä node-versio on todellisuudessa asennettu järjestelmääsi(node-gyp
lataa kohdeversiota varten tarvittavat kehitystiedostot).
Ominaisuudet:
- Helppokäyttöinen, yhdenmukainen käyttöliittymä
- Samat komennot moduulisi rakentamiseen jokaisella alustalla
- Tukee useita Noden kohdeversioita
Asennus
Voit asentaa npm
:lla:
$ npm install -g node-gyp
Tarvitset myös asennuksen:
- Unixille:
-
python
(v2.7
suositellaan,v3.x.x
ei tueta) make
- Kunnollinen C/C++-kääntäjätyökaluketju, kuten GCC
-
- Windowsille:
- Python (
v2.7.3
suositellaan,v3.x.x
ei tueta) - Windows XP/Vista/7:
- Microsoft Visual Studio C++ 2010 (Express-versio toimii hyvin)
- Solmujen ja natiivimoduulien 64-bittisiä versioita varten tarvitset myös Windows 7:n 64-bittisen SDK:n
- Jos asennus ei onnistu, yritä ensin poistaa asentamasi C++ 2010 x64&x86 Redistributable.
- Jos saat virheilmoituksia siitä, että 64-bittisiä kääntäjiä ei ole asennettu, saatat tarvita myös Windows 7 SDK:n kääntäjien päivityksen.1
- Windows 7/8:
- Microsoft Visual Studio C++ 2012 for Windows Desktop (Express-versio toimii hyvin)
- Python (
Huomaa, että OS X on vain Unixin makuvaihtoehto, joten se tarvitsee python
-, make
-ohjelmat ja C/C++:n.Helppo tapa hankkia nämä on asentaa XCode Applelta,ja asentaa sen avulla komentorivityökalut (kohdassa Asetukset -> Lataukset).
How to Use
Kääntääksesi natiivin lisäosan, siirry ensin sen juurihakemistoon:
$ cd my_node_addon
Seuraavana askeleena luodaan projektin rakentamistiedostot nykyiselle alustalle. Käytä siihen configure
:
$ node-gyp configure
Huomautus: Vaihe configure
etsii nykyisenhakemiston binding.gyp
-tiedostoa käsiteltäväksi. Katso alla olevat ohjeet binding.gyp
-tiedoston luomiseen.
Nyt sinulla on joko Makefile
(Unix-alustoilla) tai vcxproj
-tiedosto(Windowsissa) build/
-hakemistossa. Seuraavaksi kutsu komentoa build
:
$ node-gyp build
Nyt sinulla on käännetty .node
sidostiedosto! Käännetyt sidostiedostot päätyvät tiedostoon build/Debug/
tai build/Release/
, riippuen rakennustilasta. Tässä vaiheessa voit vaatia .node
-tiedoston Noden kanssa ja suorittaa testisi!
Huomaa: Jos haluat luoda Debug-rakentamisen sidostiedostosta, välitä --debug
(tai -d
) -kytkin, kun suoritat joko configure
– tai build
-komentoa.
Tiedosto ”sitoumus.gyp”
Viime aikoina, kun Nodella oli käytössäsi node-waf
-ominaisuudet, jouduit kirjoittamaan wscript
-tiedoston. Sen tilalle on binding.gyp
-tiedosto, joka kuvaa konfiguraation moduulisi rakentamiseksi JSON-tyyppisessä muodossa. Tämä tiedosto sijoitetaan pakettisi juureen package.json
-tiedoston rinnalle.
Node-lisäosan rakentamiseen sopiva pelkkä gyp
-tiedosto näyttää seuraavalta:
{ "targets": } ]}
Joitakin lisäresursseja gyp
-tiedostojen kirjoittamiseen:
- ”Hello World” node-lisäosan esimerkki
- gyp-käyttäjän dokumentaatio
- gyp-syöttöformaattireferenssi
- ”binding.gyp” files out in the wild wiki page
Commands
node-gyp
vastaa seuraaviin komentoihin:
Komento | Kuvaus |
---|---|
build |
Kutsuu make /msbuild.exe ja rakentaa natiivin lisäosan |
clean |
Poistaa minkä tahansa build dir:n, jos se on olemassa |
configure |
Generoi projektin rakennustiedostot nykyiselle alustalle |
rebuild |
Käynnistää ”clean”, ”configure” ja ”build” kaikki peräkkäin |
install |
Asenntaa node-kehitystiedostojen otsikkotiedostot annetulle versiolle |
list |
Luettelee tällä hetkellä asennetut node-kehitystiedostojen versiot |
remove |
Poistaa annetun version node-kehitysotsikkotiedostot |
Lisenssi
(MIT-lisenssi)
Copyright (c) 2012 Nathan Rajlich <[email protected]
Lisenssioikeus myönnetään täten, maksutta jokaiselle henkilölle, joka hankkii kopion tästä ohjelmistosta ja siihen liittyvistä dokumentaatiotiedostoista (jäljempänä ’ohjelmisto’), käsitellä ohjelmistoa rajoituksetta, mukaan lukien rajoituksetta oikeudet käyttää, kopioida, muuttaa, yhdistää, julkaista, levittää, alilisensoida ja/tai myydä ohjelmistokopioita, ja sallia henkilöille, joille ohjelmisto on toimitettu, tehdä niin seuraavin ehdoin:
Yllä oleva tekijänoikeusilmoitus ja tämä lupailmoitus on sisällytettävä kaikkiin ohjelmiston kopioihin tai olennaisiin osiin.
OHJELMISTO TOIMITETAAN SELLAISENA KUIN SE ON, ILMAN MINKÄÄNLAISTA TAKUUTA, NIMENOMAISTA TAI EPÄSUORAA, MUKAAN LUKIEN, MUTTA EI RAJOITTUEN, TAKUUSEEN MYYNTIKELPOISUUDESTA, SOVELTUVUUDESTA TIETTYYN TARKOITUKSEEN JA LOUKKAAMATTOMUUDESTA.TEKIJÄT TAI TEKIJÄNOIKEUKSIEN HALTIJAT EIVÄT MISSÄÄN TAPAUKSESSA OLE VASTUUSSA MISTÄÄN VAHINGONKORVAUSVAATIMUKSISTA, VAHINGONKORVAUKSISTA TAI MUUSTA KORVAUSVASTUUSTA, RIIPPUMATTA SIITÄ, ONKO KYSE SOPIMUS-, VAHINGONKORVAUS- TAI MUUSTA VAHINGONKORVAUSVAATIMUKSESTA, JOKA SYNTYY OHJELMISTOSTA TAI SEN KÄYTÖSTÄ TAI MUUSTA KÄSITTELYSTÄ, TAI JOKA ON YHTEYDESSÄ OHJELMISTOON TAI OHJELMISTON KÄYTTÖÖN TAI MUUHUN KÄSITTELYYN LIITTYEN.