Loading

摘要: 原理 当我们执行docker build命令使用Dockerfile构建一个新的镜像时,docker内部的构建过程大致如下: 从基础镜像运行一个容器; 执行一条指令,对容器做修改; 执行类似docker commit的操作,生成一个新的镜像层; Docker会再基于刚刚提交的镜像运行一个新容器; 重 阅读全文
posted @ 2020-12-20 17:40 Suiyek 阅读(3365) 评论(0) 推荐(0) 编辑
摘要: 注:本文是我在学习FFmpeg Filters Documentation过程中的中文翻译笔记,为避免英译中过程中一些死板的字面意思引起读者错误理解,有时候我还会加上一些个人注解,若有不同见解,请最好参考原文档学习。本翻译仅供参考,转载请注明! 1. 简介 本文档将描述由libavfilter库提供 阅读全文
posted @ 2020-12-20 17:23 Suiyek 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 背景 总所周知,代码量稍微大一点的C/C++项目的一些宏定义都会比较复杂,有时候会嵌套多个#if/#else判断分支和一堆#ifdef/#undef让你单看代码的话很难判断出宏定义的具体内容。 如果有一种机制能够帮助我们在构建期间打印出宏的实际内容,就能帮我们更快地捋清楚代码逻辑。 message 阅读全文
posted @ 2020-12-20 17:12 Suiyek 阅读(5352) 评论(0) 推荐(0) 编辑
摘要: 背景 在gitlab上配置新项目的CI的时候,需要编写项目的 .gitlab-ci.yml 文件。 每次修改 .gitlab-ci.yml 文件之后都要执行git push让GitLab去构建来验证当前的CI脚本是否能正确构建,甚是麻烦,同时增加了很多无营养的Git提交。 若我们能够在修改完.git 阅读全文
posted @ 2020-12-20 16:18 Suiyek 阅读(2279) 评论(0) 推荐(1) 编辑
摘要: 安装 官网下载地址: https://www.bullseye.com/cgi-bin/download 安装过程中需要License, 可以**申请评估版本的key或者直接从官网渠道购买**。 Ubuntu18.04为例: /install --prefix /opt --key {LICENSE 阅读全文
posted @ 2020-12-20 15:45 Suiyek 阅读(1032) 评论(0) 推荐(0) 编辑
摘要: 简介 AddressSanitizer 是一个性能非常好的C/C++ 内存错误探测工具。 它由编译器的插桩模块和替换了malloc函数的运行时库组成。 这个工具可以探测如下这些类型的错误: 对堆、栈和全局内存的访问越界(堆缓冲区溢出,栈缓冲区溢出,和全局缓冲区溢出) UAP(Use-after-fr 阅读全文
posted @ 2020-12-20 15:35 Suiyek 阅读(1675) 评论(0) 推荐(0) 编辑