Ubuntu下安装PyV8
这几天需要在使用PyV8来进行python与javascript的交互。之前在window下安装过,直接使用的exe安装的,也没有遇到什么问题。 安装依赖 首先安装依赖:Boost,这一步网上的大部分教程都差不多,也是必须的; sudo apt-get install scons sudo apt-get install libboost-dev libboost-thread-dev sudo apt-get install libboost-system-dev libboost-python-dev 安装PyV8 网上的大部分教程均是使用svncheckout出V8,PyV8的代码,然后再设置什么V8的目录为V8_HOME最后在编译PyV8;先不说能不能使用svn迁出,(反正我翻墙都没有迁出来),后来去google.code网站上, 下载了源代码,结果编译期间出各种错误,根本没办法执行。 还有一些直接使用pip安装的教程,也是报各种错,缺少这个啦,缺少那个啦。 解压出来应该有如下两个文件:一个源码,一个二进制文件。一般Python的第三方包有这俩文件就够了, PyV8.py _PyV8.so cd pyv8 //进入解压后的目录 sudo cp * /usr/lib/python2.7/dist-packages/ 之后尝试导入import PyV8结果报以下的一个错误: ImportError: libboost_python_py27.so.1.54.0: cannot open shared object file: No such file or directory shomy@LiuPC:blog$ find /usr/lib/ -name libboost_python-py27.so.1.54.0 果然有这个链接库,那为啥检测不到呢,问题就出在环境变量LD_LIBRARY_PATH上,因为python寻找链接库的时候,是从该路径里面找的。 然而我echo $LD_LIBRARY_PATH却啥都没有,只要把上面的路径加入到环境变量就可以吧。--于是在.bashrc最后加入了一行:(路径可能不一致,请根据自己的实际情况添加) export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/x86_64-linux-gnu 执行下面的测试代码: import PyV8 ctxt = PyV8.JSContext() ctxt.enter() func = ctxt.eval(""" (function(){ function hello(){ return "Hello world."; } return hello(); }) """) print func() 执行输出Hello World 就说明安装成功了。可以去模拟登录了~~~ (编辑:莱芜站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |