1

as the title suggests, I am trying to deploy my website on windows Azure that uses libsmljs, built on node.js of course. While Azure is deploying the site, it fails and spits this out:

Command: C:\DWASFiles\Sites\CircuitsExpress\VirtualDirectory0\site\deployments\tools\deploy.cmd
Handling node.js deployment.
KuduSync.NET from: 'C:\DWASFiles\Sites\CircuitsExpress\VirtualDirectory0\site\repository' to: 'C:\DWASFiles\Sites\CircuitsExpress\VirtualDirectory0\site\wwwroot'
Node.js versions available on the platform are: 0.10.5, 0.6.17, 0.6.20, 0.8.19, 0.8.2.
Selected node.js version 0.10.5. Use package.json file to choose a different version.
 > libxmljs@0.8.1 install C:\DWASFiles\Sites\CircuitsExpress\VirtualDirectory0\site\wwwroot\node_modules\libxmljs
> node-gyp rebuild
 C:\DWASFiles\Sites\CircuitsExpress\VirtualDirectory0\site\wwwroot\node_modules\libxmljs>node "D:\Program Files (x86)\npm\1.2.18\bin\node-gyp-bin\\..\..\node_modules\node-gyp\bin\node-gyp.js" rebuild 
Building the projects in this solution one at a time. To enable parallel build, please add the "/m" switch.
MSBUILD : error MSB3428: Could not load the Visual C++ component "VCBuild.exe". To fix this, 1) install the .NET Framework 2.0 SDK, 2) install Microsoft Visual Studio 2005 or 3) add the location of the component to the system path if it is installed elsewhere.  [C:\DWASFiles\Sites\CircuitsExpress\VirtualDirectory0\site\wwwroot\node_modules\libxmljs\build\binding.sln]
gypnpm ERR! libxmljs@0.8.1 install: `node-gyp rebuild`
npm ERR! `cmd "/c" "node-gyp rebuild"` failed with 1
An error has occurred during web site deployment.
npm ERR! 
npm ERR! Failed at the libxmljs@0.8.1 install script.
npm ERR! This is most likely a problem with the libxmljs 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 libxmljs
npm ERR! There is likely additional logging output above.
 npm ERR! System Windows_NT 6.2.9200
npm ERR! command "D:\\Program Files (x86)\\nodejs\\0.10.5\\node.exe" "D:\\Program Files (x86)\\npm\\1.2.18\\bin\\npm-cli.js" "install" "--production"
npm ERR! cwd C:\DWASFiles\Sites\CircuitsExpress\VirtualDirectory0\site\wwwroot
npm ERR! node -v v0.10.5
npm ERR! npm -v 1.2.18
npm ERR! code ELIFECYCLE
npm

Now that looks like your npm error that you would get if you didn't have a C compiler, but I do! this is what the output of npm is when I install libsmljs.

Microsoft Windows [Version 6.1.7600]
Copyright (c) 2009 Microsoft Corporation.  All rights reserved.

C:\Users\ShannonS>npm install libxmljs -g
npm http GET https://registry.npmjs.org/libxmljs
npm http 304 https://registry.npmjs.org/libxmljs
npm http GET https://registry.npmjs.org/bindings/1.0.0
npm http 304 https://registry.npmjs.org/bindings/1.0.0

> libxmljs@0.8.1 install C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libx
mljs
> node-gyp rebuild


C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libxmljs>node "C:\Program Fil
es (x86)\nodejs\node_modules\npm\bin\node-gyp-bin\\..\..\node_modules\node-gyp\b
in\node-gyp.js" rebuild
Building the projects in this solution one at a time. To enable parallel build,
please add the "/m" switch.
  pattern.c
  error.c
  HTMLparser.c
  catalog.c
  xmlsave.c
  xinclude.c
  list.c
  HTMLtree.c
..\..\..\vendor\libxml\catalog.c(977): warning C4013: 'open' undefined; assumin
g extern returning int [C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libx
mljs\build\vendor\libxml\libxml.vcxproj]
..\..\..\vendor\libxml\catalog.c(998): warning C4013: 'read' undefined; assumin
g extern returning int [C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libx
mljs\build\vendor\libxml\libxml.vcxproj]
..\..\..\vendor\libxml\catalog.c(999): warning C4013: 'close' undefined; assumi
ng extern returning int [C:\Users\ShannonS\AppData\Roaming\npm\node_modules\lib
xmljs\build\vendor\libxml\libxml.vcxproj]
  SAX.c
  hash.c
  xmlwriter.c
  relaxng.c
  xmlmemory.c
  SAX2.c
  valid.c
  xlink.c
  xpath.c
  xmlschemastypes.c
  entities.c
  uri.c
  xpointer.c
  xmlIO.c
  xmlschemas.c
  xmlunicode.c
  xmlstring.c
  legacy.c
  parserInternals.c
  globals.c
  dict.c
  encoding.c
c:\users\shannons\appdata\roaming\npm\node_modules\libxmljs\vendor\libxml\timso
rt.h(71): warning C4028: formal parameter 1 different from declaration (..\..\.
.\vendor\libxml\xpath.c) [C:\Users\ShannonS\AppData\Roaming\npm\node_modules\li
bxmljs\build\vendor\libxml\libxml.vcxproj]
c:\users\shannons\appdata\roaming\npm\node_modules\libxmljs\vendor\libxml\timso
rt.h(74): warning C4244: 'initializing' : conversion from 'const uint64_t' to '
const int', possible loss of data (..\..\..\vendor\libxml\xpath.c) [C:\Users\Sh
annonS\AppData\Roaming\npm\node_modules\libxmljs\build\vendor\libxml\libxml.vcx
proj]
..\..\..\vendor\libxml\dict.c(173): warning C4244: 'function' : conversion from
 'time_t' to 'unsigned int', possible loss of data [C:\Users\ShannonS\AppData\R
oaming\npm\node_modules\libxmljs\build\vendor\libxml\libxml.vcxproj]
c:\users\shannons\appdata\roaming\npm\node_modules\libxmljs\vendor\libxml\timso
rt.h(185): warning C4244: 'function' : conversion from 'int64_t' to 'const size
_t', possible loss of data (..\..\..\vendor\libxml\xpath.c) [C:\Users\ShannonS\
AppData\Roaming\npm\node_modules\libxmljs\build\vendor\libxml\libxml.vcxproj]
..\..\..\vendor\libxml\dict.c(237): warning C4018: '>' : signed/unsigned mismat
ch [C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libxmljs\build\vendor\li
bxml\libxml.vcxproj]
..\..\..\vendor\libxml\dict.c(305): warning C4018: '>' : signed/unsigned mismat
ch [C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libxmljs\build\vendor\li
bxml\libxml.vcxproj]
c:\users\shannons\appdata\roaming\npm\node_modules\libxmljs\vendor\libxml\timso
rt.h(334): warning C4244: 'function' : conversion from 'const int64_t' to 'cons
t size_t', possible loss of data (..\..\..\vendor\libxml\xpath.c) [C:\Users\Sha
nnonS\AppData\Roaming\npm\node_modules\libxmljs\build\vendor\libxml\libxml.vcxp
roj]
c:\users\shannons\appdata\roaming\npm\node_modules\libxmljs\vendor\libxml\timso
rt.h(340): warning C4244: 'function' : conversion from 'const int64_t' to 'size
_t', possible loss of data (..\..\..\vendor\libxml\xpath.c) [C:\Users\ShannonS\
AppData\Roaming\npm\node_modules\libxmljs\build\vendor\libxml\libxml.vcxproj]
c:\users\shannons\appdata\roaming\npm\node_modules\libxmljs\vendor\libxml\timso
rt.h(364): warning C4244: 'function' : conversion from 'const int64_t' to 'size
_t', possible loss of data (..\..\..\vendor\libxml\xpath.c) [C:\Users\ShannonS\
AppData\Roaming\npm\node_modules\libxmljs\build\vendor\libxml\libxml.vcxproj]
c:\users\shannons\appdata\roaming\npm\node_modules\libxmljs\vendor\libxml\timso
rt.h(469): warning C4244: 'function' : conversion from 'int64_t' to 'const size
_t', possible loss of data (..\..\..\vendor\libxml\xpath.c) [C:\Users\ShannonS\
AppData\Roaming\npm\node_modules\libxmljs\build\vendor\libxml\libxml.vcxproj]
c:\users\shannons\appdata\roaming\npm\node_modules\libxmljs\vendor\libxml\timso
rt.h(470): warning C4244: 'function' : conversion from 'int64_t' to 'const size
_t', possible loss of data (..\..\..\vendor\libxml\xpath.c) [C:\Users\ShannonS\
AppData\Roaming\npm\node_modules\libxmljs\build\vendor\libxml\libxml.vcxproj]
c:\users\shannons\appdata\roaming\npm\node_modules\libxmljs\vendor\libxml\timso
rt.h(471): warning C4244: 'function' : conversion from 'int64_t' to 'const size
_t', possible loss of data (..\..\..\vendor\libxml\xpath.c) [C:\Users\ShannonS\
AppData\Roaming\npm\node_modules\libxmljs\build\vendor\libxml\libxml.vcxproj]
c:\users\shannons\appdata\roaming\npm\node_modules\libxmljs\vendor\libxml\timso
rt.h(480): warning C4244: 'function' : conversion from 'int64_t' to 'const size
_t', possible loss of data (..\..\..\vendor\libxml\xpath.c) [C:\Users\ShannonS\
AppData\Roaming\npm\node_modules\libxmljs\build\vendor\libxml\libxml.vcxproj]
  xmlmodule.c
  xmlregexp.c
  xmlreader.c
  tree.c
  threads.c
  parser.c
  chvalid.c
  buf.c
..\..\..\vendor\libxml\buf.c(674): warning C4028: formal parameter 1 different
from declaration [C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libxmljs\b
uild\vendor\libxml\libxml.vcxproj]
..\..\..\vendor\libxml\xmlIO.c(668): warning C4133: 'function' : incompatible t
ypes - from 'stat *' to '_stat64i32 *' [C:\Users\ShannonS\AppData\Roaming\npm\n
ode_modules\libxmljs\build\vendor\libxml\libxml.vcxproj]
..\..\..\vendor\libxml\xmlIO.c(822): warning C4013: 'read' undefined; assuming
extern returning int [C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libxml
js\build\vendor\libxml\libxml.vcxproj]
..\..\..\vendor\libxml\xmlIO.c(843): warning C4013: 'write' undefined; assuming
 extern returning int [C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libxm
ljs\build\vendor\libxml\libxml.vcxproj]
..\..\..\vendor\libxml\xmlIO.c(861): warning C4013: 'close' undefined; assuming
 extern returning int [C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libxm
ljs\build\vendor\libxml\libxml.vcxproj]
..\..\..\vendor\libxml\xmlIO.c(3811): warning C4013: 'getcwd' undefined; assumi
ng extern returning int [C:\Users\ShannonS\AppData\Roaming\npm\node_modules\lib
xmljs\build\vendor\libxml\libxml.vcxproj]
..\..\..\vendor\libxml\xmlIO.c(3811): warning C4047: '!=' : 'int' differs in le
vels of indirection from 'void *' [C:\Users\ShannonS\AppData\Roaming\npm\node_m
odules\libxmljs\build\vendor\libxml\libxml.vcxproj]
  libxml.vcxproj -> C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libxmljs
  \build\Release\lib\libxml.lib
  libxmljs.cc
  xml_namespace.cc
  xml_syntax_error.cc
  xml_node.cc
  xml_sax_parser.cc
  xml_attribute.cc
  xml_xpath_context.cc
  xml_document.cc
..\src\xml_xpath_context.cc(50): warning C4800: 'int' : forcing value to bool '
true' or 'false' (performance warning) [C:\Users\ShannonS\AppData\Roaming\npm\n
ode_modules\libxmljs\build\xmljs.vcxproj]
C:\Users\ShannonS\.node-gyp\0.8.20\deps\v8\include\v8.h(178): warning C4506: no
 definition for inline function 'v8::Persistent<T> v8::Persistent<T>::New(v8::H
andle<T>)' [C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libxmljs\build\x
mljs.vcxproj]
          with
          [
              T=v8::Object
          ] (..\src\xml_syntax_error.cc)
C:\Users\ShannonS\.node-gyp\0.8.20\deps\v8\include\v8.h(178): warning C4506: no
 definition for inline function 'v8::Persistent<T> v8::Persistent<T>::New(v8::H
andle<T>)' [C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libxmljs\build\x
mljs.vcxproj]
          with
          [
              T=v8::Object
          ] (..\src\libxmljs.cc)
C:\Users\ShannonS\.node-gyp\0.8.20\deps\v8\include\v8.h(183): warning C4506: no
 definition for inline function 'v8::Persistent<T> v8::Persistent<T>::New(v8::H
andle<T>)' [C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libxmljs\build\x
mljs.vcxproj]
          with
          [
              T=v8::Object
          ] (..\src\xml_xpath_context.cc)
C:\Users\ShannonS\.node-gyp\0.8.20\deps\v8\include\v8.h(217): warning C4506: no
 definition for inline function 'v8::Persistent<T> v8::Persistent<T>::New(v8::H
andle<T>)' [C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libxmljs\build\x
mljs.vcxproj]
          with
          [
              T=v8::Object
          ] (..\src\xml_attribute.cc)
C:\Users\ShannonS\.node-gyp\0.8.20\deps\v8\include\v8.h(217): warning C4506: no
 definition for inline function 'v8::Persistent<T> v8::Persistent<T>::New(v8::H
andle<T>)' [C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libxmljs\build\x
mljs.vcxproj]
          with
          [
              T=v8::FunctionTemplate
          ] (..\src\xml_attribute.cc)
  xml_element.cc
C:\Users\ShannonS\.node-gyp\0.8.20\deps\v8\include\v8.h(217): warning C4506: no
 definition for inline function 'v8::Persistent<T> v8::Persistent<T>::New(v8::H
andle<T>)' [C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libxmljs\build\x
mljs.vcxproj]
          with
          [
              T=v8::Object
          ] (..\src\xml_namespace.cc)
C:\Users\ShannonS\.node-gyp\0.8.20\deps\v8\include\v8.h(217): warning C4506: no
 definition for inline function 'v8::Persistent<T> v8::Persistent<T>::New(v8::H
andle<T>)' [C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libxmljs\build\x
mljs.vcxproj]
          with
          [
              T=v8::FunctionTemplate
          ] (..\src\xml_namespace.cc)
C:\Users\ShannonS\.node-gyp\0.8.20\deps\v8\include\v8.h(183): warning C4506: no
 definition for inline function 'v8::Persistent<T> v8::Persistent<T>::New(v8::H
andle<T>)' [C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libxmljs\build\x
mljs.vcxproj]
          with
          [
              T=v8::Object
          ] (..\src\xml_node.cc)
C:\Users\ShannonS\.node-gyp\0.8.20\deps\v8\include\v8.h(183): warning C4506: no
 definition for inline function 'v8::Persistent<T> v8::Persistent<T>::New(v8::H
andle<T>)' [C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libxmljs\build\x
mljs.vcxproj]
          with
          [
              T=v8::FunctionTemplate
          ] (..\src\xml_node.cc)
C:\Users\ShannonS\.node-gyp\0.8.20\deps\v8\include\v8.h(178): warning C4506: no
 definition for inline function 'v8::Persistent<T> v8::Persistent<T>::New(v8::H
andle<T>)' [C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libxmljs\build\x
mljs.vcxproj]
          with
          [
              T=v8::Object
          ] (..\src\xml_sax_parser.cc)
C:\Users\ShannonS\.node-gyp\0.8.20\deps\v8\include\v8.h(178): warning C4506: no
 definition for inline function 'v8::Persistent<T> v8::Persistent<T>::New(v8::H
andle<T>)' [C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libxmljs\build\x
mljs.vcxproj]
          with
          [
              T=v8::FunctionTemplate
          ] (..\src\xml_sax_parser.cc)
C:\Users\ShannonS\.node-gyp\0.8.20\deps\v8\include\v8.h(217): warning C4506: no
 definition for inline function 'v8::Persistent<T> v8::Persistent<T>::New(v8::H
andle<T>)' [C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libxmljs\build\x
mljs.vcxproj]
          with
          [
              T=v8::Object
          ] (..\src\xml_document.cc)
C:\Users\ShannonS\.node-gyp\0.8.20\deps\v8\include\v8.h(217): warning C4506: no
 definition for inline function 'v8::Persistent<T> v8::Persistent<T>::New(v8::H
andle<T>)' [C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libxmljs\build\x
mljs.vcxproj]
          with
          [
              T=v8::FunctionTemplate
          ] (..\src\xml_document.cc)
C:\Users\ShannonS\.node-gyp\0.8.20\deps\v8\include\v8.h(217): warning C4506: no
 definition for inline function 'v8::Persistent<T> v8::Persistent<T>::New(v8::H
andle<T>)' [C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libxmljs\build\x
mljs.vcxproj]
          with
          [
              T=v8::Object
          ] (..\src\xml_element.cc)
C:\Users\ShannonS\.node-gyp\0.8.20\deps\v8\include\v8.h(217): warning C4506: no
 definition for inline function 'v8::Persistent<T> v8::Persistent<T>::New(v8::H
andle<T>)' [C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libxmljs\build\x
mljs.vcxproj]
          with
          [
              T=v8::FunctionTemplate
          ] (..\src\xml_element.cc)
     Creating library C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libxml
  js\build\Release\xmljs.lib and object C:\Users\ShannonS\AppData\Roaming\npm\n
  ode_modules\libxmljs\build\Release\xmljs.exp
  Generating code
  Finished generating code
  xmljs.vcxproj -> C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libxmljs\
  build\Release\\xmljs.node
libxmljs@0.8.1 C:\Users\ShannonS\AppData\Roaming\npm\node_modules\libxmljs
└── bindings@1.0.0

C:\Users\ShannonS>^A

So what confuses me is that the library is clearly built, so why is Azure having an issue deploying it on their servers? I'm looking for a solution rather than just a, "this is why" answer. I really wouldn't know where to look for a fix on a cause, I kinda need guidance on this one.

EDIT: I am using github for the deployment source of azure.

4

1 回答 1

3

Azure 文档指出平台"..does not provide Python or node-gyp and cannot build native modules". 在此处查看“本机模块”部分:http: //www.windowsazure.com/en-us/develop/nodejs/common-tasks/working-with-node-modules/

您是否尝试过将已编译的模块添加为项目的一部分,而不是尝试让 Azure 在部署时编译该模块?

于 2013-09-03T15:42:27.153 回答