Python 安装 V8 引擎 – pyv8

简介

V8是谷歌开源的JavaScript引擎, 使用C++开发,并在谷歌浏览器中使用. 它可以独立运行, 也可以嵌入到任何C++应用程序中.pyv8 是 Python 的对 v8 引擎一个封装.

安装

1. 安装 scons, python 的devel, boost 以及 boost for python 的 devel

Ubuntu:

sudo apt-get install scons libboost-dev libboost-thread-dev \

libboost-system-dev \

python-dev libboost-python-dev

Centos:

yum install scons python-devel boost-devel boost-python -y

2. 签出 v8 和 pyv8

svn checkout http://v8.googlecode.com/svn/trunk/ v8

svn checkout http://pyv8.googlecode.com/svn/trunk/ pyv8

3. 安装 PyV8

设置 V8_HOME 环境变量为你签出v8代码的目录, 是编译 PyV8的关键步骤. 这将允许PyV8增补(patch)V8将其编译成静态库,而不是默认的动态库.一旦你设置了这个你就可以使用标准的Python setup.py 命令来编译和安装PyV8了.

cd v8

export PyV8=`pwd`

export V8_HOME=`pwd`

cd ../pyv8

python setup.py build

sudo python setup.py install

如果上述编译过程出错, 尝试一下操作

删除 pyv8 和 v8 目录, 执行

svn checkout -r 508 http://pyv8.googlecode.com/svn/trunk/ pyv8

修改 pyv8 目录下的文件 setup.py 文件, 将

V8_SVN_REVISION = None

改为

V8_SVN_REVISION = 14004

再执行

python setup.py build

sudo python setup.py install

也许就可以通过了

测试 PyV8 的安装

新增以下 Python 脚本:

import PyV8

ctxt = PyV8.JSContext()

ctxt.enter()

func = ctxt.eval("""

(function(){

function hello(){

return "Hello world.";

}

return hello();

})

""")

print func()

执行脚本,如果能看到输出 Hello world. 那么恭喜你, 你的 Python 就可以执行 JS 了.

python调用v8_Python 安装 V8 引擎 – pyv8相关推荐

  1. Python调用matlab——安装和调试mlab

    图像处理包括图像复原最常用的工具是Matlab,随着Python和深度学习的火热,Python和matlab的混合编程成为需要. mlab安装 环境要求:anaconda2(Python2.7,pyt ...

  2. VS2019最简单编译V8引擎方法

    文章目录 1.编译前的配置工作 1.1配置代理 1.2下载depot tools 1.3下载Windows SDK10 2.获取源码 2.1可能出现的错误 3.编译源码 3.1 VS2019编译(1) ...

  3. JavaScript工作原理(二):V8引擎和5招高效代码

    本系列的第一篇文章重点介绍了引擎,运行时和调用栈的概述.第二篇文章将深入V8的JavaScript引擎的内部.我们还会提供一些关于如何编写更好的JavaScript代码的技巧. 概述 JavaScri ...

  4. python调用matlab环境配置、非常详细!!!_Python调用Matlab2014b引擎

    用惯Python的你,是不是早已无法忍受matplotlib那丑陋无比的图以及蛋疼无比部署依赖? 当当当当,Matlab2014b的Python Engine API现已加入豪华午餐. 上次写了一篇文 ...

  5. JavaScript怎么安装_几句话说清楚JavaScript、V8引擎、NodeJS、NMP,到底是什么东东...

    小程序开发如火如荼,如果你是程序员,你还不懂小程序的开发,恐怕会被同行认为太LOW了吧!不过,新入行小程序开发者确实会被新的名词搞得一头雾水. 比如JavaScript不是在浏览器端运行吗,怎么还可以 ...

  6. python 百度ocr安装_Python调用百度OCR实现图片文字识别的示例代码

    百度AI提供了一天50000次的免费文字识别额度,可以愉快的免费使用!下面直接上方法: 首先在百度AI创建一个应用,按照下图创建即可,创建后会获得如下: 创建后会获得如下信息: APP_ID = '* ...

  7. V8引擎静态库及其调用方法

    本V8引擎静态库分为x86版本和x64版本 V8引擎静态库下载地址 编译工具:VS2019 v8开头的即为V8引擎静态库(附送其它开源静态库libuv.lib.zlib.lib等_) 如何调用V8引擎 ...

  8. yolov4-tiny从安装到训练再到python调用接口

    (一)安装 在GitHub网址https://github.com/AlexeyAB/darknet下载最新版的darknetAB源码 解压后会生成名为darknet-master的文件夹 将解压的文 ...

  9. linux 非root 安装ImageMagick 以及python调用ImageMagick将图片生成gif案例

    标题有点长,知识量拉满~ 首先进入链接 http://www.imagemagick.org/script/install-source.php 下载 下载ImageMagick.tar.gz ,下载 ...

  10. pycharm中python调用百度aip所遇问题解决方案记录:pip安装时版本报错以及aip导入时报错no module named aip/requests)

    pycharm中python调用百度aip所遇问题解决方案记录:pip安装时版本报错以及aip导入时报错no module named aip/requests pip安装时版本报错 pip升级后安装 ...

最新文章

  1. UpSetR 高级参数使用教程
  2. Linux学习:文件属性函数
  3. 获取需要登陆才能被访问的页面,HttpClient(扩展HttpWebRequest)来实现
  4. 设计模式读书笔记-----代理模式
  5. java生成pdf加密_java使用iText 生成PDF全攻略(表格,加密)
  6. apk之间数据共享的方式
  7. MySQL运维知识点_mysql运维必备知识点(转载至其他作者)
  8. python---(3)Python安装
  9. 苹果CarPlay新功能上线,老司机们更方便了
  10. java 汾_Javaweb学习 4
  11. 路由器怎么设置WiFi短信认证?
  12. Linux delete folder
  13. Pandas常用函数大合集
  14. 我把ConcurrentHashMap HashTable的知识点都整理了一下
  15. 关于uipath软件安装激活手顺书——在线激活
  16. 物流单号查询,在哪里查询快递
  17. 【牛客刷题】SQL专项错题记录三
  18. TCP/IP详解之环回接口(loopback interface)
  19. 使用HTML5/CSS3制作便签贴
  20. java九九_java九九乘法表

热门文章

  1. win10计算机管理员权限删除,win10需要管理员权限删除文件怎么办?获取管理员权限删除文件夹...
  2. win+快捷键(常用)
  3. 2021年5月系统集成项目管理工程师案例分析真题讲解(2)
  4. java 路径规划_应用内路径规划的简单实现
  5. 用AS3+Flash+FlashBuilder开发AIR
  6. Delphi 操作Excel方法大全
  7. ahk写入excel单元格_AHK(二):设置Excel操作快捷键
  8. C语言从入门到放弃2022年8月3号
  9. Aspen ONE Suite 11.0 软件下载及其安装教程
  10. linux ospf 命令,Linux_防火墙入门22:常用路由协议(OSPF)配置实例