15

node-jqueryを機能させようとしています。contextifyは依存関係の1つです(jsdomに必要です)。

contextifyは、Pythonを使用して何らかの方法で構築する必要があります。しかし、これはWindows7x64では機能しないようです。少なくとも1台の私のコンピューター:)

いくつかの読み取り(#10#12#17 )と、このフォークとこれによって提供されるいくつのバイナリを試した後、私はそれを動作させることができます...

node-gyp configure()からまたはnode-gyp rebuild( )から同じエラーが発生しましたnpm install jquery

info it worked if it ends with ok
info downloading: http://nodejs.org/dist/v0.6.14/node-v0.6.14.tar.gz
info downloading: http://nodejs.org/dist/v0.6.14/x64/node.lib
info downloading: http://nodejs.org/dist/v0.6.14/node.lib
spawn python [ 'D:\\Users\\ngryman\\.node-gyp\\0.6.14\\tools\\gyp_addon',
  'binding.gyp',
  '-ID:\\Users\\ngryman\\build\\config.gypi',
  '-f',
  'msvs',
  '-G',
  'msvs_version=2010' ]
  File "D:\Users\ngryman\.node-gyp\0.6.14\tools\gyp_addon", line 40
    print 'Error running GYP'
                        ^
SyntaxError: invalid syntax
ERR! Error: `gyp_addon` failed with exit code: 1
  at ChildProcess.onCpExit (D:\Users\ngryman\AppData\Roaming\npm\node_modules
node-gyp\lib\configure.js:226:16)
  at ChildProcess.emit (events.js:70:17)
  at maybeExit (child_process.js:360:16)
  at Process.onexit (child_process.js:396:5)
ERR! not ok

構文エラーがあるようです...私はPythonにあまり慣れていません。

これが私のバージョンです:

  • Python:3.2.3
  • NodeJS:0.6.14

誰かアイデアがありますか?

ありがとう!

4

7 に答える 7

14

なんとか作りましたが、本当に辛かったと思います。実際、それは一時的な記憶喪失を引き起こすほど苦痛でした、そして私はそれをどのようにしたかを忘れました。

Pythonとは別に、VisualStudioも必要です。

とにかく、私はバイナリを持っています、私はそれらをgihubにアップロードしました:
https ://github.com/mihaifm/jsdom_binaries

そのリポジトリのクローンを作成し、内部node_modulesにあるものをプロジェクトにコピーするだけで、準備完了です。

更新(2013年3月)

これらのバイナリは不要になりました(少なくとも、VS2010がインストールされているWin7では必要ありません)。jsdomそして今、 :contextifyだけでインストールすることができますnpm

npm install jsdom
npm install contextify

( node-gypの要件に記載されているように、PythonとMS C ++コンパイラが必要です)

誰かがまだインストールに問題がある場合に備えて、リポジトリも更新しました。

于 2012-04-19T19:58:03.760 に答える
3

ノード0.8.11(x64)とPython 2.7.3を使用して、Windows 7(x64)でnode-jqueryを正常にビルドできました。私のjquery構造は次のようになります。

┬ jquery@1.7.3
├── htmlparser@1.7.6
├─┬ jsdom@0.2.19
│ ├─┬ contextify@0.1.3
│ │ └── bindings@1.0.0
│ ├── cssom@0.2.5
│ ├── cssstyle@0.2.3
│ └─┬ request@2.11.4
│   ├─┬ form-data@0.0.4
│   │ ├── async@0.1.22
│   │ └─┬ combined-stream@0.0.3
│   │   └── delayed-stream@0.0.5
│   └── mime@1.2.7
├── location@0.0.1
├── navigator@1.0.1
└── xmlhttprequest@1.4.2

node-gypの作者によると https://github.com/TooTallNate/node-gyp/issues/155

Ya、Python3とPython2は互換性がありませんが、gypにはPython2が必要です。

于 2012-10-29T18:13:23.177 に答える
3

Contextifyの完全な機能セットが必要ない場合、CheerioはWindowsへのインストールがはるかに高速で簡単であり、サーバー側で使用するほとんどのjQuery関数を提供します。

http://matthewmueller.github.com/cheerio/

于 2013-03-31T06:51:49.767 に答える
2

私はそれを使用して構築しました

  • Windows 8 x64 DP
  • Python 2.7(PATH上)
  • ノード0.8.11x86(PATH上)
  • Visual Studio 2010(インストールされた「VisualC ++」機能が必要)

contextify 0.1.3バイナリ(おそらく32ビットノードバージョンでのみ機能します)は、私のGitHubリポジトリにあります。これらはjsdom0.2.18(2012-10-13現在のバージョン)と連携して動作します。

于 2012-10-13T22:25:23.887 に答える
1

jsdom readme.mdから:

ウィンドウズ

  • x64バージョンではなく、 [Node.jsforWindows]のx86バージョンの最近のコピー。
  • Visual C ++2010Expressのコピー。
  • [Python 2.7]のコピーで、デフォルトの場所にインストールされていますC:\Python27

私はこれを正確に実行しましたが、x64バージョンも機能することを除いて、問題なく機能しました。

于 2014-01-16T14:58:20.520 に答える
1

windows-build-tools最も簡単な方法は、パッケージをインストールすることです。これには、コンテキスト化を構築するために必要なすべてが含まれています。管理者権限で実行されているPowerShellプロンプトからコマンドを実行します。

npm install --global --production windows-build-tools

https://www.npmjs.com/package/windows-build-tools

これらのツールは、一般的なネイティブモジュールをコンパイルするために必要です。また、 Python 2.7をインストールし、マシンとnpmを適切に構成します。

コンテンツ

  • Visual C ++コンパイラ(x86、X64、およびARMを対象)
  • Visual C ++コンパイラ(x86、X64、およびARMを対象)
  • Visual C ++ヘッダーおよびライブラリ(CRTおよびSTL)
  • Visual C ++ビルドスクリプト(Windowsデスクトップを対象)
  • Microsoft Build Tools 2015(MSBuild)
  • Windows SDK 8.1(オプション、デフォルトでオン)
  • Windows SDK 10(オプション、デフォルトではオフ)
  • ATLおよびMFC(オプション、デフォルトでオフ)
  • C++ビルドツール固有のコマンドプロンプト
于 2016-09-14T14:28:29.630 に答える
0

Python 2.7.3を使用していて、管理者としてcmd行を実行していることを確認する必要がありました(管理者として実行を右クリック)。

> python --version

私はそれを使用して構築しました

  • Windows 7 x64
  • Python 2.7.3
  • ノード0.8.17
  • Visual Studio 10
于 2013-01-24T20:17:11.390 に答える