想要试试arm板上使用selenium是不是可能,发现Firefox什么的不顶用,网上有提供的chrome的安装手顺,但是没有arm版本的对应的chromedriver,只能自己搞了。

这边介绍的方法是直接在raspberry pi上编译,编译时间在36小时左右,编译24 小时,最后的链接时间12小时

前期准备:

1. 移动硬盘可用空间10G以上,swap和代码,以及编译目录都需要放在上面

2. 关闭sdcard上的swap,sdcard上的swap比较慢,会导致emmc hung

3. 在移动硬盘上创建swap(4G以上),并启动

4. 安装打包用的软件debhelper

5. 下载代码和debian打包配置文件

路径:

 

修改编译代码:

1. 在移动硬盘上解压

tar xf chromium-browser_52.0.2743..orig.tar.xz
tar xf chromium-browser_52.0.2743.-~deb8u1.debian.tar.xz mv debian chromium-52.0.2743.116/

2. 修改编译规则

2.1 修改文件 debian/rules, defines中添加

symbol_level=

2.2 修改debian/control, Architecture 都改成all, 除了Package: chromium-dbg, 我们不需要chromium的debug信息

2.3 修改debian/scripts/chromium, 删除下面的内容

osse2="\
The hardware on this system lacks support for the sse2 instruction set.
The upstream chromium project no longer supports this configuration.
For more information, please read and possibly provide input to their
bug tracking system at http://crbug.com/348761." # Check whether this system supports sse2
if test -z "$(grep sse2 /proc/cpuinfo)"; then
xmessage "$nosse2"
exit
fi

因为我们copy的debian 配置文件都是针对x86平台的, arm平台没有sse,这个就不需要了

3. 编译debian pakcage

dpkg-buildpackage

第一次编译会出现dependence的问题,按照提示的要求把缺少的包安装下,然后就继续这条命令

中间有简单的问题调整的话,请使用

fakeroot debian/rules binary

4. 36 小时左右后,就能在上级的目录中看到我们需要的packge了,dpkg -i 安装下就能使用了

总的来说,chromium的编译系统和跨平台做的挺赞的,不存在需要修改chromium代码才能编译的情况。

tips.

可以添加component=shared_library到defines里面,静态链接就会变成动态链接,好处是可以节省很多的链接时间,坏处是相应的你需要修改chromium.install文件,把shared library形式的compenent 添加进去, 同时有几个gyp文件需要修改,这些compnent没有加相应的link flag

[raspberry pi3] 编译安装chromium的更多相关文章

  1. [raspberry pi3] aarch64 mongodb 编译和安装

    raspberry pi3官方支持是32bit的系统,使用mongodb的时候有2G数据库大小的限制,32bit的系统上数据大点基本上就可以认为不能用了,所以要装64bit的opensuse. 安装了 ...

  2. [raspberry pi3] hadoop 编译搭建和配置

    Causion: 只有一个raspberry pi3的就随便玩玩吧,瓶颈不在在cpu, 1 G的内存实在是太少了,跑个hadoop就很辛苦了 下面是瞎折腾的过程: oracle的arm jdk的安装过 ...

  3. RaspBerry Pi3 ~ 内核编译

    RaspBerryPi3-内核编译 转载注明出处:http://www.cnblogs.com/einstein-2014731/p/5985128.html 在有道云笔记的同步分享:http://n ...

  4. Raspberry Pi 3 安装 Lazarus 1.6.2(2017-02-09更新)

    Raspberry Pi3 Lazarus 1.6.2 安装步骤如下: 安装环境:Raspbian Jessie, RPi3 1.安装subversion和unzip Sudo Apt-get upd ...

  5. 在Linux Mint13下编译安装mono运行时

    最近一直想体验下mono在web开发上到底进展到什么程度,挑战一下它对web开发的极限.因为asp.net mvc本身依赖windows平台的东西不太多,所以这些assembly移植到mono/lin ...

  6. ffmpeg源码编译安装(Compile ffmpeg with source) Part 2 : 扩展安装

    在Ubuntu,Debian,Mint上编译ffmpeg 本文主要为在Ubuntu,Debian和Mint上编译安装ffmpeg和库文件以及一些扩展的编解码器.当然这与从源中安装无关. 请首先看一下通 ...

  7. centos6.5下编译安装FFmpeg

    以下安装步骤基本来自官网,做个笔记以方便自己以后查看 http://trac.ffmpeg.org/wiki/CompilationGuide 1.安装依赖包 <span style=" ...

  8. Raspbian 编译安装 PHP 7.2

    原文地址:Raspbian 编译安装 PHP 7.2 0x00 配置 开发板: Raspberry Pi 3B 系统: Raspbian 2019-04-08 stretch 0x01 下载源码 20 ...

  9. Raspberry Pi3驱动Oled ssh1106屏

    Raspberry Pi3可以直接使用GPIO接口驱动OLED屏 一.接线 根据网上随便找的图可以看到树莓派3的GPIO接口引脚顺序 PS:26pin的GPIO为前26针 根据OLED屏的引脚说明,如 ...

随机推荐

  1. 输入一个链表,输出该链表中倒数第k个结点

    package suanfa; import suanfa.doubleLinkedList.Node; public class solution { public Node find(Node h ...

  2. C#获取堆栈信息,输出文件名、行号、函数名、列号等

    命名空间:System.Diagnostics 得到相关信息: StackTrace st = new StackTrace(new StackFrame(true));StackFrame sf = ...

  3. DCOS安装

    安装pre-flight master机器会安装上安装文件(同时check条件是否满足要求),其他的agent设备只是check各种条件是否具备. 确保53/2181端口没有被占用:centos7每次 ...

  4. 导入镜像后,容器内httpd起不来

    导入镜像后发现bash进程为1 与之前apache启动的进程冲突了 解决办法:删除apache进程号,通过apachectl重启apache进程

  5. VS编译linux项目生成静态库并在另一个项目中静态链接的方法

    VS2017也推出很久了,在单位的时候写linux的服务端程序只能用vim,这让用惯了IDE的我很难受. 加上想自己撸一套linux上的轮子,决定用VS开工远程编写调试linux程序. 在window ...

  6. 微服务监控之一:Metrics让微服务运行更透明

    摘要 让微服务运行状态清晰可见. 嘉宾演讲视频回顾及PPT:http://t.cn/R8b6i85 Metrics是什么 直译是“度量”,不同的领域定义有所区别,在微服务领域中的定义: “对微服务的某 ...

  7. maven jetty 配置

    对于jdk8增加如下配置: <plugin> <groupId>org.eclipse.jetty</groupId> <artifactId>jett ...

  8. 基于人脸识别+IMDB-WIFI+Caffe的性别识别

    本文用记录基于Caffe的人脸性别识别过程.基于imdb-wiki模型做finetune,imdb-wiki数据集合模型可从这里下载:https://data.vision.ee.ethz.ch/cv ...

  9. Facebook开源的JavaScript库:React

    React是Facebook开源的JavaScript库,采用声明式范例,可以传递声明代码,最大限度地减少与DOM的交互. React是Facebook开源的JavaScript库,用于构建UI.你可 ...

  10. python ConfigParser 读取配置文件