From ab9442851ea3f003063f7ead8fc566f808391460 Mon Sep 17 00:00:00 2001 From: cyrbon Date: Sat, 25 Feb 2017 20:23:59 +0200 Subject: Add troubleshooting "Error spawn ENOENT" --- README.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/README.md b/README.md index 91ccfc0..a4ce614 100644 --- a/README.md +++ b/README.md @@ -116,3 +116,20 @@ const webpackConfig = { // ... } ``` + +#### Error `spawn ENOENT` + +This is caused when the loader tries to spawn a binary that does not exists +(`file or directory not found`). If you call webpack like `webpack` or +`webpack --watch`, then you need to ensure that all required binaries that the +loader depends on are available in your `$PATH`. + +If you use `npm run` and `npm start` on NixOS, then it will first attempt to find +binaries in `node_packages/.bin`. If you have the compiler installed through `npm` +and it finds it there, this will cause `ENOENT`on Nix, because +[the binary needs to be patched first, because npm will install the binary that is +linked with /lib64/ld-linux-x86-64.so.2 - a file that will not exist at that path in +NixOS](https://github.com/ethul/purescript-webpack-example/issues/5#issuecomment-282492131). +The solution is to simply use the compiler from `haskellPackages.purescript` and +make sure that it's available in `$PATH`. For more information about how to make +it work on Nix, see [Purescript Webpack Example](https://github.com/ethul/purescript-webpack-example#using-globally-installed-binaries) -- cgit v1.2.3 From be05a0550905c1c6b993af72bd511b6dbe73101d Mon Sep 17 00:00:00 2001 From: cyrbon Date: Sat, 25 Feb 2017 20:35:45 +0200 Subject: Rephrase troubleshoting "Error `spawn ENOENT`" --- README.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index a4ce614..c15f03c 100644 --- a/README.md +++ b/README.md @@ -121,15 +121,15 @@ const webpackConfig = { This is caused when the loader tries to spawn a binary that does not exists (`file or directory not found`). If you call webpack like `webpack` or -`webpack --watch`, then you need to ensure that all required binaries that the +`webpack --watch`, then ensure that all required binaries that the loader depends on are available in your `$PATH`. -If you use `npm run` and `npm start` on NixOS, then it will first attempt to find -binaries in `node_packages/.bin`. If you have the compiler installed through `npm` -and it finds it there, this will cause `ENOENT`on Nix, because -[the binary needs to be patched first, because npm will install the binary that is -linked with /lib64/ld-linux-x86-64.so.2 - a file that will not exist at that path in -NixOS](https://github.com/ethul/purescript-webpack-example/issues/5#issuecomment-282492131). +If you run webpack through an npm script (e.g., npm run or npm start) on NixOS, +then it will first attempt to find binaries in `node_packages/.bin`. +If you have the compiler installed through `npm` and it finds it there, this will +cause `ENOENT`on Nix, because [the binary needs to be patched first, but npm will +install the binary that is linked with /lib64/ld-linux-x86-64.so.2 - a file that +will not exist at that path in NixOS](https://github.com/ethul/purescript-webpack-example/issues/5#issuecomment-282492131). The solution is to simply use the compiler from `haskellPackages.purescript` and make sure that it's available in `$PATH`. For more information about how to make it work on Nix, see [Purescript Webpack Example](https://github.com/ethul/purescript-webpack-example#using-globally-installed-binaries) -- cgit v1.2.3