alsa 测试 linux_Electron 构建步骤 (Linux)

遵循下面的引导,在 Linux 上构建 Electron .

Prerequisites

  • Python 2.7.x. 一些发行版如 CentOS 仍然使用 Python 2.6.x ,所以或许需要 check 你的 Python 版本,使用 python -V.

  • Node.js v0.12.x. 有很多方法来安装 Node. 可以从 Node.js下载原文件并且编译它 .也可以作为一个标准的用户在 home 目录下安装 node .或者尝试使用仓库 NodeSource.

  • Clang 3.4 或更新的版本.

  • GTK+开发头文件和libnotify.

在 Ubuntu, 安装下面的库 :

$ sudo apt-get install build-essential clang libdbus-1-dev libgtk2.0-dev \                       libnotify-dev libgnome-keyring-dev libgconf2-dev \                       libasound2-dev libcap-dev libcups2-dev libxtst-dev \                       libxss1 libnss3-dev gcc-multilib g++-multilib

在 Fedora, 安装下面的库 :

$ sudo yum install clang dbus-devel gtk2-devel libnotify-devel libgnome-keyring-devel \                   xorg-x11-server-utils libcap-devel cups-devel libXtst-devel \                   alsa-lib-devel libXrandr-devel GConf2-devel nss-devel

其它版本的也许提供了相似的包来安装,通过包管理器,例如 pacman. 或一个可以编译源文件的.

使用虚拟机

如果在虚拟机上构建 Electron,你需要一个固定大小的设备,至少需要 25 gigabytes .

获取代码

$ git clone https://github.com/electron/electron.git

Bootstrapping

bootstrap 脚本也是必要下载的构建依赖,来创建项目文件.需要使用 Python 2.7.x 来让脚本成功执行.正确下载文件会花费较长的时间. 注意我们使用的是 ninja 来构建 Electron,所以没有生成 Makefile 项目.

$ cd electron
$ ./script/bootstrap.py -v

交叉编译

如果想创建一个 arm target ,应当还要下载下面的依赖 :

$ sudo apt-get install libc6-dev-armhf-cross linux-libc-dev-armhf-cross \                       g++-arm-linux-gnueabihf

为了编译 arm 或 ia32 targets, 你应当为 bootstrap.py 脚本使用 --target_arch 参数:

$ ./script/bootstrap.py -v --target_arch=arm

构建

创建 Release 、 Debug target:

$ ./script/build.py

这个脚本也许会在目录 out/R 下创建一个巨大的可执行的 Electron . 文件大小或许会超过 1.3 gigabytes. 原因是 Release target 二进制文件包含了 调试符号 .运行 create-dist.py 脚本来减小文件的 size :

$ ./script/create-dist.py

这会在 dist 目录下创建一个有大量小文件的工作空间. 运行 create-dist.py 脚本之后, 或许你想删除仍然在 out/R 下的 1.3+ gigabyte 二进制文件.

可以只创建 Debug target:

$ ./script/build.py -c D

创建完毕, 可以在 out/D下面找到 electron.

Cleaning

删除构建文件 :

$ ./script/clean.py

解决问题

确保你已经安装了所有的依赖 .

Error While Loading Shared Libraries: libtinfo.so.5

预构建的 clang 会尝试链接到 libtinfo.so.5. 取决于 host 架构, 适当的使用 libncurses:

$ sudo ln -s /usr/lib/libncurses.so.5 /usr/lib/libtinfo.so.5

Tests

测试你的修改是否符合项目代码风格,使用:

$ ./script/cpplint.py

测试有效性使用:

+

$ ./script/test.py

fc62098c4a36de01e5043259bb35a32a.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/455691.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JavaScript中的数学对象Math

js数学对象Math //四舍五入 var res Math.round(5.921);//获取最大值 var res Math.max(10,23,523,43,65,46,32,32);//获取最小值 var res Math.min(12312,324,32,42,3,23,412,4332,21,3,-1);//获取绝对值 var res Math.abs(-100);//退一取整 var res Math.floor(1.9);//…

centos7-安装mysql5.6.36

本地安装了mysql5.7, 但和springboot整合jpa时会出现 hibernateException, 不知道为什么, 换个mysql5.6版本的mysql, 源码安装, cmake一直过不去, 后来改成rpm安装 1, 获取mysql5.6 ftp://ftp.mirrorservice.org/sites/ftp.mysql.com/Downloads/MySQL-5.6/ 下载: 解压: 其中…

mad的问题汇总

Q:我想将I帧的预测图像和原始图像的平均绝对误差给输出来,请问这个在JM86中需要在哪一点改动呢?谢谢 A: 差值保存在diffy中: diffy[j][i] imgY_org[img->opix_yj][img->opix_xi] - pred[j][i]; 分析MAD不知道程…

迷之骚缩写

搜集一些 GitHub 常见骚缩写,以备查询使用。 原文链接:LGTM? 那些迷之缩写 PR: Pull Request. 拉取请求,给其他项目提交代码LGTM: Looks Good To Me. 朕知道了 代码已经过 review,可以合并SGTM: Sounds Good To Me. 和上面那句意…

github设置中文_静态博客托管图片至 GitHub

从 MWeb 切换到静态博客 Jekyll 之后,我就面临一个问题,这在很久之前使用 Hexo 同样遇过的:图片托管在何处。MWeb 的解决方式很棒,直接插入图片,推送到 Github 后亦能正常引用并显示,无需图床或者借助第三方…

JavaScript中的正则

js正则 正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串, 正则表达式通常被用来检索、替换那些符合某个模式的文本 声明方式 普通字符 new RegExp();/hehe/转义字符 \w \W \d \D \s \S var reg /\w/;//单个的字母数字下划线 var reg /\W/;…

SQL注入【sqli靶场第23-28关】(七)

★★免责声明★★ 文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与学习之用,读者将信息做其他用途,由Ta承担全部法律及连带责任,文章作者不承担任何法律及连带责任。 0、总体思路 先确认是否可以SQL注入,使用单…

Linq中string转int的方法

Linq中string转int的方法 在做批量删除时,需把一串id值所对应的数据删除,调试出现问题: Linq语句中如果使用ToString()进行类型转换,编译时不会报错,但执行时会出现如下错误: “LINQ to Entities 不识别方法"System.String T…

名称缩写第二波

1 公司内部 缩写 全称 中文 说明 PMproduct manager产品经理RDResearch and Development研发工程师FEFrontend Engineer前端工程师UEUser Experience用户体验设计师QAquality assurance质量保证,测试OP operator 运维工程师EEEngeering Excellence工程效率部ETEn…

php动态获取函数参数

PHP 在用户自定义函数中支持可变数量的参数列表。其实很简单,只需使用func_num_args() , func_get_arg() ,和 func_get_args() 函数即可。可变参数并不需要特别的语法,参数列表仍按函数定义的方式传递给函数,并按通常…

漏桶算法与令牌桶算法

漏桶算法(Leaky Bucket)是网络世界中流量整形(Traffic Shaping)或速率限制(Rate Limiting)时经常使用的一种算法,它的主要目的是控制数据注入到网络的速率,平滑网络上的突发流量。漏桶算法提供了一种机制&a…

java linux 调用32位so_Linux上TCP的几个内核参数调优

Linux作为一个强大的操作系统,提供了一系列内核参数供我们进行调优。光TCP的调优参数就有50多个。在和线上问题斗智斗勇的过程中,笔者积累了一些在内网环境应该进行调优的参数。在此分享出来,希望对大家有所帮助。调优清单好了,在…

jquery中的选择器

jquery选择器 jquery用法思想 选择某个网页元素,然后对它进行某种操作 jquery选择器 jquery选择器可以快速地选择元素,选择规则和css样式相同 基础选择器 //通过id来获取元素 document.getElementById(); // $(#logo).css(border,solid 2px red); //…

【好文收藏】【持续更新】今天你机器学习了吗

✔数学建模常用模型23:马尔可夫预测方法_HaLosec_Wei-CSDN博客_马尔可夫模型预测法 ✔simhash算法及原理简介_lengye7的博客-CSDN博客_simhash ✔👍使用机器学习构建简单金融风控反欺诈模型(一)EDAXGBOOST - 知乎 Python机器学…

H.264码率控制机制

H.264标准码率控制算法步骤如下:1.计算当前帧的目标码字,并将其限定到HRD的边界中。2.通过线性模型(式4.5)预测当前帧中基本单元的MAD。 3.为未编码基本单元分配码字。4.通过二次R&a…

[dp]最长单调递增子序列LIS

https://www.51nod.com/tutorial/course.html#!courseId12 解题关键: 如果将子序列按照长度由短到长排列,将他们的最大元素放在一起,形成新序列$B\left\{ {{b_1},{b_2}, \ldots \ldots ,{b_j}} \right\}$,则序列$B$满足${b_1} &l…

jQuery中的元素操作

jQuery元素操作 通过jQuery可以操作控制元素的样式,文本,属性等 jquery样式操作 css操作行内样式 // 获取div的样式 $("div").css("width"); $("div").css("color");//设置div的样式 $("div").css("width",&q…

指针结构体函数-事实上能够这样具体理解

今天一大早登了下QQ空间,看到本科的一个学弟发表一篇日志。写关于西电微软俱乐部面试题的解答,写的非常不 错。我也一下子起兴了,由于我以前也是被指针困惑非常久。搞不清头绪,本科到研究生。我也笔试面试不下二十次 了。每次面试…

【python毕业设计】Django框架实现学生信息管理系统

Django框架实现学生信息管理系统 演示视频:Django学生信息管理系统_腾讯视频 演示界面内容如下 总体概括 注册流程 首先进行输入用户名(邮箱)、密码以及验证码,输入完之后点击注册按钮。如果输入的不正确,提示错误信…

python中continue只结束本次循环_循环(while,break,continue),转义字符

Apple iPhone 11 (A2223) 128GB 黑色 移动联通电信4G手机 双卡双待 4999元包邮 去购买 >01. 程序的三大流程 在程序开发中,一共有三种流程方式: 顺序 —— 从上向下,顺序执行代码 分支 —— 根据条件判断,决定执行代码的 分支 …