自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 python tkinter遍历treeview

支持遍历子节点

2023-11-21 17:01:57 537

原创 在shell界面实现解压文件的进度条

在制作一个包含长时间阻塞的命令(比如说解压文件)的shell脚本时,时常会想,如果类似于wget命令能显示一个进度条来提示就好,经过一段时间的摸索,博主总结出了两种方法来实现这个功能:纯shell方法和借助tqdm工具。

2023-11-05 15:53:49 240

原创 uboot中使用 __DATE__ __TIME__ 等时间宏

如果想在uboot中使用构建时间的话,网上大多数的方法是将 ​KBUILD_CFLAGS += $(call cc-option,-Werror=date-time)​ 删除,但其实uboot在构建时已经在 ​include/generated/timestamp_autogenerated.h​ 中记录了这些信息了,更好的方式是通过引用该文件的宏来代替 ​ __DATE__​ ​__TIME__​ ​__TIMESTAMP__​ 。

2023-05-12 16:27:31 289

原创 rsyslogd配置分析

简单 分析下 rsyslogd配置 和 logrotate

2023-04-23 15:45:36 726

原创 高通看门狗驱动源码分析

分析下qcom,msm-watchdog驱动源码

2023-04-18 11:23:42 817

原创 linux内核ipv6 nat时ipsec接收流程

分析下ipv6在nat和非nat环境下,内核收到ipsec流量时是如何处理的(主要是后,前这一部分)。

2023-01-18 19:43:59 676 11

原创 kernel卡死时自动重启

通过menuconfig可配置内核在卡死后能自动重启,配置项为Kernel hacking下的PANIC_TIMEOUT

2022-09-20 15:16:03 1226

原创 添加proc文件,控制sctp的debug输出

通过打开 kernel 的 menuconfig 的选项可以输出sctp的debug日志。但是debug消息输出较多,如果没有不需要定位sctp问题时最好能关闭debug日志。记录下在/proc/sys/net/sctp下添加一配置文件以实现配置日志是否输出的功能的实现。

2022-09-14 20:02:31 286 1

原创 linux登陆时显示export COLUMNS LINES;

最近基于ubuntu做了个新发行版,每次登陆后都会显示COLUMNS=157;LINES=46;export COLUMNS LINES;

2022-08-24 11:29:59 359

原创 代码拷贝后编译出现CDPATH=“${ZSH_VERSION+.}:“ && cd .. && /bin/bash ..../missing aclocal-1.14 -I m4/config 报错

最近拿一份祖传的strongswan代码在改,本来已经测试通过了,结果拷贝了一份再make就报错

2022-08-19 14:48:25 1004

原创 编译strongSwan报错 error: ‘uintptr_t‘ undeclared (first use in this function); did you mean ‘__intptr_t‘

./utils/utils/memory.h:99:15: error: 'uintptr_t' undeclared (first use in this function); did you mean '__intptr_t'?最新版本的 glibc 在某些版本中不包含完整的 stdint.h 标头解决方法:

2022-07-12 18:50:56 2569

原创 从linaro下载安装二进制文件安装交叉编译工具

安装交叉编译工具链的方法有很多种,这里记录下直接从linaro下载安装二进制的编译工具方法。确定自己要安装的工具链版本工具链下载地址:https://releases.linaro.org/components/toolchain/binaries/具体可以咨询自己用的芯片的生产商,其中带be的是大端模式的。以7.5.0的linux-gun为例:linuxhttps://releases.linaro.org/components/toolchain/binaries/7.5-2019.12/aarc

2022-02-23 11:19:12 1102

原创 #include_next 导致 cstdlib:fatal error:stdlib.h :No such file or directiry

在用gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu进行交叉编译时,出现报错:/home/Likejiang/5GNR/gcc-linaro-7.5.0-2019.12-x8664aarch64-linux-gnu/aarch64-linux-gnu/include/c++/7.5.0/cstdlib:75:15: fatal error: stdlib.h:No such file or directory#include_next <std

2022-02-22 20:03:49 6299 1

原创 busybox修改帮助信息

本busybox版本1.24.2busybox的帮助信息生成于include\usage.h,但不能直接修改usage.h文件,这个在usage.h开头也有说明:/* DO NOT EDIT. This file is generated from usage.src.h *//* vi: set sw=8 ts=8: *//* * This file suffers from chronically incorrect tabification * of messages. Before ed

2021-11-02 20:56:15 307

原创 ffmpge在RTMP推流时使用av_interleaved_write_frame/av_write_frame函数时阻塞,设置超时时间的方法

在使用ffmpeg进行推流时,有时网络连接会因为种种原因断开,这时av_interleaved_write_frame/av_write_frame函数就会阻塞长达15分钟左右,这怎么能行,下面就说一下如何设置最长的阻塞时间。在使用命令行推流时在使用命令行推流时,需要添加 -rw_timeout参数,单位微秒,如下,更改前的命令./ffmpeg -i rtsp://admin:12345@192.168.31.113:8554/0 -c:v copy -f flv rtmp://r.ossrs.

2021-04-15 18:58:12 2006 1

原创 树莓派修改SPI缓冲区大小

在使用树莓派调SPI接口的TFT屏的时候,发现单词读/写数据一旦超过4096时就会返回-1,同时perror的话会报错“字符数组太长”(大概这个意思),这是因为驱动中设置的缓冲区太小,通过下面办法可修改缓冲区大小:在/boot/cmdline.txt中加入以下内容,注意直接添加到结尾处,不要另起一行:spidev.bufsiz=200000参考内容:https://tieba.baidu.com/p/5619919288?red_tag=0011170121...

2021-03-29 10:37:34 920

原创 4G模组EC20在使用电信物联网专用卡时无信号问题

手中有两个的EC20,在使用物联网专用卡测试时时发现一个问题,同一批次的物联网专用卡,在一块模组上能正常使用(下面简称A模组),另一块上就无信号(简称B模组)。A模组:AT+CSQ+CSQ: 28,99B模组:AT+CSQ+CSQ: 99,99查了一圈,最后问题锁定在可接入网点上(先这么叫了,不懂学名)A模组:AT+COPS=?+COPS: (2,"CHN-CT","CT","46011",7),(3,"CHINA MOBILE","CMCC","46000",7),(3,"C

2021-03-23 11:26:30 6429 1

原创 c语言版本号比较函数

需要实现一个比较本机和服务器的安装包的版本新旧方法,参考https://blog.csdn.net/ituring/article/details/6092411但这个程序实现不了如1.x.x 和 2.x.x1.1.4 和 1.1.4.1这种情况下的比较,做了些修改/** * @brief 版本号比较那个更新 * @param pszStr1 待比较的版本号 * @param pszStr2 待比较的版本号 * @retval >0:pszStr1更

2020-12-31 18:23:30 1527 3

原创 GB28181的设备端开发(二)接收发送xml格式的message信令

一、Message信令流程在GB28181规定中,源设备(对我们来说就是sip服务器)向目标设备发送设备控制命令, 控制命令的类型包括球机/云台控制、 远程启动、 录像控制、报警布防/ 撤防、 报警复位、 强制关键帧、 拉框放大、 拉框缩小、 看守位控制、 设备配置等, 设备控制采用IETFRFC3428 中的Message 方法实现。命令流程分为:1.无应答命令流程命令流程描述如下:a ) 1 : 源设备向SIP 服务器发送设备控制命令, 设备控制命令采用Message 方法携带;b ) 2

2020-12-19 20:45:19 3025 4

原创 Mini-XML(MXML)的交叉编译与使用

./configure --host=aarch64-linux-gnu --prefix=/home/liu/workspace/mxmlaarch64-linux-gnu-gcc -o xml testmxml.c -I /home/liu/workspace/mxml/include -L /home/liu/workspace/mxml/lib -lmxml#include<string.h>#include<stdio.h>#include<stdlib.

2020-12-16 23:20:11 1884 1

原创 GB28181的设备端开发(一)

1.交叉编译PJSIP./configure --host=aarch64-linux-gnu --enable-shared --enable-ffmpeg --with-ffmpeg=/opt/ --prefix=/home/liu/workspace/pjsipmake depmakemake install–with-ffmpeg : ffmpeg的安装目录–prefix : 指定编译后保存生产库的路径–host : 指定交叉编译器出现了报错 fatal

2020-12-05 10:57:59 3553

转载 整理下sizeof注意事项

sizeof(‘a’)的结果是多少?这个要看是在C中还是C++中了。根据C99标准的规定,'a’叫做整型字符常量(integer character constant),为int型,故结果是4(对于32位机器);而ISO C++规定,'a’叫做字符字面量(character literal),为char型,故结果是1。C强调了’a’的“数”属性,而C++强调了’a’的“字符”属性。————————————————版权声明:本文为CSDN博主「RationalGo」的原创文章,遵循CC 4.0 BY-S

2020-09-01 10:48:36 599

原创 交叉编译mqtt到m1808

第一步:https://blog.csdn.net/gpf0845531213/article/details/95946979第二步:https://blog.csdn.net/gpf0845531213/article/details/95961973第三步:把交叉编译好的动态库复制到m1808的/usr/lib下

2020-07-01 17:07:11 198

原创 ffmpeg中avformat_new_stream的用法

大佬总结的一:介绍1.1 AVStream首先了解下 AVStream : http://ffmpeg.org/doxygen/3.1/structAVStream.htmlAVStream 即是流通道。例如我们将 H264 和 AAC 码流存储为MP4文件的时候,就需要在 MP4文件中增加两个流通道,一个存储Video:H264,一个存储Audio:AAC。(假设H264和AAC只包含单个流通道)。AVStream包含很多参数,用于记录通道信息,其中最重要的是 :AVCodecParamet

2020-06-16 12:13:40 3128

原创 C++11 lambda表达式作为函数的入参

lambda表达式作为函数的入参时如果直接这么写会报错#include <iostream>#include <algorithm>using namespace std;void fun( void (*f)() ){ f();}int main(){ int num=10; fun( [=]() { int b; b=num;...

2019-12-06 23:01:39 1599

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除