stackgl / shader-school

:mortar_board: A workshopper for GLSL shaders and graphics programming
Other
4.32k stars 254 forks source link

Crashes immediately on opening any tutorial #135

Open alecmolloy opened 9 years ago

alecmolloy commented 9 years ago

Running OS X 10.11.0 Beta, Chrome 44.

Hey, really excited to try this out, but I get crashes every time I try to open any tutorial. This is what gets logged out:

200    5ms       299B  /
200  269ms    71.34KB  /index.js ➞ /usr/local/lib/node_modules/shader-school/node_modules/browserify ./index.js -d
404    1ms        12B  /favicon.ico
200    1ms       282B  /
/usr/local/lib/node_modules/shader-school/node_modules/glslify/node_modules/glslify-stream/index.js:193
      if(err) throw err
                    ^
Error: Cannot find module '/Users/alecmolloy/Dropbox (Personal' from '/usr/local/lib/node_modules/shader-school/exercises/intro-0'
    at /usr/local/lib/node_modules/shader-school/node_modules/glslify/node_modules/glslify-stream/node_modules/glsl-resolve/node_modules/resolve/lib/async.js:36:25
    at load (/usr/local/lib/node_modules/shader-school/node_modules/glslify/node_modules/glslify-stream/node_modules/glsl-resolve/node_modules/resolve/lib/async.js:54:43)
    at /usr/local/lib/node_modules/shader-school/node_modules/glslify/node_modules/glslify-stream/node_modules/glsl-resolve/node_modules/resolve/lib/async.js:60:22
    at /usr/local/lib/node_modules/shader-school/node_modules/glslify/node_modules/glslify-stream/node_modules/glsl-resolve/node_modules/resolve/lib/async.js:16:47
    at FSReqWrap.oncomplete (fs.js:95:15)

I also see the following when I try to install. Looks like a lot of fatal errors:

npm WARN deprecated rework-inline@0.2.0: deprecated in favor of rework-import
npm WARN deprecated find-file@0.1.4: Use the globby package instead

> fsevents@0.2.1 install /usr/local/lib/node_modules/shader-school/node_modules/glslify-live/node_modules/chokidar/node_modules/fsevents
> node-gyp rebuild

gyp WARN EACCES user "root" does not have permission to access the dev dir "/Users/alecmolloy/.node-gyp/0.12.7"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/usr/local/lib/node_modules/shader-school/node_modules/glslify-live/node_modules/chokidar/node_modules/fsevents/.node-gyp"
  CXX(target) Release/obj.target/fse/fsevents.o
In file included from ../fsevents.cc:6:
../node_modules/nan/nan.h:339:13: error: no member named 'New' in 'v8::String'
    return  _NAN_ERROR(v8::Exception::Error, errmsg);
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../node_modules/nan/nan.h:319:50: note: expanded from macro '_NAN_ERROR'
# define _NAN_ERROR(fun, errmsg) fun(v8::String::New(errmsg))
                                     ~~~~~~~~~~~~^
../node_modules/nan/nan.h:343:5: error: no member named 'ThrowException' in
      namespace 'v8'
    _NAN_THROW_ERROR(v8::Exception::Error, errmsg);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../node_modules/nan/nan.h:324:11: note: expanded from macro '_NAN_THROW_ERROR'
      v8::ThrowException(_NAN_ERROR(fun, errmsg));                             \
      ~~~~^
../node_modules/nan/nan.h:343:5: error: no member named 'New' in 'v8::String'
    _NAN_THROW_ERROR(v8::Exception::Error, errmsg);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../node_modules/nan/nan.h:324:26: note: expanded from macro '_NAN_THROW_ERROR'
      v8::ThrowException(_NAN_ERROR(fun, errmsg));                             \
                         ^~~~~~~~~~~~~~~~~~~~~~~
../node_modules/nan/nan.h:319:50: note: expanded from macro '_NAN_ERROR'
# define _NAN_ERROR(fun, errmsg) fun(v8::String::New(errmsg))
                                     ~~~~~~~~~~~~^
../node_modules/nan/nan.h:348:9: error: no type named 'ThrowException' in
      namespace 'v8'
    v8::ThrowException(error);
    ~~~~^
../node_modules/nan/nan.h:355:65: error: no member named 'New' in 'v8::String'
    v8::Local<v8::Value> err = v8::Exception::Error(v8::String::New(msg));
                                                    ~~~~~~~~~~~~^
../node_modules/nan/nan.h:357:26: error: no member named 'New' in 'v8::String'
    obj->Set(v8::String::New("code"), v8::Int32::New(errorNumber));
             ~~~~~~~~~~~~^
../node_modules/nan/nan.h:357:65: error: too few arguments to function call,
      expected 2, have 1
    obj->Set(v8::String::New("code"), v8::Int32::New(errorNumber));
                                      ~~~~~~~~~~~~~~            ^
/usr/local/lib/node_modules/shader-school/node_modules/glslify-live/node_modules/chokidar/node_modules/fsevents/.node-gyp/0.12.7/deps/v8/include/v8.h:2012:3: note: 
      'New' declared here
  static Local<Integer> New(Isolate* isolate, int32_t value);
  ^
In file included from ../fsevents.cc:6:
../node_modules/nan/nan.h:369:12: error: no member named 'New' in 'v8::String'
    return _NAN_ERROR(v8::Exception::TypeError, errmsg);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../node_modules/nan/nan.h:319:50: note: expanded from macro '_NAN_ERROR'
# define _NAN_ERROR(fun, errmsg) fun(v8::String::New(errmsg))
                                     ~~~~~~~~~~~~^
../node_modules/nan/nan.h:373:5: error: no member named 'ThrowException' in
      namespace 'v8'
    _NAN_THROW_ERROR(v8::Exception::TypeError, errmsg);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../node_modules/nan/nan.h:324:11: note: expanded from macro '_NAN_THROW_ERROR'
      v8::ThrowException(_NAN_ERROR(fun, errmsg));                             \
      ~~~~^
../node_modules/nan/nan.h:373:5: error: no member named 'New' in 'v8::String'
    _NAN_THROW_ERROR(v8::Exception::TypeError, errmsg);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../node_modules/nan/nan.h:324:26: note: expanded from macro '_NAN_THROW_ERROR'
      v8::ThrowException(_NAN_ERROR(fun, errmsg));                             \
                         ^~~~~~~~~~~~~~~~~~~~~~~
../node_modules/nan/nan.h:319:50: note: expanded from macro '_NAN_ERROR'
# define _NAN_ERROR(fun, errmsg) fun(v8::String::New(errmsg))
                                     ~~~~~~~~~~~~^
../node_modules/nan/nan.h:377:12: error: no member named 'New' in 'v8::String'
    return _NAN_ERROR(v8::Exception::RangeError, errmsg);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../node_modules/nan/nan.h:319:50: note: expanded from macro '_NAN_ERROR'
# define _NAN_ERROR(fun, errmsg) fun(v8::String::New(errmsg))
                                     ~~~~~~~~~~~~^
../node_modules/nan/nan.h:381:5: error: no member named 'ThrowException' in
      namespace 'v8'
    _NAN_THROW_ERROR(v8::Exception::RangeError, errmsg);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../node_modules/nan/nan.h:324:11: note: expanded from macro '_NAN_THROW_ERROR'
      v8::ThrowException(_NAN_ERROR(fun, errmsg));                             \
      ~~~~^
../node_modules/nan/nan.h:381:5: error: no member named 'New' in 'v8::String'
    _NAN_THROW_ERROR(v8::Exception::RangeError, errmsg);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../node_modules/nan/nan.h:324:26: note: expanded from macro '_NAN_THROW_ERROR'
      v8::ThrowException(_NAN_ERROR(fun, errmsg));                             \
                         ^~~~~~~~~~~~~~~~~~~~~~~
../node_modules/nan/nan.h:319:50: note: expanded from macro '_NAN_ERROR'
# define _NAN_ERROR(fun, errmsg) fun(v8::String::New(errmsg))
                                     ~~~~~~~~~~~~^
../node_modules/nan/nan.h:727:49: error: too few arguments to function call,
      single argument 'isolate' was not specified
    v8::Local<v8::Object> obj = v8::Object::New();
                                ~~~~~~~~~~~~~~~ ^
/usr/local/lib/node_modules/shader-school/node_modules/glslify-live/node_modules/chokidar/node_modules/fsevents/.node-gyp/0.12.7/deps/v8/include/v8.h:2388:3: note: 
      'New' declared here
  static Local<Object> New(Isolate* isolate);
  ^
In file included from ../fsevents.cc:6:
../node_modules/nan/nan.h:733:49: error: too few arguments to function call,
      single argument 'isolate' was not specified
    v8::Local<v8::Object> obj = v8::Object::New();
                                ~~~~~~~~~~~~~~~ ^
/usr/local/lib/node_modules/shader-school/node_modules/glslify-live/node_modules/chokidar/node_modules/fsevents/.node-gyp/0.12.7/deps/v8/include/v8.h:2388:3: note: 
      'New' declared here
  static Local<Object> New(Isolate* isolate);
  ^
In file included from ../fsevents.cc:6:
../node_modules/nan/nan.h:740:12: error: no member named 'Dispose' in
      'v8::Persistent<v8::Object, v8::NonCopyablePersistentTraits<v8::Object> >'
    handle.Dispose();
    ~~~~~~ ^
../node_modules/nan/nan.h:741:12: error: no member named 'Clear' in
      'v8::Persistent<v8::Object, v8::NonCopyablePersistentTraits<v8::Object> >'
    handle.Clear();
    ~~~~~~ ^
../node_modules/nan/nan.h:746:39: error: no member named 'NewSymbol' in
      'v8::String'; did you mean 'IsSymbol'?
    NanPersistentToLocal(handle)->Set(NanSymbol("callback"), fn);
                                      ^~~~~~~~~~~~~~~~~~~~~
../node_modules/nan/nan.h:181:38: note: expanded from macro 'NanSymbol'
#define NanSymbol(value) v8::String::NewSymbol(value)
                         ~~~~~~~~~~~~^
/usr/local/lib/node_modules/shader-school/node_modules/glslify-live/node_modules/chokidar/node_modules/fsevents/.node-gyp/0.12.7/deps/v8/include/v8.h:1379:8: note: 
      'IsSymbol' declared here
  bool IsSymbol() const;
       ^
In file included from ../fsevents.cc:6:
../node_modules/nan/nan.h:746:39: error: call to non-static member function
      without an object argument
    NanPersistentToLocal(handle)->Set(NanSymbol("callback"), fn);
                                      ^~~~~~~~~~~~~~~~~~~~~
../node_modules/nan/nan.h:181:38: note: expanded from macro 'NanSymbol'
#define NanSymbol(value) v8::String::NewSymbol(value)
                         ~~~~~~~~~~~~^~~~~~~~~
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
make: *** [Release/obj.target/fse/fsevents.o] Error 1
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:269:23)
gyp ERR! stack     at ChildProcess.emit (events.js:110:17)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (child_process.js:1074:12)
gyp ERR! System Darwin 15.0.0
gyp ERR! command "node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /usr/local/lib/node_modules/shader-school/node_modules/glslify-live/node_modules/chokidar/node_modules/fsevents
gyp ERR! node -v v0.12.7
gyp ERR! node-gyp -v v2.0.1
gyp ERR! not ok 
npm WARN engine pngjs@0.4.0: wanted: {"node":"0.8.x"} (current: {"node":"0.12.7","npm":"2.11.3"})

> fsevents@0.3.6 install /usr/local/lib/node_modules/shader-school/node_modules/beefy/node_modules/chokidar/node_modules/fsevents
> node-gyp rebuild

gyp WARN EACCES user "root" does not have permission to access the dev dir "/Users/alecmolloy/.node-gyp/0.12.7"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/usr/local/lib/node_modules/shader-school/node_modules/beefy/node_modules/chokidar/node_modules/fsevents/.node-gyp"
  SOLINK_MODULE(target) Release/.node
  CXX(target) Release/obj.target/fse/fsevents.o
  SOLINK_MODULE(target) Release/fse.node
npm WARN optional dep failed, continuing fsevents@0.2.1

> canvas@1.2.4 install /usr/local/lib/node_modules/shader-school/node_modules/gl-axes/node_modules/vectorize-text/node_modules/canvas-browserify/node_modules/canvas
> node-gyp rebuild

gyp WARN EACCES user "root" does not have permission to access the dev dir "/Users/alecmolloy/.node-gyp/0.12.7"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/usr/local/lib/node_modules/shader-school/node_modules/gl-axes/node_modules/vectorize-text/node_modules/canvas-browserify/node_modules/canvas/.node-gyp"
./util/has_cairo_freetype.sh: line 4: pkg-config: command not found
gyp: Call to './util/has_cairo_freetype.sh' returned exit status 0. while trying to load binding.gyp
gyp ERR! configure error 
gyp ERR! stack Error: `gyp` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onCpExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:355:16)
gyp ERR! stack     at ChildProcess.emit (events.js:110:17)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (child_process.js:1074:12)
gyp ERR! System Darwin 15.0.0
gyp ERR! command "node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /usr/local/lib/node_modules/shader-school/node_modules/gl-axes/node_modules/vectorize-text/node_modules/canvas-browserify/node_modules/canvas
gyp ERR! node -v v0.12.7
gyp ERR! node-gyp -v v2.0.1
gyp ERR! not ok 

> stanford-dragon@1.1.1 postinstall /usr/local/lib/node_modules/shader-school/node_modules/stanford-dragon
> npm run build

> stanford-dragon@1.1.1 build /usr/local/lib/node_modules/shader-school/node_modules/stanford-dragon
> npm run res1 && npm run res2 && npm run res3 && npm run res4

> stanford-dragon@1.1.1 res1 /usr/local/lib/node_modules/shader-school/node_modules/stanford-dragon
> node lib/build.js models/dragon_vrip.ply.gz 1.js

parsing ply file
unpacking positions
generating module
writing module

> stanford-dragon@1.1.1 res2 /usr/local/lib/node_modules/shader-school/node_modules/stanford-dragon
> node lib/build.js models/dragon_vrip_res2.ply.gz 2.js

parsing ply file
unpacking positions
generating module
writing module

> stanford-dragon@1.1.1 res3 /usr/local/lib/node_modules/shader-school/node_modules/stanford-dragon
> node lib/build.js models/dragon_vrip_res3.ply.gz 3.js

parsing ply file
unpacking positions
generating module
writing module

> stanford-dragon@1.1.1 res4 /usr/local/lib/node_modules/shader-school/node_modules/stanford-dragon
> node lib/build.js models/dragon_vrip_res4.ply.gz 4.js

parsing ply file
unpacking positions
generating module
writing module
npm WARN optional dep failed, continuing canvas@1.2.4
/usr/local/bin/shader-school -> /usr/local/lib/node_modules/shader-school/index.js
shader-school@1.1.0 /usr/local/lib/node_modules/shader-school
├── remove-element@0.0.0
├── domify@1.3.3
├── zfill@0.0.2
├── right-now@1.0.0
├── sidenote@1.0.0
├── canvas-fit@0.0.0
├── gl-fbo-matching@1.0.0
├── findup-element@0.0.0
├── opener@1.4.1
├── clamp@1.0.1
├── google-fonts@0.0.0
├── glsldoc@0.0.4
├── quotemeta@0.0.0
├── insert-css@0.1.1
├── sliced@0.0.5
├── wordwrap@0.0.2
├── memoize-sync@0.0.2 (strip@0.0.0)
├── chalk@0.4.0 (has-color@0.1.7, ansi-styles@1.0.0, strip-ansi@0.1.1)
├── gl-context@0.1.1 (raf-component@1.1.2)
├── frame-debounce@0.0.0 (raf-component@1.1.2)
├── mesh-normals@1.0.0 (unindex-mesh@0.0.0, normals@0.1.0, face-normals@0.0.0)
├── marked@0.3.3
├── ndarray@1.0.18 (iota-array@1.0.0, is-buffer@1.0.2)
├── raf@2.0.4 (performance-now@0.1.4)
├── gl-vao@1.2.1
├── gl-compare@1.0.0 (canvas-pixels@0.0.0)
├── apprise@1.0.0 (emitter-component@1.1.1, once@1.3.2)
├── mouse-position@1.0.0 (events@1.0.2)
├── mouse-pressed@0.0.1 (events@1.0.2)
├── gl-fbo@1.1.3 (webglew@1.0.5)
├── gl-compare-sidebar@1.1.4 (escape-html@1.0.2, inherits@2.0.1, range-slider@1.0.2, events@1.0.2)
├── mkdirp@0.5.1 (minimist@0.0.8)
├── gl-texture2d@1.2.0 (webglew@1.0.5, typedarray-pool@1.1.0, ndarray-ops@1.2.2)
├── gl-buffer@2.1.2 (typedarray-pool@1.1.0, ndarray-ops@1.2.2)
├── browser-menu@0.1.0 (vkey@0.0.3, xtend@2.2.0, events@1.0.2, terminal-menu@0.2.0)
├── a-big-triangle@0.0.0 (gl-vao@0.0.3, gl-buffer@0.1.2)
├── rework-npm@0.6.1 (css-parse@1.7.0, resolve@0.6.3)
├── conway-hart@0.1.0
├── gl-matrix@2.3.1
├── xhr@1.17.1 (once@1.1.1, global@4.3.0, parse-headers@2.0.0)
├── ecstatic@0.5.8 (mime@1.3.4, minimist@1.1.2, he@0.5.0)
├── rework-inline@0.2.0 (parse-import@0.1.3, find-file@0.1.4, css@1.6.0)
├── rework@0.20.3 (hsb2rgb@1.0.2, rework-visit@1.0.0, rework-inherit@0.2.3, color-parser@0.1.0, convert-source-map@0.3.5, mime@1.2.11, debug@2.2.0, css@1.6.0)
├── ndarray-distance@0.0.0 (cwise@0.4.0)
├── highlight.js@8.6.0
├── brfs@1.4.0 (quote-stream@0.0.0, through2@0.4.2, resolve@1.1.6, static-module@1.1.3)
├── envify@1.2.1 (through@2.3.8, xtend@2.1.2, jstransform@3.0.0, esprima-fb@3001.1.0-dev-harmony-fb)
├── browserify@6.3.4 (https-browserify@0.0.0, tty-browserify@0.0.0, builtins@0.0.7, constants-browserify@0.0.1, path-browserify@0.0.0, process@0.8.0, os-browserify@0.1.2, isarray@0.0.1, inherits@2.0.1, commondir@0.0.1, string_decoder@0.10.31, stream-browserify@1.0.0, defined@0.0.0, shell-quote@0.0.1, domain-browser@1.1.4, shallow-copy@0.0.1, xtend@3.0.0, duplexer2@0.0.2, deep-equal@0.2.2, assert@1.1.2, querystring-es3@0.2.1, punycode@1.2.4, util@0.10.3, through2@1.1.1, events@1.0.2, parents@0.0.3, concat-stream@1.4.10, timers-browserify@1.4.1, vm-browserify@0.0.4, console-browserify@1.1.0, subarg@1.0.0, http-browserify@1.7.0, readable-stream@1.1.13, buffer@2.8.2, shasum@1.0.1, url@0.10.3, resolve@0.7.4, labeled-stream-splicer@1.0.2, glob@4.5.3, JSONStream@0.8.4, deps-sort@1.3.9, browser-resolve@1.9.0, syntax-error@1.1.4, browser-pack@3.2.0, crypto-browserify@3.9.14, insert-module-globals@6.5.2, browserify-zlib@0.1.4, umd@2.1.0, module-deps@3.8.1)
├── inquirer@0.5.1 (mute-stream@0.0.4, through@2.3.8, async@0.8.0, readline2@0.1.1, lodash@2.4.2, cli-color@0.3.3)
├── glslify@1.6.0 (cssauron-glsl@0.0.0, emit-function@0.0.2, shortest@0.0.0, cssauron@0.0.2, through@2.3.8, glsl-min-stream@0.0.2, gl-shader-core@2.2.0, glsl-deparser@0.0.2, nopt@2.2.1, resolve@0.6.3, new-from@0.0.3, concat-stream@1.5.0, glsl-extract@0.0.2, glslify-stream@0.4.1, replace-method@0.0.0, esprima@1.2.5, static-eval@0.2.4, sleuth@0.0.0)
├── autoprefixer@1.3.1 (postcss@0.3.5, fs-extra@0.9.1, caniuse-db@1.0.30000240)
├── baboon-image@1.0.1 (ndpack-image@1.0.4)
├── glslify-live@2.1.0 (through@2.3.8, once@1.3.2, uuid@1.4.2, events@1.0.2, sleuth@0.1.1, sse-stream@0.0.4, glsl-resolve@0.0.1, glslify-bundle@1.0.3, gl-shader-update@0.0.0, esprima@1.2.5, replace-method@0.0.0, request@2.60.0, static-eval@0.2.4, envify@2.0.1, chokidar@0.8.4)
├── beefy@2.1.5 (leftpad@0.0.0, pretty-bytes@0.1.2, ansicolors@0.3.2, find-global-packages@0.0.1, which@1.0.9, ignorepatterns@1.0.1, response-stream@0.0.0, through@2.2.7, open@0.0.3, minimist@0.0.8, mime@1.2.11, portfinder@0.2.1, xtend@2.1.2, readable-stream@1.1.13, resolve@0.6.3, concat-stream@1.5.0, script-injector@1.0.0, chokidar@1.0.5)
├── gl-axes@2.3.0 (extract-frustum-planes@1.0.0, bit-twiddle@1.0.2, gl-state@1.0.0, split-polygon@1.0.0, vectorize-text@2.0.4)
└── stanford-dragon@1.1.1 (map-limit@0.0.0, glob@3.2.11, parse-ply@0.1.0)