web-dev-qa-db-ja.com

Gulp:Node 4.0更新後のセグメンテーションフォールト11

Node 4.に更新しました。

Gulpを実行すると、次のようになります。

セグメンテーション違反:11

私のインクルード:

var gulp = require('gulp');

var jscs = require('gulp-jscs');
var concat = require('gulp-concat');
var uglify = require('gulp-uglify');
var rename = require('gulp-rename');
var responsive = require('gulp-responsive');
var imagemin = require('gulp-imagemin');
var jpegtran = require('imagemin-jpegtran');
var rollup = require('gulp-rollup');
var webp = require('gulp-webp');
var spritesmith = require('gulp.spritesmith');

デバッグタスクを実行できません。 Verboseはそれ以上何も吐き出しません。

考え?

また、Node 4.0に更新して、ノードサーバーでもセグメンテーションエラーが発生します。node_modulesディレクトリを削除して_npm install_を再実行するだけで問題ありません。

Npmの新しいバージョンは古いnpmによってインストールされたいくつかのモジュールをロードするのに問題があるためだと思います---しかし、いくつかのモジュールについては、他のサーバーで更新した後、直接_​​npm start_を実行しても問題ありません。これについては詳しく説明していません。

簡単な修正として、自分の依存関係でこれを試すことができると思います。

19
Kevin Xi

削除する提案node_modulesを実行してからnpm installは良いものです。それが動作します。ただし、少しだけ効率的ですが、単にnpm rebuild削除せずにnode_modulesまたは実行中npm install。すべてのファイルを再度ダウンロードする必要なく、インストールしたNode/V8の新しいバージョンのネイティブモジュールを再コンパイルします。

しかし、他のすべてが失敗した場合:

  • Node_modulesディレクトリを削除します
  • npm cache clean && npm install
  • npm uninstall -g gulp && npm install -g gulp
11
Trott

私は最近この問題に遭遇し、上記の手順を試みました:

$ npm cache clean && npm install

しかし、まだ障害が発生していました。すべてのファイルを削除して実行した後でも

$ npm install

それで、さらにルート化を行い、ノードモジュールの一部に.infoで終わるファイルがあり、Drupal(このフレームワークを実行している)が発生する)という問題があることがわかりました.infoファイルをtheme.infoファイルとして読み取ろうとします。これらのファイルの名前を変更すると(末尾が異なる)、問題が修正されました。

私の問題はDrupal固有ですが、他のフレームワークでも同様の問題が発生することを想像できました。

3
karolus

私の場合の問題は、Node v5.9.0がインストールされていることでした。そのため、v4.4.1-LTSにダウングレードし、最終的に再び機能させました。

Homebrewの使用:

$ brew tap homebrew/versions
$ brew install homebrew/versions/node4-lts

その後:

$ npm rebuild
1
Jorge Epuñan

今日もこのバグに遭遇しました。約1時間検索した後、node.js全体、すべてのプラグイン、およびNPMのキャッシュを消去して、解決せずにキャッシュをクリーニングします。 SASSファイルでいくつかのステップを戻そうとしました。

そしてそれを修正しました。しかし、それはコードの誤りや変数によるものではありませんでしたが、私は自分のファイルに次のように述べました。

a
   transition: all 0.5s ease-in-out

   &:hover, &:focus
       transition: all 0.5s ease-in-out

そのバグが何度も何度もそれを作ろうとした。本当に理由がわからない。クラスまたは別のタグにネストされたこのステートメントを使用すると、正しく機能します。

1
Ernedar

プロジェクトからnode_modulesを削除し、npm install

0
Sergey Andreev