首页
友情链接
点点滴滴
关于本站
秋码记录
一个游离于山间之上的Java爱好者 | A Java lover living in the mountains
累计撰写
144
篇文章
累计创建
323
个标签
累计创建
47
个分类
栏目
首页
友情链接
点点滴滴
关于本站
搜索
置顶
一套由 Hugo 驱动的博客主题 hugo-theme-kiwi 开源啦
自 秋码记录 没再为云服务器续费那会儿起,便选用了由Hugo驱动的博客主题,来迁移秋码记录 上的所有文章,然而,在众多Hugo博客主题之列,竟找不出一套属于自己想要的风格的主题,故而,也只能暂且套用了一个还算可以的博客主题。 那套没有秋码记录 博客风格的主题,终究是会被替换的,一切都只是时间问题。可没想到的是,暂时选用那套博客主题,竟然暂时了这么久,这一搁就是好几个月了。还记得,秋码记录 云服务器到期是在 6 月 20 日,那是一个盛夏的季节,可如今呢,却是一个寒冬腊月、冷风凌冽、大雪纷飞的残冬时节,我不禁感叹,时间真的过的好快啊!快的让人喘不过气来。 其实,一套拥有 秋码记录 风格的主题,早已在云服务器到期之际,便应运而生了,可为什么一直拖到现如今呢?想必这也是您想问的吧!拖本不是我的本意,奈何有其他事傍身,无暇他顾,故而一拖再拖,拖到这寒冬腊月,窝在室内,身披被子,势必也要写出它来。 hugo-theme-kiwi 名字的缘故 说出来不怕您笑话,我很喜欢吃猕猴桃(也可以叫奇异果),而kiwi便是奇异果的英文,所以就将这套具有 秋码记录 博客风格的主题称为 hugo-theme-kiwi了。 或许您会问,那为什么不叫qiyiguo或mihoutao,也不是不可以,只是个名称而已嘛!何必那么讲究呢!只要自己欢喜,那么起什么样的名称,又有什么关系呢!还管业内人士怎么说,说这个太 low了,然而,我们又何必去在乎那些所谓的”技术专家“呢!说这个不符合命名规范,我们不要去在意别人怎么说,人生苦短,何必将自己束缚的那么紧绷呢!我们应该摒弃掉人生当中的各种条条框框。 扯多了,还是回到为何将这套主题叫hugo-theme-kiwi呢?其实,起初,我本想将这套主题叫hugo-theme-qiucode,然而,这个想法也只在我脑中停留了几秒钟,像是一阵轻风拂过,吹乱了头发,然而,下一秒,我却及时的将头发捋好,仿佛那阵风并为吹过一般。 也许是因为qiucode比kiwi多了几个字符吧!但还是由于qiucode太过于局限了,总抵不过kiwi来得更加宽泛,没有专为某人而设计的主题! hugo-theme-kiwi目下拥有的功能 我们讲完了hugo-theme-kiwi名称的由来,我们也该聊聊它到底有哪些功能?当然,这些才是您浏览本文的最终目的,毕竟,一套好看的hugo主题总是那么吸引人,好比我们走在街上,忽然,迎面走来一位牵手高挑的美女,我想,那一刻,任一男人都会将目光迅速地移到那位美女身上的!当然咯,相貌与身材不及那位美女的其他女人(多是相貌平平),她们对那位美女瞬间把那条街所有男人的心给俘获了,心中难免怨恨,嘴角略微上扬,轻轻地一声“啧”,和那默契的翻白眼(或许,这才是女人与男人见到美女的所表现出的天然之别的情绪) hugo-theme-kiwi V0.01已实现如下功能: 1、首页文章列表展示,以文章缩略图和文章摘要显示(毕竟是图文内容嘛!总得给个文章缩略图吧!) 2、是列表,那它就需要分页,而这套主题摒弃了随着滚动条触底而加载下一页数据(让人感觉有种加载不完数据) 3、文章详情页,当然,与用户交互那是必须的,所以加入了评论,也就是您可以对某篇文章进行评论。 4、文章详情页右侧,自动识别出文章目录,点击目录可以快速到达您所感兴趣的目录下阅读,减少了您宝贵的时间。 5、友情链接,用于添加拥有个人博客网站链接,虽然你我身处天南地北,但能在此处以博客会友建立了(可以称为博友)“友情”。 6、右侧侧边栏,分类和标签各自跳转到各自的页面 还未实现的功能: 1、首页文章搜索 2、时间轴 3、右侧侧边栏,分类与标签跳转页面优化 …… 今夜是平安页,您吃了苹果了吗?我衷心的祝愿您和您家人一生平安,同时,我也祈愿我和我的家人以及我身边的人一生平安!
2023-12-24
[Hugo]
保持角色一致性的绘本生成AI开源项目之Story-Adapter本地部署Windows篇
在人工智能领域,生成一致且连贯的故事绘本一直是一个具有挑战性的任务。Story-Adapter作为一个开源项目,旨在解决这一问题,为用户提供无需训练即可生成长篇故事视觉化的工具。本文将指导您如何在Windows系统上本地部署并运行Story-Adapter。 项目简介 Story-Adapter项目提出了一种无需训练的迭代框架,用于长篇故事的可视化生成,特别关注在生成过程中保持角色的一致性。通过利用现有的文本到图像生成模型,Story-Adapter能够根据输入的故事文本,生成一系列连贯且一致的图像帧,适用于绘本创作、动画制作等领域。 项目地址:https://github.com/UCSC-VLAA/story-adapter 环境准备 从项目的README.md中有关于本地安装的必要条件: Python 3.10.14 PyTorch 2.2.2 CUDA 12.1 cuDNN 8.9.02 虽然官方是通过anaconda来创建python项目的虚拟环境,这也官方推荐的,可以说是所有开源AI 项目的友好方式。 然而我却不使用anaconda,而使用python自带创建虚拟环境的方式。 python -m venv story-adapter-env #创建 story-adapter-env 虚拟环境 cd story-adapter-env\Script activate #激活虚拟环境 1. 安装Python 前往Python官方网站下载适用于Windows的最新版本Python安装包。在安装过程中,务必勾选“Add Python to PATH”选项,以便在命令提示符中直接使用Python命令。 我安装的是python 3.10.9。 2.安装Git 访问Git for Windows下载并安装Git。安装完成后,您可以在命令提示符中使用git命令。 3.安装CUDA 如果您的计算机配备了NVIDIA GPU,并希望利用GPU加速,请前往NVIDIA官方网站下载并安装适用于您GPU型号的CUDA Toolkit。 克隆项目代码 执行以下命令以克隆Story-Adapter项目代码: git clone https://github.com/UCSC-VLAA/story-adapter.git cd story-adapter 此操作将在当前目录下创建一个名为story-adapter的文件夹,包含项目的所有代码。 安装依赖项 pip install-r requirements.txt-i https://pypi.tuna.tsinghua.edu.cn/simpe/ 下载模型 在下载模型,请提前准备好网络(你应该懂的什么是网络吧)。 按照官方的指引来下载对应的模型,及存放的位置。 Download the checkpoint downloading RealVisXL_V4.0 put it into “./RealVisXL_V4.0” downloading clip_image_encoder put it into “.
2025-02-16
[AI]
本地部署 Stable Diffusion 3.5(最新 ComfyUI记录篇)
当你在看到文章标题,以及发布时间时,想必你是不会继续浏览下去的,这一点,是可以理解的,换做是我,也会做出同样的抉择。 既然如此,而又为什么又要写这篇文章呢? 其一,之所以没能在Stable Diffusion3.5发布时,在本地电脑部署它,那是因为彼时的老破电脑是不足以安装它的。 其二,赤巨资购买了可以把玩Machine Learning的高配电脑,这才想要在新电脑中部署Stable Diffusion3.5这个文生图大模型,故此,将本地部署过程记录下。 模型大小的区别 Stable Diffusion3.5发布三个不同参数的模型,分别是Medium、Large Turbo、Large。 Stable Diffusion 3.5 Large:该基础型号拥有 80 亿个参数,质量卓越,响应迅速,是 Stable Diffusion 系列中最强大的型号。该型号非常适合 1 百万像素分辨率的专业用例。 稳定扩散 3.5 Large Turbo:稳定扩散 3.5 Large 的精简版仅需 4 个步骤即可生成高质量图像,且具有出色的快速依从性,速度比稳定扩散 3.5 Large 快得多。 Stable Diffusion 3.5 Medium: 该模型拥有 25 亿个参数,采用改进的 MMDiT-X 架构和训练方法,可在消费级硬件上“开箱即用”,在质量和定制易用性之间取得平衡。它能够生成分辨率在 0.25 到 2 百万像素之间的图像。 可以从Hugging Face下载 Stable Diffusion 3.5 Large 【点击下载】 推荐16G以上显存 Stable Diffusion 3.5 Large Turbo 【点击下载】 推荐8G以上显存 安装 下载最新 ComfyUI 我们可以在github.com下载ComfyUI官方打包版,ComfyUI v0.3.13 当然咯,你也是可以下载源码,进行编译。 下载适合自己电脑显存的模型 在Huggingface.co下载Stable Diffusion3.
2025-02-03
[AI]
谁说Win7安装不了Node.js最新版的呢?都2025年,还不更新系统到Win11
近年来,Node.js作为前端开发的顶梁柱,已经被越来越多的开发者广泛使用。但不少坚持用Windows 7的朋友却发出了这样的抱怨:“Win7根本装不了最新版的Node.js!这该怎么办?” 其实,这个问题既和技术有关,也和理念有关。如果你还在用Win7,或许是时候重新思考一下升级的必要性了。本文将详细分析为什么Win7无法直接安装最新版的Node.js,并提供解决方案。 下载二进制压缩包 在win7系统下安装最新版node.js,提示最低要求Win版本是Win8.1或Server 2012,然后拒绝安装。 也是,这都2025年了,而你却还在使用早被microsoft停止维护的win7系统,你是不是该去升级下你的系统了。 然而,在某种情况下,如政府项目等,他们还在使用win7系统,他们总不可能为了迁就你,而去更新可能含有“潜在风险”的系统。 既然如此,那么该如何在win7系统下安装最新的node.js呢? 其实,win7是可以安装最新版的node.js的。 我们将下载下来的压缩包,进行解压到你想要存放的任意位置。 在cmd窗口中运行node -v,输出当前node.js的版本。 然而依旧会给出警告提示,那么,我们可以通过set NODE_SKIP_PLATFORM_CHECK=1。 之后再次输入node -v命令,便能够正常输出node版本信息了。 配置环境变量 虽然通过上述步骤,我们已然在win7系统下安装上了node.js最新版本。但你发现没node -v命令是需要在它解压路径下,换句话说,便是离开该目录,是找不到node.exe这个可执行文件的。 或许你早就想到了,那么将node.exe所在的路径添加到PATH环境变量中即可。 然而,我们还需设置set NODE_SKIP_PLATFORM_CHECK=1这个环境变量,因为这种设置只对当前cmd窗口有效,为了一劳永逸,我们也将它设置进环境变量。 而如果想要切换成其他版本,只需下载对应版本的二进制压缩包即可,配置方式同上,是不是感觉很丝滑呢!
2024-12-26
[node.js]
vs code远程调试Linux服务器上的php代码
前言 不管是测试服务器,还是生产服务器,程序出现了问题,虽然可以根据日志来锁定问题,但从效率上来讲,总是那么不尽如人意。 虽然PHP可以在代码中通过var_dump()和dump()来调试输出,但这效率,可真是一言难尽啊。 由于Coder开发都是在本地,一番测试各个功能并没有什么问题,可一旦部署到测试服务器上,再次进行测试时,却出现了诡异的问题,也许这些问题,是你见都没见过的问题。 面对这种困惑,我们能想到的就是,能不能在本地电脑通过工具,远程调试测试服务器上的PHP代码呢? 答案当然是可以的。 VS Code安装 Remote 如果你的电脑还没有安装这款开源免费且开箱即用的IDE,那么你可以先去下载安装它。 VS Code官方下载地址:https://code.visualstudio.com/ 作为一位Coder,我想你应该不至于会去国内的什么下载站进行下载李鬼版的VS Code吧,除了官方的,其他的都是盗版,如果你无知到下载了国内付费的VS Code(原先武汉就有一家公司,无耻到把VS Code开源代码套个壳,拿出来卖,什么公司忘了),那你算是给IT界丢人了。 安装 Remote-SSH 在打开的VS Code,在左侧的功能栏里,点击那个田字格的图标,搜索框中输入remote后,点开如下图所示的,点击install,安装这个插件,它就是用来远程连接的。 连接远程服务 ctrl+shift+p打开命令框输入remote ssh,或者点击左下角绿色按钮,这里没能截取全图。 首次是需要建一个配置文件。 # Read more about SSH config files: https://linux.die.net/man/5/ssh_config Host <给连接的服务器命名> HostName <需要连接的服务器IP> User <连接服务器的用户> ForwardAgent yes windows7出现的错误(非win7系统可以跳过) 选择远程服务器的系统类型,出现下图的错误,那是因为在windows7系统中没有安装SSH,当然现如今,几乎很少开发者会在windows7进行开发了。 64 位操作系统下载这个:点击下载(备用下载) 32 位操作系统下载这个:点击下载(备用下载) 将OpenSSH安装路径添加到环境变量 Path中。 使用 RSA 进行免密登录 生成公钥/密钥对 直接在VS Code中打开terminal,或者cmd打开一个黑窗口,输入以下命令。 ssh-keygen -t rsa 将公钥添加到服务器上 把公钥文件id_rsa.pub拷贝到需要登录的服务器上(存储路径可以随意,但是之后加入到另一个文件尾部的时候注意路径地址。) 将公钥id_rsa.pub填充到authorized_keys尾部。 cat /home/id_rsa.pub >> ~/.ssh/authorized_keys Remote-SSH配置中添加本地秘钥文件路径 我们打开之前的Remote-SSH配置文件,在文件末尾加入以下内容。 IdentityFile <你本地的SSH秘钥文件路径> #这个非必要,通过它可以避免每次连接都要输入密码的麻烦。 最终的Remote-SSH配置文件将会是这般。
2024-12-19
[PHP]
浏览器定制 | Windows11 编译 Chromium 133.0.6885.0(截稿前Chromium最新版之编译篇[一])
序章回顾 其实,在此之前,我已经发表过如何在Windows下编译Chromium及前期环境准备的系列文章了。 那么,既然之前已然撰写过了,缘何又出这么一篇类似的文章呢? 倘若你看过我那几篇关于windows编译Chromium的系列文章,你或许就会明白我写这篇文章的意义了。 可假使你还没看过,也没关系,毕竟彼时windows系统版本还处于win8.1,机器很久了,光是编译,就费了两天一夜,期间CPU一直处于高负荷状态,途中不能操作任何事物,虽然到最后是编译出来。 然而,当我双击打开刚刚编译出来的chrome.exe时,却并不能打开。 花费了这么长的时间来编译,可最终却不能打开,气得我一度将out\Default删除掉,重新编译它,然而,又将是一个漫长的编译过程。 很显然,导致编译时间过长的罪魁祸首就是我的那台(为了区别于赤巨资购买了可用于把玩Mechine Learning的新笔记本)笔记本过于老旧,虽然我期间也为这台笔记本,把内存增加到了16G,可终究还是无法补救其卡顿的`悲惨命运。 新电脑拉开了新篇章 对于那台老旧电脑,若用来编译大型项目(诸如:Chromium)时,它将是有心无力、廉颇老矣,善能战否? 可即便是不去编译项目,光是打开号称宇宙界最耗内存的微信,与我弟视频,期间是不能运行其他软件,否则的话,它就直接闪退。 凡此种种缘故,也正借artificial intelligence(AI)这股强劲的风,我便有了买台新点电脑的预算。 其实,也在新电脑编译过chromium 103.0.5060.66,可最终我还是选择了编译chromium 最新版(最新版只限于截稿前),毕竟这都是高配置的电脑,何不编译最新版本呢,之前那台电脑是受到客观因素,故而编译了Chromium 103.0.5060.66这个版本。 系统要求 一台至少具有 8GB RAM 的 x86-64 计算机。强烈建议超过 16GB。 NTFS 格式的硬盘驱动器上至少有 100GB 的可用磁盘空间。FAT32 将不起作用,因为某些 Git 包文件大于 4GB。 Visual Studio 的适当版本,如下所述。 Windows 10 或更高版本 visual studio 新版Chromium 需要 Visual Studio 2022 (>=17.0.0) 才能构建。Visual Studio 还可用于调试 Chromium。使用 clang-cl 编译器,但需要 Visual Studio 的头文件、库和一些工具。如果 Visual Studio Community Edition 的许可证适合您,则应该可以正常工作。必须安装“使用 C++ 进行桌面开发”组件和“MFC/ATL 支持”子组件。这可以通过将这些参数传递给 Visual Studio 安装程序从命令行完成。 这跟我之前安装visual studio 2019 community一样的。对于Chromium每个版本所对应的visual studio版本要求也各不相同。
2024-12-12
[chromium]
不说是彻底搞懂,至少让你不再惧怕c/c++指针,以及各种奇葩指针变种
经历过C/C++的Coder,说起指针,无不是摇头晃脑的。 然而,没弄懂指针,可以说是无法在C/C++世界里徜徉,毕竟指针可是C/C++的灵魂所在。 由于C/C++的Coder可以通过指针自由玩转内存,从而让外界给C/C++戴上了一顶内存不安全的语言。 相较于现代语言,诸如,Java、golang、python、PHP等这些具有垃圾回收机制的语言来说,C/C++把操控内存的主动权交给了Coder,之所以会被誉为内存不安全的语言,其最大责任便是Coder使用指针不当而引发内存崩溃。 什么是指针呢? 对于初学者而言,到底什么是指针(pointer)呢?我们光从字面上就大抵能猜出个一二,指针,指针,无非就是一个事物指向另一个事物。 说起指针,便无法抛开内存而不谈。 我们知道数据(Data)+ 算法(algorithm)= 程序(program),那么程序的本质就是在操控数据,而内存便是存放数据(这里存放数据,不要与数据库存放的数据混淆了。) 由于变量的类型和作用域所限制,内存可分为:堆(heap)、栈(stack)、全局(global)以及静态存储(static)。 无论是C/C++,抑或是Java等其他高级语言,最终都是要编译成汇编语言,而这种语言它可不管你为变量起了个多么好听的名字,在它那里统统都转变成了内存寻址。 而指针便是存放着某一块的内存地址,可以是某个基础类型变量的地址,也可以是复合类型变量的地址,甚至还可以是指针的地址。 #include <iostream> using namespace std; int main() { int a = 10; int* ptr = &a; //声明一个int类型的指针,并指向变量a的地址 cout << "变量 a 的地址=" << &a << endl; cout << "指针变量 ptr 存放着变量 a 的地址=" << ptr << endl; cout << "通过 * 解引用操作,间接获得变量 a 的值=" << *ptr << endl; *ptr = 15; //通过 * 解引用操作,来修改指针指向的内容。 cout << "通过 * 解引用操作,间接修改变量 a 的值=" << a << endl; return 0; } 数组名就是指针 在初步了解了什么是指针的前提下,我们将继续探讨下一个话题,数组与指针到底有着怎样的联系呢?
2024-11-29
[c/c++]
解决windows下php8.x及以上版本,在Apache2.4中无法加载CURL扩展的问题
在日新月异的信息化下,软件也在跟随着互联网的脚步,逐步推进着各项计划。 近些年,各大语言像是不约而同的都在改进或优化,从而能让programmer在开发效率上有所提升,还使得软件在升级了新版本的program language加持下,运行速度和处理并发的能力得到前所未有的提升。 Java自2014年发布了新的里程碑的Java 8版本号,之后,Oracle变向外界承诺每三年发布一个LTS(Long Time Support)长期支持版本,每年的三月份和九月份都发布一个版本。然而,java社区可不管java发布了多少个新版本,他们依旧是在使用Java 8版本。 直到Java 17的发布,且Oracle更改了协议,或许是促使开发者使用Java 17 LTS,由享誉全球、Java 开发离不开的Spring framework牵头,也就是Spring framework 6.x 及以上版本必须使用Java 17、而Springboot 3.x版本及后续版本也必须是Java 17,因为Srpingboot 3.x依赖的是Spring framework 6.x。 而php5.6.x版本后,也在响应着互联网的潮流,顺应当下瞬息万变的信息化,也在改进着、优化着,或许试图挽回曾今那句PHP是世界上最好的语言!而努力奋进。 即使我们没有使用PHP新版本的特性,只要你的软件运行在新版本的PHP下,性能那跟之前的,可就没的说了。(这里说的不单单只是PHP,像Java、C/C++、Python、golang、C#等) 下载 Apache 对于php7.4及PHP 5版本而言,可以下载Apache历史版本。 Apache 历史版本链接:https://www.apachelounge.com/download/additional/ 。 我们将下载下来的压缩包进行解压,打开其根路径下的conf文件夹,用你常用的IDE编辑httpd.conf文件。 #php5 support LoadModule php5_module "D:/software/php-5.6.30/php5apache2_4.dll" AddHandler application/x-httpd-php .php # configure the path of php ini PHPIniDir "D:/software/php-5.6.30" 有时,你可能还需要开启URL重写模块。 而对于PHP7.X版本,其实是与PHP5.X配置大同小异。 #php7 support LoadModule php7_module "D:/software/php-7.4.8/php7apache2_4.dll" AddHandler application/x-httpd-php .php .html .htm #configure the path to php.ini PHPIniDir "D:/software/php-7.4.8" #startup openssl LoadFile "D:/software/php-7.
2024-11-27
[PHP]
在 Windows8.1 下编译 Chromium (103.0.5060.68 之三)
说在前面的话 或许你在看到文章标题中的windows8.1,难免会让你望而却步。 谁说不是呢!毕竟按chromium官方文档要求,win8.1是达不到编译 chromium高版本的要求的。 但不管怎么样,我的win8.1电脑最终还是编译出了chromium,足以说明win8.1系统编译chromium是可行的。 虽然在编译期间,占有了电脑大量使用时间,好在我都是在白天出门前,电脑开着让它静静地build。 让我庆幸的是,在那漫长的编译过程中,竟没有因errorhuofailed而中断,就连warning也是瞧不见身影。 编译途中出现error或failed总是再所难免`的,但却平添了我们去解决该问题的时间。 下载 chromium 源码 据Chromium官方文档来看,是需要至少100G的空闲磁盘,为此,我查看电脑里的几个盘,最终还是选择了C盘,清理了很大一部分空间出来,也就是你现在看到的下图这般。 新建一个名为chromium的文件夹,名字你可以随意起,这个倒无所谓的! chromium 官方文档是通过fetch chromium来下载代码,但是这种下载是chromium最新代码,还包括历史log,虽然可以带上--no-history参数,它终究还是拉取最新代码。 在当前文件夹内,空白地方鼠标右键,再弹出的选项列表里,选择Git Bash here,再弹出的对话框中输入以下命令。 第一种方案: git clone --depth 100 -b 103.0.5060.68 https://chromium.googlesource.com/chromium/src.git src 直接从chromium 官网拉取源码,下载的速度取决于你的网络。 第二种方案(我采取这种方案,为的是节省网络流量): git clone --depth 100 -b 103.0.5060.68 https://gitee.com/mirrors/chromium.git src # 还原git仓库地址 cd src git remote set-url origin https://chromium.googlesource.com/chromium/src.git cd .. 参数说明: --depth 100 意思是拉取深度为100,这将会拉取一些 log,因为编译脚本会基于仓库的 log 反查版本发布时间。如果这个值太小,可能会查不到,因而报错。所以,建议设为 100 或更大些。或者,直接去掉这个参数,但这样将拉取全部的 log,特别慢。 -b 103.0.5060.68 指定拉取的 tag 版本。 不管你采取了那种方案,在git或cmd总是要设置好网络,至于怎么设置网络,可以查看秋码记录,这里将不再赘述,毕竟后面同步第三方依赖,是必须要用到网络的! 若你的电脑安装过了git工具,可以在Git Bash,输入上述任何一种方案。 假使你电脑没安装过git,那么直接在cmd中,输入上述任何一种方案。 生成 .
2024-09-27
[chromium]
安装 depot_tools 和 Windows 10 SDK 为在Windows下构建基于 chromium 的浏览器(103.0.5060.68 之二)
为何要安装depot_tools 虽然我们在上一篇 Windows构建基于 Chromium 的浏览器之环境准备篇安装 Visual Studio(103.0.5060.68 之一) ,已经在Windows系统安装好了Visual Studio 2019 Community版本。 然而chromium源码工程之庞大,并不是我们平时坐在写字楼里,捣鼓了几个月,勉强符合上级领导的要求而上线的项目,这也就为什么chromium 官方文档里要求你在build里,需要有100G的空闲磁盘的缘故了。 那么,如此巨大的项目,以及如何很好来管理chromium依赖的第三方library呢? 我想这时,肯定会脱口而出,“使用git来管理项目,并且还能有效地处理好第三方library。” 的确,chromium官方就是采用了git来管理这么庞大的项目。 但chromium 源码所依赖的第三方library可不是一两个而已,我们从图中也是可以看出,chromium依赖的第三方library可不是一般的多啊!那是非常的多啊! 我借助了visual studio code这款IDE,在Terminal中输入以下命令,可以计算出当前路径下拥有多少个子文件夹(直到第一级,不会去递归计算哦!) (Get-ChildItem -Directory | Measure-Object).Count 注意:这行命令只在`PowerShell`中生效,这也就为什么我会借助`visual studio code`这款`IDE`的缘故。 或许你有点纳闷,这visual studio code是不是我们在上一篇安装的visual studio呢? 初次捣鼓的你,难免会被这两者给弄混淆了。 这其实也不能全怪你啦!毕竟visual studio系列与visual studio code的应用程序图标是一样,只是颜色差异而已罢了,且它们同是microsoft公司的产品。 对于chromium依赖了这么多第三方library,你总不可能对每个library手动写git submodule吧! 而此时的你可能会想到可以借助python来编写脚本,用来synchronized(同步)chromium第三方library。 为此,chromium 官方提供了一个用于synchronized第三方library的工具,它不仅能synchronized thried_party,而且还能build chromium,那么,它是谁呢? 它就是本文的主角——depot_tools.depot(是仓库的意思)。 安装depot_tools 要想安装depot_tools工具,那么毫无疑问的是从chromium官网上下载depot_tools工具。 下载地址 https://storage.googleapis.com/chrome-infra/depot_tools.zip,将其解压至 任意不包含中文或空格的目录里。 注意:不要使用鼠标拖拽或复制粘贴,否则其中 .git 目录可能不会正常复制过来,请使用 zip 压缩包管理工具直接解压到目标目录。 当我们解压下载下来的depot_tools压缩包后,需要在系统环境变量中添加depot_tools的路径。 注意:如果你的电脑安装了`python`和`git`,请将`depot_tools`路径添加在它们之前,因为`depot_tools`工具里内置了`python`和`git`。 随后,我们需要再设置一个DEPOT_TOOLS_WIN_TOOLCHAIN的变量名,其变量值为0。作用是让 depot_tools 使用本地安装的 Visual Studio 版本(默认情况下,depot_tools 将尝试使用 google 内部版本): 然后cmd一个命令窗口,先是设置网络。 注意:该设置网络只会在当前窗口有效,也就说你每新打开一个新窗口,都需要设置网络`。 # windows set http_proxy=127.
2024-09-22
[chromium]
1
2
...
15