----------------------------------------------------------------------------------------------------------------------

一分钟快速搭建 rtmpd 服务器: https://blog.csdn.net/freeabc/article/details/102880984

软件下载地址: http://www.qiyicc.com/download/rtmpd.zip

github 地址:https://github.com/superconvert/smart_rtmpd

----------------------------------------------------------------------------------------------------------------------

今天说说构建工具 depot_tools

depot_tools 的依赖:

请首先保证你的机器上装有 git 和 python,其实 depot_tools 下很多命令其实就是 bash 文件,最终去执行对应的 python 文件。比如:

fetch     --->     fetch.py
gn        --->     gn.py
gclient   --->     gclient.py

代码下载时,又用到版本管理工具 git 或 svn 等

depot_tools 的作用:

对于 chrome 以及 webrtc 的编译都离不开一个构建工具 depot_tools,因 chrome 和 webrtc 项目过于庞大,依赖比较多,因此需要一个构建工具对其进行管理,以方便后续的开发人员,利用此工具快速下载代码,构建编译环境,并能正确编译。

因此 depot_tools 的作用就是:1. 下载,更新,同步代码2. 构建编译环境,利用 gn 生成 ninja 文件3. gn 生成的 ninjia 文件并通过工具 ninjia 进行最终编译成想要的目标

怎么下载 depot_tools :

git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git

我们把下载好的 depot_tools 下,配置对应的环境,其实就是把路径加到系统变量中(linux, Mac, Windows),这样我们就可以直接使用 fetch, gclient, gn, ninja 这些命令了

下载代码(webrtc 为例):

mkdir webrtc && cd webrtc
linux : fetch --nohooks webrtc
android: fetch --nohooks webrtc_android
ios: fetch --nohooks webrtc_ios
gclient sync

很大程度上都是不成功的,因为我们有伟大的 GFW 。国内有

声网镜像 https://webrtc.org.cn/mirror学而思镜像 https://gitlab.com/webrtc-mirror

fetch 是获取源码, glcient 基本上封装了 git 的一些功能,提供 git 多个仓库的批量操作。

编译源码(webrtc 的 android 版本为例):

安装依赖

cd src
export GYP_DEFINES="OS=android"
./build/install-build-deps.sh
./build/install-build-deps-android.sh

编译文件生成和编译

./build/android/envsetup.h
gn gen android/Release "--args=is_debug=false target_os=\"android\" target_cpu=\"arm64\""
ninja -C android/Release

我们定制底层的库后,就可以按上述步骤进行重新编译,使用了

常见错误及原因:

1. gn.py: Could not find checkout in any parent of the current path

这个一般都是 depot_tools 没有正确安装和初始化。

比如缺少 .gclient, .gclient_entries

2.  Could not find gn.exe

这个一般都是 depot_tools 没有正确安装和初始化。

今天说说构建工具 depot_tools相关推荐

  1. webrtc】windows 构建 :depot_tools 采坑

    chrome 开源项目的构建工具 depot_tools owt webrtc chrome 都需要这个工具作为构建脚本 之前在公司机器 整的,感觉很容易 可能公司默认是hk vpn环境吧 换了自己购 ...

  2. linux java 构建工具有哪些,Linux ant --强大的Java开发构建工具

    用途说明 ant严格说来,ant其实并非原生的Linux命令,但它是一个使用广泛.功能强大的跨平台构建工具程序,尤其是进行Java开发时,许多开源的Java项目都使用ant作为构建工具.ant命令一般 ...

  3. scala构建工具sbt使用介绍

    sbt工具下载及说明: https://www.scala-sbt.org/0.13/docs/zh-cn/Installing-sbt-on-Windows.html sbt是交互式构建工具,使用s ...

  4. iOS应用模块化的思考及落地方案(二)模块化自动构建工具的使用

    1.0 iOS模块化中的问题 前文已经介绍了模块化的流程及一些常见的问题,我们在这里再次总结一下. 在工作中,当我们开始一个新项目的时候,最先考虑的就是模块化工作. 模块化工作的想法是很美好的,可是执 ...

  5. Maven官宣:干掉Maven和Gradle!推出更强更快更牛逼的新一代构建工具,炸裂!

    欢迎关注方志朋的博客,回复"666"获面试宝典 来源:网络 相信作为Java开发者的你早已经受够了maven的编译缓慢,但是又由于历史包袱.使用习惯等问题暂时切换不了其他更快的构建 ...

  6. 下一代构建工具 Gradle ,比 Maven 强在哪里!

    作者 :乐百川 本文:toutiao.com/i6824937779193971207 相信使用Java的同学都用过Maven,这是一个非常经典好用的项目构建工具.但是如果你经常使用Maven,可能会 ...

  7. 55 前端构建工具Gulp

    技术交流QQ群:1027579432,欢迎你的加入! 欢迎关注我的微信公众号:CurryCoder的程序人生 1.第三方模块Gulp Gulp:基于node平台开发的前端构建工具. 前端构建工具:将机 ...

  8. java+构建+工具+Ant+Maven+Gradle

    java+构建+工具+Ant+Maven+Gradle Ant+Maven+Gradle+............ 目前: Ant已经销声匿迹.Maven也没落了,而Gradle的发展则如日中天. M ...

  9. 构建工具Gradle

    1.Summary   从Android团队开始宣布放弃Eclipse转投Android Studio时,构建工具Gradle进入了Android开发者的视野.而随着热修复.插件化.编译时注解的流行, ...

最新文章

  1. 学什么都不容易!学好一样更不容易!
  2. python 语言教程(4)列表方法
  3. LDAP 中关于CN,OU,DC的含义
  4. 无线网卡的Master,Managed,ad-hoc,monitor等模式
  5. linux如何利用命令保存文件,如何在Linux中将命令输出保存到文件?
  6. 漫画:程序员真的是太太太太太太太太难了!
  7. Sqoop导入数据--split by 和 --m(大于1)配合使用
  8. 腾讯前端面试题:一言不合就写个五子棋
  9. 摊牌了,国内首个三维重建系列视频课程,涉及SFM、多视图几何、结构光、单目深度估计等...
  10. 二级c语言改错题库,二级C语言题库-改错题(参考).doc
  11. 极路由大部分机型官方固件
  12. 如何新浪微博html5,新浪微博接入Html5游戏 注重轻量碎片化
  13. 房价,经济转型,技术创新
  14. ​mybatis collection解析以及和association的区别
  15. differential privacy 学习笔记(一)
  16. thinkphp核心 伯乐发卡系统高级版PHP网站源码 已去授权无后门_已测
  17. 学习编程,这些好习惯带我们平步青云——直通大牛
  18. SIM卡的结构和类型
  19. 生物信息分析:从入门到精通结语
  20. 大气科学需要计算机能力吗,大气科学专业学什么

热门文章

  1. 直播怎么录屏,妙招分享,亲测好用!
  2. 【论文笔记】标准正交基和投影在分布式控制中的应用
  3. 中台做不起来?是技术的问题,还是人的问题
  4. Ubuntu安装时卡在安装界面怎么办
  5. python图片相似度计算_python Opencv计算图像相似度过程解析
  6. 微信公众号 语音录音jssdk
  7. 正则表达式的或匹配——[]和|(优先匹配)
  8. 2022-ISCC信息安全与对抗竞赛wp-misc(详解,有脚本( •̀ ω •́ )y)
  9. C语言 指针数组和指向指针的指针
  10. DataFrameDataSet