2019独角兽企业重金招聘Python工程师标准>>>

2016.5.16更新: 提供PyV8 for python2.7 的window安装包网盘下载

这几天需要在使用PyV8来进行PythonJavaScript的交互。之前在window下安装过,也没有遇到什么问题。
结果这次在Ubuntu安装遇到了不少坑–主要是网上的办法都不可行,不知道为啥。最终折腾了一晚上,终于好了。

windows下的安装

在windows下安装要简单很多,如果有了c++环境之后,只需要在pyv8下载(貌似只有python2.7)下载适合自己系统版本的exe文件即可,然后直接安装就好了,相对来说简单一些

  1. 如果上不去google, 可以用下面的网盘地址:
    PyV8 for python2.7
  2. 还有一种方式: 利用有人分享的二进制文件:pyv8-binaries, 这里面版本比较全,但是未提供exe。

在Ubuntu下安装

安装依赖

首先安装依赖: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的包目录得了。结果这条路还算顺畅!最终比较轻松的安装成功了。
二进制文件googlecode官网有,有人在github上也提供了很全面的二进制安装文件https://github.com/emmetio/pyv8-binaries 找到适合你机器的版本下载.
解压出来应该有如下两个文件:一个源码,一个二进制文件。一般Python的第三方包有这俩文件就够了.

PyV8.py
_PyV8.so

然后把这两个文件拷到你的python第三方包的目录里面就好,比如我的是:

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

当时看到这个错误,然后想到我之前已经安装好了依赖呢,为啥还会报这个错误呢。

大致查了一下,有的说是链接库路径设置问题,之后检查了一下libboost_python_py27.so.1.54.0

shomy@LiuPC:blog$ find /usr/lib/ -name libboost_python-py27.so.1.54.0
/usr/lib/x86_64-linux-gnu/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

保存退出之后,再用source ~/.bashrc 重载一下就好了。再一次import PyV8 正常!
执行下面的测试代码

import PyV8ctxt = PyV8.JSContext()
ctxt.enter()
func = ctxt.eval("""(function(){function hello(){return "Hello world.";}return hello();})
""")
print func()

执行输出Hello World 就说明安装成功了。可以去模拟js代码了~~~

转载于:https://my.oschina.net/mickelfeng/blog/892417

记录Ubuntu Windows下安装PyV8相关推荐

  1. 记录解决windows下安装cocoapi的几种方案

    记录解决windows下安装cocoapi的几种方案 安装cocoapi遇到的常见问题及解决办法 安装流程 问题一 问题二 问题三 安装cocoapi遇到的常见问题及解决办法 安装流程 git clo ...

  2. windows下安装pyv8,并在pycharm中引用

    (1)下载pyv8仓库包 直接使用pip安装报错了,直接懒得解决,前往google code下载安装包(需要梯子),https://code.google.com/archive/p/pyv8/dow ...

  3. windows下安装ubuntu linux子系统

    windows下安装ubuntu linux子系统 一.win10下安装ubuntu linux子系统 二.下载ubuntu子系统 三.启动ubuntu子系统 四.配置ubuntu子系统 一.win1 ...

  4. ubuntu windows 分别安装openslide

    为了读图,分别在ubuntu 和 windows 下安装openslide.亲测成功 ubuntu Openslide是医学图像一个重要的库,这里给出三条命令进行安装 sudo apt-get ins ...

  5. 在ubuntu系统下安装python

    一.背景介绍 随着本人python使用的越来越多,跑的代码和程序越来越复杂,从git下载代码也更多的需要liux系统才能使用,所以考虑在ubuntu系统下安装python,此博文也是基于CSDN7天培 ...

  6. 在python中requests模块怎么安装_Python requests模块在Windows下安装

    发现一个爬虫库太方便了,而且支持python3! 安装方法在http://docs.python-requests.org/en/latest/user/install/#install很详细 只不过 ...

  7. 在windows下安装PyPdf2

    从昨天起就开始在实验室的暑期学习啦,昨天在机房学会用U盘装ubuntu server. 今天老师布置了用Python写文本处理的脚本的任务,包括处理PDF/DOC/TXT/EXCEL等等. 先处理PD ...

  8. oracle安装后开机很慢,Windows下安装Oracle拖慢开机速度的解决方法

    环境:win7 + oracle R2 方法:将安装Oracle后自动开机启动的服务改为手动启动 步骤如下: 1.修改服务项 Ctrl + R,输入services.msc,打开服务列表,找到Orac ...

  9. windows下安装TensorFlow(Win8 + Anaconda4.4 python3.6)

      本文主要介绍如何在Windows下安装TensorFlow.当然建议还是在linux下安装,在windows下开发不太方便. 相关背景 网上现有的方法都是教如何在windows下安装虚拟机 ...

最新文章

  1. python基础语法第10关作业-Python基础作业一
  2. 移动web——基本知识点总结
  3. 【计算摄影】图像美学专栏上线,先从学点摄影知识开始
  4. 全能Android HOOK框架 JNI NATIVE JAVA ART DALVIK
  5. 如何在GraphPad Prism 9图表上添加图片或其他对象
  6. Bug错误openssl_encrypt()
  7. 在RH6.5上安装sublime3 build3103步骤
  8. 10php1c,PHP程序员,进阶选择C还是C++亦或者别语言
  9. 最后的战线java下载_最后战线2.0游戏
  10. Google+ 为什么会死?
  11. 鸿蒙os 2.0跑分,预装鸿蒙 OS 2.0!华为 MatePad Pro2 跑分曝光:麒麟 9000、8GB 内存
  12. 配置 SQL Server 2005 以允许远程连接(服务器端)
  13. 【游戏】基于matlab GUI音乐闹钟设计【含Matlab源码 1105期】
  14. 速卖通开放平台调用菜鸟组件实现云打印
  15. 【离散数学】数理逻辑 第一章 命题逻辑(6) 析取范式和合取范式、主析取范式和主合取范式及两者联系
  16. UPC、EAN、ISBN的编码介绍
  17. 西门子PLC——CANopen系统通信解决方案
  18. MATLAB差影法的人体姿态识别
  19. linux 设置开机自启
  20. 关于TypeError: threshold must be numeric解决办法

热门文章

  1. Ureport2源码修改
  2. OpenCV的AdaptiveThreshold函数
  3. 解决JavaOpenCV的内存问题
  4. 【爬虫系列之一】爬虫开发环境的搭建
  5. Lucene系列:(9)搜索结果排序
  6. Linux学习资料-5(密码管理与设定、使用者身份切换、使用者查询、手动增加使用者)...
  7. 11步提高代码质量和整体工作效率
  8. Android SqliteManager 源码
  9. (摘)Excel 2007查询操作中的函数应用
  10. Django前后端增删改查