我使用npm install mongojs来获取包装器,但是当我尝试运行我的应用程序时,我得到了以下错误:
node.js:195
throw e; // process.nextTick error, or 'error' event on first tick
^
Native bson parser not compiled, please compile or avoid using native_parser=true然后,我尝试从github获取源代码,并亲自编译node-mongodb- native。然后,我在运行make时得到以下错误:
make -C ./external-libs/bson
make[1]: Entering directory`/tmp/node-mongodb-native/external-libs/bson`
rm -rf build.lock-wscript bson.node node-waf configure build
Checking for program g++ or c++: /usr/bin/g++
Checking for program cpp: /usr/bin/cpp
Checking for program ar: /usr/bin/ar
Checking for program ranlib: /usr/bin/ranlib
Checking for g++: ok
Checking for node path: not found
Checking for node prefix: ok
/usr/local 'configure' finished successfully (0.069s)
Waf: Entering directory `/tmp/node-mongodb-native/external-libs/bson/build'
[1/9] cxx: bson.cc -> build/default/bson_1.o
[2/9] cxx: long.cc -> build/default/long_1.o
[3/9] cxx: objectid.cc -> build/default/objectid_1.o
[4/9] cxx: binary.cc -> build/default/binary_1.o
[5/9] cxx: code.cc -> build/default/code_1.o
[6/9] cxx: dbref.cc -> build/default/dbref_1.o
../bson.cc:7:25: fatal error: node_events.h: No such file or directory
compilation terminated.
../objectid.cc:6:25: fatal error: node_events.h: No such file or directory
compilation terminated.
../code.cc:6:25: fatal error: node_events.h: No such file or directory
compilation terminated.
../dbref.cc:6:25: fatal error: node_events.h: No such file or directory
compilation terminated.
../long.cc:6:25: fatal error: node_events.h: No such file or directory
compilation terminated.
../binary.cc:7:25: fatal error: node_events.h: No such file or directory
compilation terminated.
Waf: Leaving directory `/tmp/node-mongodb-native/external-libs/bson/build'
Build failed: -> task failed (err #1):
{task: cxx objectid.cc -> objectid_1.o} -> task failed (err#1):
{task: cxx bson.cc -> bson_1.o} -> task failed (err #1):
{task: cxx code.cc -> code_1.o} -> task failed (err #1):
{task: cxx dbref.cc -> dbref_1.o} -> task failed (err #1):
{task: cxx long.cc -> long_1.o} -> task failed (err #1):
{task: cxx binary.cc -> binary_1.o} make[1]: *** [all] Error 1
make[1]: Leaving directory `/tmp/node-mongodb-native/external-libs/bson'
make: *** [build_native] Error 2有没有什么想法可以解释为什么这会失败,以及我如何让它工作?
发布于 2011-09-01 08:10:43
在修复之前,您必须使用node 0.5.1 (您可以使用gitk将树恢复到此版本)
Auteur: Ryan Dahl <ry@tinyclouds.org> 2011-07-19 10:46:38
Auteur du commit: Ryan Dahl <ry@tinyclouds.org> 2011-07-19 10:46:38
Parent: 0a3fc1d9c8becc32c63ae736ca2b3719a3d03c5b (Remove StatWatcher's dep on C++ EventEmitter)
Enfant: 061ce7b0ac370c8a5ae93d95ab7da171cbd488f0 (net_uv: Fix simple/test-http-expect-continue.js)
Branche: master, remotes/origin/master
Suit: v0.5.1
Précède: v0.5.2
Finally remove node::EventEmitter发布于 2011-07-29 03:07:21
我认为您需要将节点添加到.bashrc中的路径或其他文件中,这取决于您的发行版。
请参阅此链接:http://shapeshed.com/journal/setting-up-nodejs-and-npm-on-mac-osx/
发布于 2011-08-04 17:25:28
没有这样的文件或目录编译终止错误可能意味着您尚未创建供MongoDB使用的data/db目录。
$ sudo mkdir -p /data/db/
$ sudo chown `id -u` /data/db我似乎记得当我尝试使用外壳连接到MongoDB时看到了类似这样的东西。你能用shell连接吗?
https://stackoverflow.com/questions/6864247
复制相似问题