Closed user0403 closed 9 years ago
Short: you can't.
See duplicate issue #70 - it would need significant rewrite of LDAP internals, because newer nodejs changed it's C++ API... Again... LDAP doesn't build on any node newer than 0.10.x. And if you want LDAP and reliable nodejs, you have to go to v0.8.x - v0.10 series contain bug in new streams code that is triggered when dealing with large data (see https://github.com/nodejs/node-v0.x-archive/issues/6065), and that is "too difficult to fix in v0.10" (last post in linked thread). It may not be relevant for your code, so just a warning, you have good chance of not discovering it until production deployment.
New version released.
npm install LDAP is getting failed in v4.1.0
Following is the error message (similarly getting bunch of errors) In file included from ../src/LDAP.cc:4:0: /home/node_modules/LDAP/.node-gyp/4.1.0/include/node/v8.h:315:27: note: declared here friend Local Undefined(Isolate* isolate);
^
../src/LDAP.cc: In static member function âstatic int LDAPConnection::SyncSearchEntry(ldap_synct, LDAPMessage, berval, ldap_sync_refresh_t)â:
../src/LDAP.cc:1000:20: error: base operand of â->â has non-pointer type âv8::Persistentv8::Functionâ
c->syncentry_cb->Call(Context::GetCurrent()->Global(), 1, args);
^
../src/LDAP.cc:1000:27: error: âGetCurrentâ is not a member of âv8::Contextâ
c->syncentry_cb->Call(Context::GetCurrent()->Global(), 1, args);
^
../src/LDAP.cc:1002:24: warning: âvoid node::FatalException(const v8::TryCatch&)â is deprecated (declared at /home/node_modules/LDAP/.node-gyp/4.1.0/include/node/node.h:282): Use FatalException(isolate, ...) [-Wdeprecated-declarations]
FatalException(tc);
^
../src/LDAP.cc: In static member function âstatic int LDAPConnection::SyncIntermediate(ldap_synct, LDAPMessage_, BerVarray, ldap_sync_refresh_t)â:
../src/LDAP.cc:1013:7: error: âNewâ is not a member of âv8::Stringâ
String::New(ls->ls_cookie.bv_val),
^
../src/LDAP.cc:1014:39: error: no matching function for call to âv8::Integer::New(ldap_sync_refresh_t&)â
Integer::New(ls->ls_refreshPhase)
^
../src/LDAP.cc:1014:39: note: candidate is:
In file included from ../src/LDAP.cc:4:0:
/home/nodemodules/LDAP/.node-gyp/4.1.0/include/node/v8.h:2499:25: note: static v8::Localv8::Integer v8::Integer::New(v8::Isolate, int32_t)
static Local New(Isolate* isolate, int32_t value);
^
/home/node_modules/LDAP/.node-gyp/4.1.0/include/node/v8.h:2499:25: note: candidate expects 2 arguments, 1 provided
../src/LDAP.cc:1018:27: error: base operand of â->â has non-pointer type âv8::Persistentv8::Functionâ
c->syncintermediate_cb->Call(Context::GetCurrent()->Global(), 2, args);
^
../src/LDAP.cc:1018:34: error: âGetCurrentâ is not a member of âv8::Contextâ
c->syncintermediate_cb->Call(Context::GetCurrent()->Global(), 2, args);
^
../src/LDAP.cc:1020:24: warning: âvoid node::FatalException(const v8::TryCatch&)â is deprecated (declared at /home/node_modules/LDAP/.node-gyp/4.1.0/include/node/node.h:282): Use FatalException(isolate, ...) [-Wdeprecated-declarations]
FatalException(tc);
^
../src/LDAP.cc: In static member function âstatic int LDAPConnection::SyncResult(ldap_synct, LDAPMessage_, int)â:
../src/LDAP.cc:1033:21: error: base operand of â->â has non-pointer type âv8::Persistentv8::Functionâ
c->syncresult_cb->Call(Context::GetCurrent()->Global(), 1, args);
^
../src/LDAP.cc:1033:28: error: âGetCurrentâ is not a member of âv8::Contextâ
c->syncresult_cb->Call(Context::GetCurrent()->Global(), 1, args);
^
../src/LDAP.cc:1035:24: warning: âvoid node::FatalException(const v8::TryCatch&)â is deprecated (declared at /home/node_modules/LDAP/.node-gyp/4.1.0/include/node/node.h:282): Use FatalException(isolate, ...) [-Wdeprecated-declarations]
FatalException(tc);
^
In file included from ../src/LDAP.cc:4:0:
How can I fix this :(