先决条件: 32位win7,有vs2013,oracle11gclient ,python 27 , node
执行步骤 根据https://github.com/oracle/node-oracledb/blob/master/INSTALL.md 1、安oracle 11g express 【这是个什么卵玩意】 2、安装vs2012 express 【这又是个什么卵玩意】 然后又把http://my.oschina.net/zenglingfan/blog/164390 这个的 (1). 安装 Oracle instant client 这是 Oracle 提供的访问数据库的 C++接口, windows 64位在这里下载 Version 12.1.0.1.0 中的 instantclient-basic-windows.x64-12.1.0.1.0.zip和instantclient-sdk-windows.x64-12.1.0.1.0.zip; 并把它们解压到 C:\instantclient_12_1 文件夹中, 由于两个 zip 中的文件各不相同, 所以合并到同一个文件夹也不会发生覆盖. 这步搞了 然后。。。 npm装oracledb。。。 然后。。。 跪了。。。
===================下面是cmd抛出的问题===================
Microsoft Windows [版本 6.1.7601] 版权所有 (c) 2009 Microsoft Corporation。保留所有权利。
C:\Users\carlos>npm install -g oracledb npm http GET https://registry.npmjs.org/oracledb npm http 304 https://registry.npmjs.org/oracledb
[email protected] install C:\Users\carlos\AppData\Roaming\npm\node_modules\orac ledb node-gyp rebuild
C:\Users\carlos\AppData\Roaming\npm\node_modules\oracledb>node "D:\nodejs\node modules\npm\bin\node-gyp-bin\....\node_modules\node-gyp\bin\node-gyp.js" rebu ild 在此解决方案中一次生成一个项目。若要启用并行生成,请添加“/m”开关。 njsConnection.cpp njsOracle.cpp njsMessages.cpp njsPool.cpp D:\Program Files\Microsoft Visual Studio 12.0\VC\include\xlocale(337): warning C4530: 使用了 C++ 异常处理程序,但未启用展开语义。请指定 /EHsc (..\src\njs\src\n jsMessages.cpp) [C:\U sers\carlos\AppData\Roaming\npm\node_modules\oracledb\build\oracledb.vcxproj] dpiDateTimeArrayImpl.cpp ..\src\dpi\src\dpiDateTimeArrayImpl.cpp(30): fatal error C1083: 无法打开包括文件 : “orat ypes.h”: No such file or directory [C:\Users\carlos\AppData\Roaming\npm\node
modules\oracledb\build\oracledb.vcxproj]
dpiException.cpp
dpiExceptionImpl.cpp
D:\Program Files\Microsoft Visual Studio 12.0\VC\include\xlocale(337): warning
C4530: 使用了 C++ 异常处理程序,但未启用展开语义。请指定 /EHsc (..\src\dpi\src\d
piExceptionImpl.cpp)
[C:\Users\carlos\AppData\Roaming\npm\node_modules\oracledb\build\oracledb.vcx
proj]
dpiEnv.cpp
C:\Users\carlos\AppData\Roaming\npm\node_modules\oracledb\src\dpi\src\dpiEnvI
mpl.h(30): fatal error C1083: 无法打开包括文件: “oci.h”: No such file or direc
tory (..
src\dpi\src\dpiEnv.cpp) [C:\Users\carlos\AppData\Roaming\npm\node_modules\ora
cledb\build\oracledb.vcxproj]
dpiConnImpl.cpp
..\src\dpi\src\dpiConnImpl.cpp(28): fatal error C1083: 无法打开包括文件: “oraty
pes.h”:
No such file or directory [C:\Users\carlos\AppData\Roaming\npm\node_modules\o
racledb\build\oracledb.vcxproj]
dpiEnvImpl.cpp
..\src\dpi\src\dpiEnvImpl.cpp(28): fatal error C1083: 无法打开包括文件: “oratyp
es.h”: N
o such file or directory [C:\Users\carlos\AppData\Roaming\npm\node_modules\or
acledb\build\oracledb.vcxproj]
dpiUtils.cpp
C:\Users\carlos\AppData\Roaming\npm\node_modules\oracledb\src\dpi\src\dpiUtil
s.h(30): fatal error C1083: 无法打开包括文件: “oci.h”: No such file or directo
ry (..\sr
c\dpi\src\dpiUtils.cpp) [C:\Users\carlos\AppData\Roaming\npm\node_modules\ora
cledb\build\oracledb.vcxproj]
dpiStmtImpl.cpp
..\src\dpi\src\dpiStmtImpl.cpp(33): fatal error C1083: 无法打开包括文件: “oraty
pes.h”:
No such file or directory [C:\Users\carlos\AppData\Roaming\npm\node_modules\o
racledb\build\oracledb.vcxproj]
dpiPoolImpl.cpp
..\src\dpi\src\dpiPoolImpl.cpp(29): fatal error C1083: 无法打开包括文件: “oraty
pes.h”:
No such file or directory [C:\Users\carlos\AppData\Roaming\npm\node_modules\o
racledb\build\oracledb.vcxproj]
D:\Program Files\Microsoft Visual Studio 12.0\VC\include\xlocale(337): warning
C4530: 使用了 C++ 异常处理程序,但未启用展开语义。请指定 /EHsc (..\src\njs\src\n
jsConnection.cpp) [C:
\Users\carlos\AppData\Roaming\npm\node_modules\oracledb\build\oracledb.vcxpro
j]
D:\Program Files\Microsoft Visual Studio 12.0\VC\include\xlocale(337): warning
C4530: 使用了 C++ 异常处理程序,但未启用展开语义。请指定 /EHsc (..\src\njs\src\n
jsPool.cpp) [C:\Users
\carlos\AppData\Roaming\npm\node_modules\oracledb\build\oracledb.vcxproj]
D:\Program Files\Microsoft Visual Studio 12.0\VC\include\xlocale(337): warning
C4530: 使用了 C++ 异常处理程序,但未启用展开语义。请指定 /EHsc (..\src\njs\src\n
jsOracle.cpp) [C:\Use
rs\carlos\AppData\Roaming\npm\node_modules\oracledb\build\oracledb.vcxproj]
C:\Users\carlos\AppData\Roaming\npm\node_modules\oracledb\src\dpi\include\dpi
Stmt.h(29): fatal error C1083: 无法打开包括文件: “oci.h”: No such file or dire
ctory (..
\src\njs\src\njsOracle.cpp) [C:\Users\carlos\AppData\Roaming\npm\node_modules
\oracledb\build\oracledb.vcxproj]
C:\Users\carlos\AppData\Roaming\npm\node_modules\oracledb\src\dpi\include\dpi
Stmt.h(29): fatal error C1083: 无法打开包括文件: “oci.h”: No such file or dire
ctory (..
\src\njs\src\njsPool.cpp) [C:\Users\carlos\AppData\Roaming\npm\node_modules\o
racledb\build\oracledb.vcxproj]
C:\Users\carlos\AppData\Roaming\npm\node_modules\oracledb\src\dpi\include\dpi
Stmt.h(29): fatal error C1083: 无法打开包括文件: “oci.h”: No such file or dire
ctory (..
\src\njs\src\njsConnection.cpp) [C:\Users\carlos\AppData\Roaming\npm\node_mod
ules\oracledb\build\oracledb.vcxproj]
gyp ERR! build error
gyp ERR! stack Error: C:\Program Files\MSBuild\12.0\bin\msbuild.exe failed wit
h exit code: 1
gyp ERR! stack at ChildProcess.onExit (D:\nodejs\node_modules\npm\node_modul
es\node-gyp\lib\build.js:267:23)
gyp ERR! stack at ChildProcess.EventEmitter.emit (events.js:98:17)
gyp ERR! stack at Process.ChildProcess._handle.onexit (child_process.js:797:
12)
gyp ERR! System Windows_NT 6.1.7601
gyp ERR! command "node" "D:\nodejs\node_modules\npm\node_modules\node-gyp\
bin\node-gyp.js" "rebuild"
gyp ERR! cwd C:\Users\carlos\AppData\Roaming\npm\node_modules\oracledb
gyp ERR! node -v v0.10.26
gyp ERR! node-gyp -v v0.12.2
gyp ERR! not ok
npm ERR! [email protected] install: node-gyp rebuild
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] install script.
npm ERR! This is most likely a problem with the oracledb package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node-gyp rebuild
npm ERR! You can get their info via:
npm ERR! npm owner ls oracledb
npm ERR! There is likely additional logging output above.
npm ERR! System Windows_NT 6.1.7601 npm ERR! command "D:\nodejs\\node.exe" "D:\nodejs\node_modules\npm\bin\n pm-cli.js" "install" "-g" "oracledb" npm ERR! cwd C:\Users\carlos npm ERR! node -v v0.10.26 npm ERR! npm -v 1.4.3 npm ERR! code ELIFECYCLE npm ERR! npm ERR! Additional logging details can be found in: npm ERR! C:\Users\carlos\npm-debug.log npm ERR! not ok code 0
C:\Users\carlos>