Building atom-shell-starter on Windows


#1

Hello all,

Has anyone managed to build atom-shell-starter on Windows 8?

I’m on 8.1 (x64) and have all (free) flavours of Visual Studio installed (2010, 2012, 2013), plus 32bit io.js.

Cloning the repo and then running the bootstrap script gives me the following:

[106+]:> .\bootstrap.cmd
Node: v1.2.0
npm: v1.4.28
Python: v2.7.6
Installing build modules...
child_process: customFds option is deprecated, use stdio instead.
gyp ERR! build error
gyp ERR! stack Error: `msbuild` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onExit (C:\Program Files (x86)\iojs\node_modules\npm\node_modules\node-gyp\lib\build.js:267:23)
gyp ERR! stack     at emitTwo (events.js:85:13)
gyp ERR! stack     at ChildProcess.emit (events.js:153:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (child_process.js:1044:12)
gyp ERR! System Windows_NT 6.3.9600
gyp ERR! command "node" "C:\\Program Files (x86)\\iojs\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild"
gyp ERR! cwd C:\Users\someuser\Documents\development\atom-shell-starter\build\node_modules\runas
gyp ERR! node -v v1.2.0
gyp ERR! node-gyp -v v1.0.2
gyp ERR! not ok
npm ERR! Windows_NT 6.3.9600
npm ERR! argv "C:\\Program Files (x86)\\iojs\\\\node.exe" "C:\\Program Files (x86)\\iojs\\node_modules\\npm\\bin\\npm-cli.js" "--userconfig=C:\\users\\someuser\\documents\\development\\atom-shell-starter\\script\\.npmrc" "install" "--quiet"
npm ERR! node v1.2.0
npm ERR! npm  v2.5.1
npm ERR! code ELIFECYCLE

npm ERR! runas@1.0.1 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the runas@1.0.1 install script 'node-gyp rebuild'.
npm ERR! This is most likely a problem with the runas 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 runas
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     C:\Users\someuser\Documents\development\atom-shell-starter\build\npm-debug.log

If I run npm install in the root directory then all modules install correctly (which implies that it’s actually doing something different to the script). Running npm install in the apm directory gives me build errors on first-mate and git-utils, which looks to be caused by them both using nan.h.

My question is: has anyone else been able to build and run the starter app on Windows, and can you share your magic recipe with me?

Thanks in advance,

Felix


#2

@paulcbetts, do you have any ideas on this one?


#3

This line looks suspicious to me… See that double backslash before node.exe? I don’t think it should be there…


#4

The double backslash is an artefact from the npm.cmd file - it expands the directory and adds \node.exe. I’d imagine there are some cases where the directory doesn’t have a trailing slash, so one needs to be added. Either way, it doesn’t affect the running of the command:

> "C:\Program Files (x86)\iojs\\node.exe" -v
v1.2.0

#5

We’re probably not compatible with io.js yet (basically everything Atom has this problem atm), try downgrading to Node 0.10.x on 32-bit.


#6

Quick update: I tried a build using AppVeyor and got the following:


Build started
git clone -q --branch=master git://github.com/lllama/atom-shell-starter.git c:\atom-shell-starter
git checkout -qf ac544185f6a8a36453b51932e7621d12adf6c87a
c:\atom-shell-starter\script\bootstrap.cmd
Node: v0.10.36
npm: v1.4.28
Python: v2.7.8
Installing build modules...
Installing apm...
Installing modules done
Deduping modules done
c:\atom-shell-starter\script\build.cmd
Node: v0.10.36
npm: v1.4.28
Python: v2.7.8
Installing build modules...
Installing apm...
Installing modules done
Deduping modules done
 
events.js:72
        throw er; // Unhandled 'error' event
              ^
Error: spawn ENOENT
    at errnoException (child_process.js:1011:11)
    at Process.ChildProcess._handle.onexit (child_process.js:802:34)
Command exited with code 8

Looks like their setup at least gets past the bootstrap - it just fails on the second dedup. I shall try and recreate their environment locally.

Not sure what people can see on other people’s AppVeyor projects but here’s the link if you’re curious: https://ci.appveyor.com/project/lllama/atom-shell-starter


#7

I’ll give it a go and report back (tomorrow as I’m on GMT).

Thanks for the replies.


#8

Another update. Installing node 0.10.36 and making sure the python 2.7 is on the path, rather than 3.4 (which I was specifying in my npmrc) results in bootstrap running successfully.

The build process still seems to fail, however, though I’ve traced this to an atom-shell issue, rather than the starter app. I’ve filed an issue here: https://github.com/atom/atom-shell/issues/1156

Thanks again for taking the time to reply.


#9

i’m getting similar issues… i just posted a comment to an issue on atom-shell-starter that looks similar.


#10

This should all be resolved (to update this thread)


#11

Another update. Building with the correct version of python, node and Visual Studio makes things run a lot smoother (who knew?!?), though I still can’t get the build command to complete (bootstrap seems happy now). The error occurs when updating the atom-shell submodules when doing the build, though this is quite strange, as I can build atom-shell on its own without any trouble.

Odd. Most odd.