自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Linux 内核开机logo制作

sudo apt-get install netpbmpngtopnm linuxlogo.png > linuxlogo.pnm pnmquant 224 linuxlogo.pnm > linuxlogo224.pnm pnmtoplainpnm linuxlogo224.pnm > linuxlogo224.ppm

2020-03-19 16:24:05 363

原创 Ubuntu 添加右键打开终端

对于Ubuntu12.04 LTS 和Ubuntu14.04 LTS ,默认不支持右键的方式打开终端,需要安装 nautilus-open-terminal 支持此功能;安装方法:1. sudo apt-get update2. sudo apt-get install nautilus-open-terminal3. nautilus -q...

2020-02-07 14:15:00 712

原创 ubuntu安装libstdc++.so.6的方法

sudo apt-get install libstdc++6sudo apt-get install lib32stdc++6

2020-02-04 18:05:28 14072 1

原创 Qt中configure参数配置说明

执行./configure –help命令,可以获得相应帮助。-release 编译Qt发布版-debug 编译Qt调试版-debug-and-release 以上两者-opensource 编译是开源版本-commercial 编译是商业版本-shared Qt的lib以动态编译生成-static Qt的...

2020-02-04 17:59:46 3033

原创 sudo命令无法读取环境变量的解决方法

通过sudo -l来查看sudo的限制:$ sudo -lMatching Defaults entries for xxx on this host:env_reset, mail_badpass,secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/binUser xxx may...

2020-02-04 17:27:31 2804

原创 objdump 反汇编 vmlinux详解

1. arm-linux-objdump -h vmlinux > vmlinux.txt 显示linux 内核段信息,如段的开始虚拟地址,段的长度2.arm-linux-objdump -S -l -z vmlinux > vmlinux.txt反汇编vmlinux到vmlinux.txt, vmlinux.txt含有汇编和c 源文...

2020-02-04 16:53:20 4767

原创 QT 5.9.0 移植

1.下载Qt访问Qt官方网站下载qt-everywhere-opensource-src-5.9.0-rc.tar源码包,下载目录。2.解压Qt执行下面的命令解压:tar xvf qt-everywhere-opensource-src-5.9.0-rc.tar3.配置Qt修改qmake.conf,配置目标平台的架构和交叉编译器的类型。vim qtbase/mksp...

2019-12-15 20:44:01 668

原创 Ubuntu 18.04 界面美化之windows任务栏

打开终端输入下面的命令安装gnome-tweak-tool及相关组件:sudo apt-get install gnome-tweak-toolsudo apt-get install gnome-shell-extensionssudo apt-get install gnome-shell-extension-dash-to-panel安装完成后,注销系统并重新登录,在U...

2019-11-30 20:07:49 1008

原创 hostapd 移植和使用

一、hostapd简介hostapd 是一个用户态用于AP和认证服务器的守护进程。它实现了IEEE 802.11相关的接入管理,IEEE 802.1X/WPA/WPA2/EAP 认证, RADIUS客户端,EAP服务器和RADIUS 认证服务器。二、hostapd移植1.打开hostap官网,下载hostapd-2.7.tar.gz源码包;           2.解压源码包:...

2019-01-15 18:47:00 5618 1

原创 wpa_supplicant 移植和使用

一、wpa_supplicant简介wpa_supplicant是wifi客户端(client)加密认证工具,和iwconfig不同,wpa_supplicant支持wep、wpa、wpa2等完整的加密认证,而iwconfig只能支持wep。wpa_supplicant运行于后台,它需要借助控制台工具wpa_cli来进行手动操作,使用wpa_cli来搜索、设置、和连接网络。二、wpa_...

2019-01-15 16:51:45 5558 1

原创 Uboot 使用串口Kermit协议传输文件

在uboot环境下调试裸机程序时,可以通过串口使用kermit协议传输二进制文件或者程序。下面我们了解一下在Window使用的SecureCRT向开发板传输文件。1.用串口线把电脑和开发板的debug调试串口连接起来;2.打开串口,把开发板上电,按任意键进入Uboot命令行:3.在Uboot命令行输入如下命令:        # loadb 0x82000000  //表示要把...

2019-01-15 15:04:39 3632 1

原创 libnl3.2 移植

libnl是为了方便应用程序使用netlink接口而开发的一个库。这个库为原始netlink消息传递以及不同的netlink family专用接口提供了一个统一的接口。一、下载源码1.打开libnl官网,下载libnl-3.2.25.tar.gz源码包;2.执行下面的命令解压源码包:       $ tar xvzf libnl-3.2.25.tar.gz二、编译libnl...

2019-01-15 10:51:11 2580 2

原创 udhcpc 移植和使用

一、编译内核1.执行make ARCH=arm CROSS_COMPLIE=arm-linux-  menuconfig,修改内核配置选项Networking  --->        [*] Networking support                            Networking options  --->                 ...

2019-01-14 16:39:48 3048 2

原创 libnl1.1.4 移植

libnl是为了方便应用程序使用netlink接口而开发的一个库。这个库为原始netlink消息传递以及不同的netlink family专用接口提供了一个统一的接口。一、下载源码1.打开libnl官网,下载libnl-1.1.4.tar.gz源码包;2.执行下面的命令解压源码包:     tar xvzf libnl-1.1.4.tar.gz二、编译libnl1.配置li...

2019-01-14 15:52:28 1118

原创 wireless tools 移植和使用

一、wirless tools简介WirelessTools (WT)就是用来操作wifi的工具集,它包括以下工具:     iwconfig:设置基本无线参数                iwlist:扫描、列出频率,比特率,密钥等                iwspy:获取每个节点链接的质量                iwpriv:操作WirelessExtens...

2019-01-14 15:39:38 1766

原创 Openssl 移植

一、下载源码1.打开openssl官网,下载openssl-1.1.1.tar.gz源码包。2.执行下面的命令解压源码包:       $ tar xvzf openssl-1.1.1.tar.gz二、配置openssl1.执行下面的命令配置工程       $ ./config no-asm shared no-async --prefix=$(pwd)/install ...

2019-01-14 15:14:53 3421

原创 C 数据对齐算法

我们在处理数据时,常常会要求数据字节对齐,例如8字节,16字节对齐等等,大家通常想到的做法是:unsigned int calc_align(unsigned int n,unsigned align) { if ( n / align * align == n) return n; return (n / align +...

2018-12-01 17:38:23 1574

原创 Git 打包文件详解

在上一篇博客《Git 追踪内容详解》(链接地址)中的结尾出两个问题:直接存储每个文件每个版本的完整内容是否太低效?如果只添加或改变一行是不是要存储两个版本的全部内容?答案:不是,不完全是!Git使用了一种叫做打包文件(packfile)的更有效的存储机制。要创建一个打包文件需要以下步骤:        1. 首先要定位内容非常相似的全部文件;        2. 然后将它们其中...

2018-09-15 21:55:17 2333

原创 Git 追踪内容详解

Git不仅仅是一个版本管理系统,同时还是一个内容追踪系统,Git 的内容追踪主要表现为两种关键的方式:第一种方式:Git的对象库不是基于用户文件布局的文件名或目录名设置,而是基于其对象的SHA1散列值来设置。当Git存放一个文件到对象库的时候,它是基于文件内容的SHA1散列值,而不是根据对象的文件名。因此,Git 并不跟踪与文件相关的文件名和目录名,而是跟踪的是文件的内容。Git根据文...

2018-09-15 21:06:55 1769

原创 Git config alias 设置命令别名

平时在使用 svn 时习惯使用 ci(commit)、co(checkout) 、st(status)等简洁的命令,但是在 Git 中没有提供这些简洁的命令,不过 Git 提供了别名机制,使用别名机制可将复杂的命令变的简洁。git config --global alias.ci commitgit config --global alias.co checkoutgit config...

2018-09-15 10:29:51 4527

原创 Git config 配置文件详解

一、配置文件级别Git 使用简单的 .ini 文件作为配置文件,配置文件中记录了很多 Git 命令使用的各种选项和设置,Git 支持不同级别的配置文件,下面按照优先级从高到低的顺序对它们进行介绍:.git/config           当前版本库特定的配置文件,可使用 --file选项修改,是Git的默认选项,此文件中的设置具有最高优先级。~/.gitconfig         ...

2018-09-15 09:47:41 4701 1

原创 Git commit 设置提交日志编辑器

git commit 提交变更时可使用命令行提供一条日志消息,如下所示:         git commit -m "提交日志"         git commit --message "提交日志"更好的做法是在交互式编辑器会话期间创建消息,这样就可以在熟悉的编辑器里编辑一条详细的提交日志,想要在 Git commit 时打开你想使用的编辑器,需要设置 GIT_EDITOR 环境变...

2018-09-15 09:11:56 2310

原创 Ubuntu 安装 SSH 服务

ssh 是Secure Shell的缩写,是一种安全协议,主要用于给远程登录会话数据进行加密,保证数据传输的安全,下面介绍一下如何在Ubuntu上安装和配置ssh服务。1.安装openssh-client和openssh-server    openssh-client是ssh的客户程序,如果想登陆远程机器的ssh,则需要安装openssh-client。openssh-client可使用...

2018-09-09 20:20:49 271

原创 Git diff 使用 vimdiff 对比差异

在Ubuntu中使用Git时,可使用命令行的git diff命令来对比两次提交的差异,但是这种对比查看方式无法直观地查看修改的差异,在对比和查看时不太方便。可以使用vimdiff作为Git diff的对比工具,这样就方便了许多,Git的配置方法如下:        $  git config --global diff.tool vimdiff        $  git config...

2018-09-09 18:08:52 5234

原创 svn diff 使用 vimdiff 对比差异

在 linux 环境下使用 svn diff 命令对比差异时很不直观,使用 vimdiff 对文件差异的展示性显然要大大直观于 svn diff,svn diff 命令可以指定 vimdiff 为查看对比的程序。在 /usr/bin 目录创建一个 diffwrap.sh 脚本,并修改权限为777,脚本内容如下:#!/bin/sh#过滤掉svn diff的前五个命令行参数shift 5...

2018-09-09 17:58:05 2504

原创 使用 vimdiff 比较文件的技巧

1. 使用 vimdiff 命令可以比较两个文件的差异,不同的地方高亮显示,如下图所示:2. 在一行不同处,输入do可将另一个buffer的改动应用于当前buffer,输入dp 可将当前buffer的该行内容应用于另一个buffer。3. 输入] c跳到下一个不同行;输入[c 跳到上一个不同行。4. 横向对比时,由于屏幕宽度有限,所以每次要到两个buffer分别:set wrap来...

2018-09-09 17:54:42 7889 1

原创 QT 支持鼠标和触摸屏输入

1.使用鼠标输入导入环境变量:export QWS_MOUSE_PROTO=MouseMan:/dev/input/mice2.使用触摸屏输入导入环境变量:export QWS_MOUSE_PROTO=Tslib:/dev/input/touchscreen03.使用鼠标和触摸屏同时输入            导入环境变量: export QWS_MOUSE_PROTO=Mou...

2018-09-08 20:22:13 4129

原创 Qt4 程序 QWS 启动参数详解

一、QWS简介QWS的全称是Qt windows system,它是QT自行开发的窗口系统,是一种C/S结构,由QWS Server在物理设备上显示,由QWS Client实现界面,两者通过socket进行彼此的通讯。在很多嵌入式系统里,QT4程序基本上都是用QWS来实现,这样保证程序的可移植性。QWS Server程序构造方法是构造一个QApplication::GuiServe类型的Q...

2018-09-08 19:06:09 7711

原创 使用debugfs来调试内核

1.简介debugfs,是一种用于内核调试的虚拟文件系统,内核开发者可以通过debugfs和用户空间交换数据。虚拟文件系统还有procfs和sysfs等,虚拟文件系统都并不实际存储在硬盘上,而建立在内存中。我们最常用的内核调试手段是printk。但printk并不是所有情况都好用,比如打印的数据可能过多,我们真正关心的数据在大量的输出里不是那么一目了然;或者我们在调试时可能需要修改某些内核...

2018-09-08 18:26:55 1233

原创 Uboot LCD 添加进度条功能

使用Uboot自动烧写镜像时,通常会在LCD屏幕上显示当前工作的进度条,下面给出一种画进度条的方法(仅支持32位和16位LCD):1. 宏定义声明#define PROBAR_WIDTH 600 //进度条宽度 #define PROBAR_HEIGHT 30 //进度条高度 #define PROBAR__PIEXL 2 //边框像素 #defi...

2018-09-01 11:56:04 1413

原创 Qt 使用 QSettings 读写ini文件

一、 前言QSettings类,是Qt提供的一个读取配置文件的类,它提供了ini文件的读写。应用程序初始化过程中需要一些初始化参数,例如,窗体的大小位置,URL等等,而这些参数均可由QSettings类读取ini文件得到。使用QSettings类需包含头文件:#include <QSettings>二、 添加参数//QSettings构造函数的第一个参数是ini文...

2018-08-23 21:41:54 2537

原创 EXPORT_SYMBOL() 错误--warning: type defaults to 'int' in declaration of 'EXPORT_SYMBOL'

最近使用EXPORT_SYMBOL() 导出函数到内核符号表时,出现如下面的错误:        warning: data definition has no type or storage class        warning: type defaults to 'int' in declaration of 'EXPORT_SYMBOL'        warning: pa...

2018-08-23 20:39:57 9833 3

原创 SVN 删除用户名和密码

1.Linux 用户名、密码保存在~/.subversion/auth/svn.simple目录下,删除该目录即可删除用户名、密码:         $ rm -rf  ~/.subversion/auth/svn.simple2.Windows① 右键出TortoiseSVN菜单,Settings->Saved Data->Authentication data,Cl...

2018-08-23 20:26:30 5893 1

原创 ARM Linux Kernel 编译结果 Image zImage uImage映像的区别

一、区别               ARM Linux Kernel源码使用 "make CC=***  uImage" 命令编译完成后会生成三种映像:                1. Image  : 内核的映像文件;                2. zImage: 内核的映像压缩文件;                3. uImage: uboot使用的内核映像文件,...

2018-08-18 19:34:30 1832

原创 QT QWebView/QWebEngineView使用

一、 简介       使用QT程序可以访问web页面,但在不同QT版本中使用的类和方法不同:               1. Qt4中使用webkit模块;               2. Qt5 ~Qt5.5使用webkitwidgets模块;               3. Qt5.6以上版本使用webenginewidgets模块。       所以在不同版本中添...

2018-08-13 18:10:48 27082

原创 QT4 QWebView的使用

 1. 创建一个Widget类的QT工程,在pro工程文件中添加 webkit network QT += core gui webkit networkgreaterThan(QT_MAJOR_VERSION, 4): QT += widgetsTARGET = webTEMPLATE = app SOURCES += main.cpp\ ...

2018-08-13 17:54:42 1152

原创 9针串口引脚定义

9针串口引脚定义1. 引脚定义 2. 公头线序 3. 母头线序

2018-08-07 22:07:03 15515

原创 BMP 文件格式的详解

BMP,全称BitMap,是Windows操作系统中的标准图像文件格式,可以分成两类:设备相关位图(DDB)和设备无关位图(DIB)。BMP是Windows系统中广泛使用的图像文件格式。由于它可以不作任何变换地保存图像像素域的数据,因此成为我们取得RAW数据的重要来源。BMP文件的图像深度可选lbit、4bit、8bit及24bit。BMP文件存储方式小端格式,即低地址村存放低位数据,高地址存...

2018-08-05 22:32:03 930

原创 Uboot Makefile 中 $(origin variable)详解

在阅读Uboot中的Makefile时,发现下面的代码:    ifdef O                ifeq ("$(origin O)", "command line")                BUILD_DIR := $(O)                endif                endif$(origin O)中的origin函数不直接操作...

2018-08-05 21:11:39 655

原创 VIM 编码格式 显示乱码

在开发跨平台项目中,由于windows和Linux环境下的编码格式不同,在Ubuntu系统中使用VIM编辑代码时中文显示乱码,设置VIM配置文件~/.vimrc,在配置文件中加入下面的配置:    set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936    set termencoding=utf-8    set encod...

2018-08-05 20:47:09 6942

空空如也

空空如也

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

TA关注的人

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