Node.js 未能加载c++;布森

Node.js 未能加载c++;布森,node.js,mongodb,mongoose,Node.js,Mongodb,Mongoose,我对整个Nodejs,MongoDB,mongoose世界都是新手。我只是尝试跟随一些教程开始,我继续得到这个“加载C++ + BSON扩展,使用纯JS版本失败< /强>错误,如果我尝试启动任何脚本,引用MangoSo.< /P> 我已经尝试了一切我能用谷歌来修复它,但没有任何效果,包括: 重新安装build essentials 重新安装mongoDB 将nodejs降级至0.10.22 删除节点_modules dir 清除npm缓存 我不知所措。有人能帮我吗?我只想回到学习中去 我在U

我对整个Nodejs,MongoDB,mongoose世界都是新手。我只是尝试跟随一些教程开始,我继续得到这个<强>“加载C++ + BSON扩展,使用纯JS版本失败< /强>错误,如果我尝试启动任何脚本,引用MangoSo.< /P> 我已经尝试了一切我能用谷歌来修复它,但没有任何效果,包括:

  • 重新安装build essentials
  • 重新安装mongoDB
  • 将nodejs降级至0.10.22
  • 删除节点_modules dir
  • 清除npm缓存
我不知所措。有人能帮我吗?我只想回到学习中去

我在Ubuntu13服务器上运行nodejs和MongoDB。 这是我的简单脚本

var mongoose = require("mongoose");
mongoose.connect('mongodb://localhost/test');

var db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function () {
    var UsersSchema = mongoose.Schema({
        name: String
    });
    var User = mongoose.model('User', UsersSchema);
    var user = new User({ name: "SomeName" })
    user.save();
});

谢谢大家!

我在初始设置中也遇到了类似的问题,通过重新安装build essential软件包解决了这个问题

sudo apt-get install build-essential
然后重新安装mongodb本机驱动程序

npm install mongodb

节点的当前版本为v0.10.26。请尝试升级您的节点版本。

如果您使用的是ubuntu 14.04,则可能与此问题有关:

有两种方法可以解决此问题:

将gyp升级到我在中找到--no parallel选项的最新版本 svn 资料来源:

如果你不想升级你的gyp,你可以 注释第316行 of/usr/local/lib/node_modules/npm/node_modules/node gyp/lib/configure.js


啊!!你已经试过了,在按下回车键后我才知道。为什么你不能试着只安装bson软件包npm install bsonIt这意味着它要么无法编译本机版本,要么不可用。它正在退回到纯JS版本。当你试图运行你的脚本时,它会崩溃吗?
 argv.push('-Dvisibility=default')
 argv.push('-Dnode_root_dir=' + nodeDir)
 argv.push('-Dmodule_root_dir=' + process.cwd())
 argv.push('--depth=.')
 //argv.push('--no-parallel')