笔记
文章平均质量分 65
坤昱
这个作者很懒,什么都没留下…
展开
-
11月24号,我们为“满月”庆祝
不知何时,10月24号这天成为了程序员们的节日,或者说是“程序”们的节日。今年有幸参加“满月”庆生,收获还是蛮多的。 这次的活动地点在微软亚洲研究院,我与多位博主专家及CSDN工作人员参观了完整活动环节。 首先进入第一个场景,四周由等比例屏幕构成,类似科幻风格,更像是进入“魔方世界”,向脚下望去,微眩晕,有种悬浮的感觉。 这里的设计颇为惊艳,微秀技术的同时,不忘宣传自家的产品! 在我之前的印象里,微软由操作系统出身,业务层面应该是中规中矩的那.原创 2021-11-25 23:14:20 · 3022 阅读 · 0 评论 -
install.img制作方式
install.img(在部分系统使用)由grub2引导启动,并完成系统磁盘挂载,服务加载等工作,如系统安装程序、备份还原程序在这个文件中修改即可。install.img制作mount install.img (从已有的iso文件中找到install.img);拷贝出LiveOS/rootfs.img,放置目录为build/LiveOS/roofs.img;mount rootfs.img文件并进行修改,如替换系统安装程序;umount rootfs.img;mksquashfs buil.原创 2021-10-24 11:39:32 · 1313 阅读 · 0 评论 -
Debian、Ubuntu源码编译制作安装包(二)
在<Debian、Ubuntu源码编译制作安装包(一)>文章中描述了dpkg基本制作安装包过程,本篇文章描述如何增加patch及解决出错问题。章节预览:5. 增加patch6. 修改/跳过编译项7. 错误解决8. rpm源码包在Debian系列系统编译目录预览章节内容:5. 增加patch Debian系列系统制作或增加patch较为简单,即可以通过diff -Naur等指令制作patch,也可以直接修改源码,执行dpkg-buildpackage指定patc.原创 2021-10-06 14:09:17 · 1877 阅读 · 0 评论 -
Linux内核驱动如何编写?我们先从字符驱动入门开始
几年前正式转到linux开发岗位的时候,由于项目急需编写linux驱动来控制项目采集设备(板卡),我便被安排做这一部分工作。那时候挺慌的…,在之前的一年多时间里基本都是window应用开发,对于linux理解也相对较少。还好那时候认识一些别的公司的大佬,给指点了一二,便开始“模仿造车之路”… 记得那时候领导给了一个月调研时间,希望在一个月内能搞明白板卡的驱动采用哪种方式实现,需要购买什么书籍。 那时候心里虽没有底…,但我也想完成这次挑战,就随便购买了一本《Linux设备驱动程.原创 2021-06-13 16:55:17 · 544 阅读 · 0 评论 -
掌握spec只需读这一篇文章,CentOS、RedHat、SUSE粉的福利来了
什么是 spec(配置规范文件)?RPM 编译过程的核心是处理 .spec 文件。它说明了软件包怎样被配置,补缀哪些补丁,安装哪些文件,被安装到哪里,在安装该包之前或之后需要运行哪些系统级别的活动。它必须手写,但更简单的办法是拿来他人写好的,在此基础上修改。RPM 自身对于你能在 spec 文件中做什么没有太多限制,所以你可以搞的很复杂。章节预览:1. spec文件的编码2. spec文件的授权3. 编写spec文件3.1 编译一个空文件的安装包4 常用宏5 常用宏章节内容:.原创 2021-06-06 15:30:03 · 6332 阅读 · 4 评论 -
厉害了!VMware ESXi安装记录,附下载
VMware ESXi 是什么?它是直接安装在您的物理服务器上的强大的裸机管理程序。通过直接访问和控制底层资源,VMware ESXi 有效地对硬件进行分区以整合应用程序并降低成本。它是高效架构的行业领导者,树立了可靠性、性能和支持的标准。章节预览:1. 安装ESXi2. 设置ESXi3. 启动ESXi下载ESXi章节内容:1. 安装ESXi 首先打开VMware虚拟机(参考<搭建Linux虚拟机并编写简单程序>),点击左上角“文件” -> “新.原创 2021-05-31 00:18:50 · 2589 阅读 · 15 评论 -
Debian、Ubuntu源码编译制作安装包(一)
Debian、Ubuntu系列linux操作系统制作安装包相较于CentOS更简便一些,如“dpkg -b”指令即可重新打包。如果需要源码级制作安装包则更困难一些,接下来,我们逐步分析Debian、Ubuntu源码编译制作安装包的步骤。章节预览:1. 生成源码文件夹2. 修改control文件3. 修改rules文件4. 生成安装包章节内容:1. 生成源码文件夹 首先我们准备一个可以编译通过的源码包,如openssl-1.1.1k.tar.gz,可从https://ww.原创 2021-05-09 01:03:56 · 2761 阅读 · 3 评论 -
7z用法
7z工具用法解压7za x install.7z -r -o./installx 解压缩文件,并且是按原始目录解压-r 递归所有的子文件夹-o 指定解压到的目录,-o直接接目录压缩7z a -t7z -r manager.7z /home/manager/*a 添加文件/文件夹到压缩包-t 指定压缩类型-r 递归所有的子文件夹,manager.7z 是压缩好后的压缩包名,/home/manager/* 是要压缩的目录,*是表示该目录下所有的文件...原创 2021-04-02 23:10:06 · 768 阅读 · 0 评论 -
ubuntu中的tftp用法
查看几年前的移动硬盘,发现做过的一些东西现在都快忘了,简单记录一下安装工具sudo apt-get install xinetd tftpd tftp编写配置文件sudo vi /etc/xinetd.d/tftp创建tftp文件并把下列信息写入文件service tftp{protocol = udpport = 69socket_type = dgramwait = yesuser =.原创 2021-04-02 22:54:30 · 2324 阅读 · 1 评论 -
kgdb调试内核无法执行断点及kdb-22:Permisson denied
之前在Centos8操作系统中,通过kgdb调试内核遇到无法执行断点及kdb-22:Permisson denied的问题。接下来,通过本篇文章用来讲述修改的配置参数。章节预览:章节内容:1. 选择内核配置内核参数在linux相关系统中调试内核本是一件较为简单的事情,但某个参数未配置或配置不正确可能会遇到一些小问题:比如无法通过串口连接到目标机器,无法调试目标内核代码等等。首先,我们先从选择内核版本开始入手,通过 uname -r 查看内核版本:图1 查看内核版本参考图1,内核版本为.原创 2021-02-10 23:48:31 · 974 阅读 · 1 评论 -
Centos系列 Curl error (37): Couldn‘t read a file:// file for file:///etc/pki/rpm-gpg/RPM-GPG-KEY-XXXX
最近在Centos8系统安装gcc时提示“Curl error (37): Couldn’t read a file:// file for file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial [Couldn’t open file /etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial]”,经过摸索找到了方法,接下来记录一下修复方法。 先贴一张提示内容: 然后使用:wget https:.原创 2020-11-03 00:15:32 · 10742 阅读 · 3 评论 -
tensorflow离线安装指南
tensorflow离线安装是一件麻烦的事情,首先需要确定tensorflow安装包兼容当前环境,其次是依赖库较多且库版本需适配。接下来,我们在一台有网络的centos服务器系统内下载依赖库并完成适配。目录1. 下载tensorflow安装包1.1 确认python版本1.2 配置venv1.3 自动获取(安装)tensorflow指定版本2. 离线适配依赖库2.1 网络配置2.2 适配依赖库内容1. 下载tensorflow安装包 首先,我们需要确定安装ten.原创 2020-10-06 14:22:23 · 8276 阅读 · 3 评论 -
linux动态库修改名称(修改库文件内容)
在linux系统下,当系统中存在多个相同命名的动态库(.so)时,ldconfig只为执行程序链接最后找到的库,而之后找到的库虽然通过“ifconfig -p”可以看到库路径信息,但不会被链接到执行程序。 在实际编程中,如果多个项目都用到某个动态库(比如libteaa.so,存在有多个并且在不同路径下),而且libteaa.so内的某个函数实现不同,部分程序编译或执行时将会出现异常情况。举两个简单例子:a程序需要调用libteaa.so内的add函数为int add(i原创 2020-08-13 00:40:29 · 6133 阅读 · 7 评论 -
CMake实战技巧
CMake是一个开放源代码,跨平台的工具系列,旨在构建,测试和打包软件。CMake用于使用简单平台和独立于编译器的配置文件控制软件编译过程,并生成可在您选择的编译器环境中使用的本机makefile和工作区。CMake工具套件是由Kitware创建的,旨在满足ITK和VTK等开源项目对功能强大的跨平台构建环境的需求。简单来说,CMake是一款非常强大的编译工具,配合buildroot可以做到自动从下GitHub下载源码、自动选择架构并编译到指定目录。听起来是不是很强大?当然,部分编译工具也能做到这一点,.原创 2020-06-23 00:59:45 · 1860 阅读 · 0 评论 -
自从用了这几个网站后,linux下的开发(使用)更加简单化
在linux相关平台下开发与调试程序经常会遇到各种耗时的问题:比如目标机器不能联网安装依赖包,内核相关定义和函数不方便查找等。接下来,先从下载包开始,为大家推荐几个网站提高编程效率。章节预览:BelnetDebian系列包下载ubuntu系列包下载bootlin内核信息查找mirrors内核下载章节内容:BelnetBelnet公共FTP服务器,该服务器位于比利时布鲁塞尔,由比利时教育和研究网络Belnet运营。主要用于linux相关系统、依赖包下载,其中Debian、.原创 2020-06-13 17:07:44 · 3398 阅读 · 0 评论 -
windows:QtCreator调用库的方式
在windows相关系统中,使用QtCreator无法像linux相关系统那样调用静态或动态库,需要修改添加方式才能正确执行程序接下来需要5分钟阅读时间,来了解windows相关系统中QtCreator添加库的方式 在QtCreator中,一般使用MinGW32或MinGW64编译工程,直接使用LIBS += -lXXXX,会产生错误提示,参考图1:图1 linux方式加载出错 针对这种情况,我们首先确定MinGW属于32位还是64位,参考图2:图2 在项目中查看.原创 2020-05-28 01:03:34 · 2152 阅读 · 0 评论 -
高级语言中的关键字:const用法分析
const是constant的缩写,本意是“不变的、不易改变的”,它属于c、c++、Java等高级语言中的关键字,通常用来修饰变量对象、函数参数、c或c++指针对象使用。 const在实际编程中起着至关重要的作用,本文主要讲解它在编程中的不同含义。章节预览:1. 变量修饰2. 指针修饰章节内容:1. 变量修饰 【例1】 int const...原创 2020-05-01 14:48:32 · 516 阅读 · 0 评论 -
【十万个编程篇】Linux—Debian系列,deb包首次分析
deb格式属于Debian系列专属安装包格式,它广泛应用在Debian、Ubuntu等Linux发行版本中。deb包的制作过程也比较简单,它由包文件信息以及包内容,经过tar打包而成。实际制作或使用时,只需dpkg相关指令即可完成这些工作。 大部分发行版中,deb包的安装信息记录在“/var/lib/dpkg”文件夹内,参考图1: 图1-deb包安装信息 ...原创 2020-04-08 23:13:15 · 1043 阅读 · 1 评论 -
【十万个编程篇】写文章与“写项目”的差别
自古暨今,世间陆续诞生出“现象级”的文学作品,如《左传》、《桃花源记》、《背影》等文章,又如《咏鹅》、《将进酒》、《一剪梅》等诗词。 编程世界也同样续写着新的辉煌,如Unix、Windows、Linux等内核系统,又如Apache、Tengine、ECharts等开源项目。 它们无一例外,都标志着历史的发展与演变过程。它们也拥有着独特的风格,只有“现...原创 2020-03-21 16:31:18 · 1099 阅读 · 0 评论 -
【“天才”必经之路】只需一年时间,从编程小白成为同事们敬仰的编程大神
编程是什么?也许每个人都有不同的见解。 有人认为编程是一份工作,也有人认为编程是一种爱好,甚至有人认为编程是此生追求。其实,编程就是编写程序。 首先,从“编”字分析,它既可以表示编写,也可以表示按一定的原则、规则或次序来组织或排列。但,都离不开思考。 “程”字,它既可以表示工程,也可以表示行进的距离。但,都离不开执行。 ...原创 2020-03-07 15:17:41 · 25097 阅读 · 71 评论