1

ソースから PyV8 をインストールしようとしています。svn から v8 をダウンロードし、v8 のホームパスをエクスポートして、pyv8 フォルダーに setup.py をインストールしようとしました。以下の多くのエラーが表示されます...

INFO: Found Google v8 base on V8_HOME </media/DATA/thug-honey/v8>
running install
running bdist_egg
running egg_info
creating PyV8.egg-info
writing requirements to PyV8.egg-info/requires.txt
writing PyV8.egg-info/PKG-INFO
writing top-level names to PyV8.egg-info/top_level.txt
writing dependency_links to PyV8.egg-info/dependency_links.txt
writing manifest file 'PyV8.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'PyV8.egg-info/SOURCES.txt'
installing library code to build/bdist.linux-x86_64/egg
running install_lib
running build_py
running build_ext
building '_PyV8' extension
x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -DBOOST_PYTHON_STATIC_LIB -DV8_NATIVE_REGEXP -DENABLE_DEBUGGER_SUPPORT -DV8_TARGET_ARCH_X64 -I/media/DATA/thug-honey/v8/include -I/media/DATA/thug-honey/v8 -I/media/DATA/thug-honey/v8/src -I/usr/lib/python2.7/dist-packages/boost -I/usr/include/python2.7 -c src/Utils.cpp -o build/temp.linux-x86_64-2.7/src/Utils.o -Wno-write-strings -g -O3
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++ [enabled by default]
In file included from src/Locker.h:3:0,
                 from src/Utils.cpp:11:
src/Exception.h: In constructor ‘CJavascriptStackTrace::CJavascriptStackTrace(v8::Isolate*, v8::Handle<v8::StackTrace>)’:
src/Exception.h:43:43: error: no matching function for call to ‘v8::Persistent<v8::StackTrace>::Persistent(v8::Isolate*&, v8::Handle<v8::StackTrace>&)’
     : m_isolate(isolate), m_st(isolate, st)
                                           ^

pyv8が機能するように私を導くことができますか

または、PyV8 用の debian パッケージを見つけることができれば

4

1 に答える 1

0

IMO PyV8 は十分に維持されていないため、実際には V8 ビルドと PyV8 ビルドの特定の組み合わせでのみ機能します。メモリリークにも注意してください。何か安定させるために、非常に具体的なクリーンアップコードでラップする必要がありました。このアプローチは、次の問題に記載されています。

https://code.google.com/p/pyv8/issues/detail?id=229&sort=-id

最初からやり直す場合は、node.js プロセスと python プロセスの間で IPC を実行して、より安定した効率的な方法で同じ機能を取得することを検討します。

于 2014-09-08T14:50:52.320 に答える