La risposta contrassegnata è completamente sbagliata. Tutto ciò che fa è nascondere l'istruzione di registro della console e non fa nulla per risolvere il problema. Puoi anche chiudere gli occhi e otterrai lo stesso risultato.
Il problema è causato da node-gyp e solo quello. Il suo scopo è compilare estensioni native per determinati moduli come bson.
Se non riesce a farlo , allora il codice fallback alla versione JS e gentilmente dirvi in modo attraverso il messaggio informativo:
Failed to load c++ bson extension, using pure JS version
Suppongo che la domanda riguardi davvero come compilare l'estensione C ++ nativa piuttosto che non vedere il messaggio, quindi affrontiamolo.
Affinché node-gyp funzioni, il tuo node-gyp deve essere aggiornato con il tuo nodo e il compilatore C ++ (che differiranno in base al tuo sistema operativo). Altrettanto importante anche il tuo modulo deve essere aggiornato.
Innanzitutto disinstallare e reinstallare node-gyp
npm un node-gyp -g;npm i node-gyp -g
Ora dovrai disinstallare e reinstallare completamente qualsiasi modulo del nodo nella tua app (che includa anche i moduli installati dai requisiti) che abbia bson. Questo dovrebbe occuparsi dell'errore. Puoi cercare "Release / bson" e trovare i colpevoli.
find node_modules/ -type 'f' -exec grep -H 'Release/bson' {} \;
Quindi disinstallare e reinstallare questi moduli.
È più semplice ripetere l'intera node_modules
cartella:
rm -rf node_modules
npm cache clear
npm i
Se i problemi persistono, 1) il tuo modulo non è aggiornato - controlla il tracker dei problemi nel loro repository o 2) hai un potenziale conflitto - a volte potremmo avere un nodo-gyp locale, ad esempio. Puoi eseguire node-gyp
da solo e verificare le versioni.