Nodejs and Coffeescript install (Ubuntu 12.04)

2019-03-17 00:37发布

问题:

Edit: I have added an answer on how to fix this in case someone struggles with it.

I have upgraded my laptop from Ubuntu 11 to 12.04 and for some reason the coffeescript compiler stopped working. I use it for web development, but I'm still a newbie working in a linux environment.

Basically when I try to run cake.coffeescript I get the following:

path.existsSync is deprecated. It is now called `fs.existsSync`.
Cakefile defines the following tasks:

cake doc                  # generate documentation for *.coffee files
cake doc_copy             # copy documentation to gh-pages branch
cake build                # generate unified JavaScript file for whole Hallo
cake min                  # minify the generated JavaScript file
cake bam                  # build and minify Hallo

So in a sense it works, but whenever I try running cake.coffeescript build it throws me an error:

path.existsSync is deprecated. It is now called `fs.existsSync`.
Executing coffee -o examples -j hallo.js -c `find src -type f -name '*.coffee'`
{ [Error: Command failed: 
node.js:249
        throw e; // process.nextTick error, or 'error' event on first tick
              ^
Error: require.paths is removed. Use node_modules folders, or the NODE_PATH environment variable instead.
    at Function.<anonymous> (module.js:381:11)
    at Object.<anonymous> (/home/ignas/bin/coffee@1.3.1:4:21)
    at Module._compile (module.js:444:26)
    at Object..js (module.js:462:10)
    at Module.load (module.js:351:32)
    at Function._load (module.js:309:12)
    at module.js:482:10
    at EventEmitter._tickCallback (node.js:238:11)
] killed: false, code: 1, signal: null }

node.js:249
        throw e; // process.nextTick error, or 'error' event on first tick
              ^
Error: require.paths is removed. Use node_modules folders, or the NODE_PATH environment variable instead.
    at Function.<anonymous> (module.js:381:11)
    at Object.<anonymous> (/home/ignas/bin/coffee@1.3.1:4:21)
    at Module._compile (module.js:444:26)
    at Object..js (module.js:462:10)
    at Module.load (module.js:351:32)
    at Function._load (module.js:309:12)
    at module.js:482:10
    at EventEmitter._tickCallback (node.js:238:11)

I guess this is caused by nodejs. I tried to google for a solution, but nothing helped. I think the issue is with the NODE_PATH variable which I have included to the top of ~/.bashrc file (I followed this tutorial to install everything). Any help would be really appreciated, because I'm about to finish a part of a project and need to hand it in, but can't do it without compiling the coffeescript files.

Thanks

回答1:

All sorted now. I had to delete all the exiting folders as well as everything from the ubuntu repositories containing the npm, coffee-script and node and install everything from git. Step by step installation:

1. clone https://github.com/joyent/node.git
2. git checkout v0.6.17 //current stable at my time
3. cd node && ./configure && make && make install
4. curl http://npmjs.org/install.sh | sudo sh
5. download coffeescript from git and do sudo bin/cake install
6. sudo npm install coffee-script -g

This should work