Linux
TAlice
专注嵌入式软件开发,有一颗不会闲下来的心,才不会变老。
展开
-
解决Invalid configuration `arm-xxx-linux‘: machine `arm-xxx‘ not recognized
1、问题描述交叉编译uuid库,命令为./configure --prefix=pwd/release --host=arm-xxx-linux提示Invalid configuration arm-xxx-linux': machinearm-xxx’ not recognized如下图2、解决办法将配置命令改为./configure --prefix=pwd/release CC=arm-himix200-v1902-linux-gcc CXX=arm-himix200-v1902-li原创 2021-02-24 19:30:38 · 5243 阅读 · 4 评论 -
一个超好用经典Makefile小例模板(吐血整理)
利用Makefile生成一个组件库# 想要生成的组件库名称TARGET_LIB_A := libXXX.a# 最终存放库文件和头文件的目录DIST_INC := ./dist/include/componentDIST_LIB := ./dist/libDIST := ./dist/{include/component/,lib/}# 需要打包的头文件SRC_INC := ./src/aaa.h \ ./src/bbb.h \ ./src/ccc.h # 交叉编原创 2021-02-02 20:29:32 · 387 阅读 · 0 评论 -
关于awk、sed、cut、head、tail、gawk
cat data.txt | tail -n 20 //显示文件最后20行cat data.txt | head -n 20 //显示文件前面20行cat data.txt | head -n 500 | tail -n +100 //显示100行到500行cat 1111.txt | head -n 3 | tail -n +3 | awk 'sub($...原创 2019-11-08 14:48:45 · 655 阅读 · 0 评论 -
关于多个Linux服务器登录码云
一,服务器A1, 首先用服务器A产生公钥与私钥[wt@localhost ~] $ git config --global user.name "wangtao" // Linux上[wt@localhost ~] $ git config --global user.email "764234****@qq.com" //对git...原创 2018-03-12 21:25:23 · 650 阅读 · 0 评论 -
Linux下串口编程
刚开始接触串口编程,我满脑子疑问,串口是什么?串口编程的目的是什么?编程要写什么程序?看到什么现象意味着串口编程基本完成?在百度大婶的帮助下我看到了很多的前辈写的关于Linux的的的的下串口编程的文章,给了我很多启发,也驱使我写下这篇博客,如何从一脸蒙逼到原来如此。一,串口是什么物理层:常用的串口接头有两种,一种是9针串口(简称DB-9),一种是25针串口(简称DB-25...原创 2018-04-25 14:38:35 · 1120 阅读 · 0 评论 -
Linux下多进程编程小例——获取网卡的IP地址
Linux下多进程编程的核心是调用fork()系统调用用来创建一个新的进程:pid_tfork(void); 由fork()创建的新进程被称为子进程。fork()函数被调用一次,但有两次返回。返回值=0:子进程返回值>0: 父进程,返回值为子进程的进程ID。返回值<0: 出错1,子进程可以通过getpid()和getppid()分别获...原创 2018-05-14 00:27:46 · 1058 阅读 · 0 评论 -
嵌入式开发环境 (ARM开发板FL2440) 下移植sqlite3数据库
下载安装:1,到http://www.sqlite.org/download.html下载linux版本的源码:我下载的是sqlite-autoconf-3240000.tar.gz[wt@localhost ~]$ wget https://www.sqlite.org/2018/sqlite-autoconf-3240000.tar.gz2,解压:[wt@localh...原创 2018-08-04 17:50:17 · 591 阅读 · 0 评论 -
关于结构体的成员对齐与结构体整体对齐
大多数计算机体系结构中,对内存操作时按整字存取才能达到最高效率,相当于是以空间换取时间,看似浪费了内存空间,但换来了存取效率,先来说说三个概念:系统对齐值,自身对齐值,有效对齐值,三个概念的单位均为字节,一开始概念不懂没关系,可以对照后面的程序和内存分布图来理解1,系统对齐值:对于不同的操作系统,不同的开发环境,其默认的系统对齐值不同(通常是4或者8),在C语言里你也可以通过一个宏{#p...原创 2018-08-24 13:20:07 · 2691 阅读 · 2 评论 -
Linux下树莓派spi编程
一、SPI协议介绍:1、【SPI基础知识简介】SPI全称是串行外设接口(Serial Peripheral Interface),是由Motorola提出的一种全双工同步串行通信接口,通信波特率可以高达5Mbps,但具体速度大小取决于SPI硬件。SPI接口具有全双工操作,操作简单,数据传输速率较高的优点,但也存在没有指定的流控制,没有应答机制确认是否接收到数据的缺点。SPI总线只需四条线就...原创 2018-11-08 21:58:14 · 13451 阅读 · 4 评论 -
linux shell脚本编程基本语法
文章转自https://blog.csdn.net/Edroid1530/article/details/72885590linux shell脚本编程基本语法Shell script是利用shell的功能所写的一个“程序”,这个程序是使用纯文本文件,将一些Linux Shell的语法与命令(含外部命令)写在里面,搭配正则表达式、管道命令与数据流重定向等功能,以达到我们所想要的处理目的。Shell...转载 2018-03-29 13:11:54 · 1857 阅读 · 2 评论 -
git push 推送失败解决过程
问题:git push 推送显示出错[wt@localhost fl2440]$ git pushAccess deniedexec request failed on channel 0fatal: The remote end hung up unexpectedly解决过程:1,会不会是因为推送的文件太大,于是我在.git/config配置文件中(用vim命...原创 2018-03-30 23:02:35 · 11660 阅读 · 3 评论 -
Linux文件压缩,管道和重定向小例
1, 练习并熟练掌握Linux下常见压缩格式 tar.bz2和tar.gz的压缩与解压缩; 并各给出压缩与解压缩实例;[wangtao@centos6 dir]$ tar -zcvf ./gz/source.tar.gz *.c 1 2{将文件压缩后放到当前目录下的gz文件夹}[wangtao@centos6 dir]$ tar -jcvf ./bz2/source.tar.bz2 *.c 1 2...原创 2018-02-09 17:33:55 · 1331 阅读 · 0 评论 -
Linux环境下的GCC工具链详解
一、说明 GNU/Linux系统上常用的编译工具是GCC。GCC实质上不是一个单独的程序,而是多个程序的集合,因此通常称为工具链。二、程序的编译过程 从C语言源码到可执行程序一般要经过以下的处理步骤:1. 预处理 在这一阶段,源码中的所有预处理语句得到处理,例如 #include语句所包含的文件内容替换掉语句本身 所有已定义的宏被展开 根据#ifdef,#if等语句的条件是否成立取舍相...转载 2018-02-28 21:45:40 · 2265 阅读 · 0 评论 -
Linux下静态库和动态库的制作与调用小例
一,Linux支持两种类型的库1,静态库: 这类库的名字一般是libxxx.a;利用静态函数库编译成的文件比较大,因为整个函数库的所有数据都被整合进目标代码中,他的优点就显而易见了,即编译后的执行程序不需要外部的函数库支持,因为所有使用的函数都已经被编译进可执行文件了。当然这也会称为它的缺点,因为如果静态函数库改变了,那么你的程序必须重新编译,而且体积也较大。2,动态库:这类库的名字一般是libx...原创 2018-03-03 15:29:47 · 330 阅读 · 0 评论 -
uboot是用来干什么的,有什么作用?
uboot是用来干什么的,有什么作用?uboot 属于bootloader的一种,是用来引导启动内核的,它的最终目的就是,从flash中读出内核,放到内存中,启动内核所以,由上面描述的,就知道,UBOOT需要具有读写flash的能力。uboot是怎样引导启动内核的?uboot刚开始被放到flash中,板子上电后,会自动把其中的一部分代码拷到内存中执行,这部分代码负责把剩余的uboot代码拷到内存中...转载 2018-03-11 10:06:48 · 745 阅读 · 0 评论 -
公钥、私钥、数字证书的概念
公钥和私钥 一直以来对公钥和私钥都理解得不是很透彻,感觉到模棱两可。今天在网上找了半天,通过查看对这个密钥对的理解,总算弄清楚了。 公钥和私钥就是俗称的不对称加密方式,是从以前的对称加密(使用用户名与密码)方式的提高。用电子邮件的方式说明一下原理。 使用公钥与私钥的目的就是实现安全的电子邮件,必须实现如下...转载 2018-03-11 20:44:10 · 301 阅读 · 0 评论 -
用makefile分别制作动态库和静态库小例
一.使用目的 一个工程中的源文件不计其数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为 makefile就像一个Shell脚本一样,其中也可以执行操作系统的命令。 在 Linux(unix )环境下使用GNU 的make工具能够比较容易的构建一个属于你自己的工...原创 2018-03-04 12:54:29 · 658 阅读 · 0 评论 -
关于nand flash的oob区与坏块
0.NAND的操作管理方式 NAND FLASH的管理方式:以三星FLASH为例,一片Nand flash为一个设备(device),1 (Device) = xxxx (Blocks),1 (Block) = xxxx (Pages),1(Page) =528 (Bytes) = 数据块大小(512Bytes) + OOB 块大小(16Bytes,除OOB第六字节外,通常至少把OOB的前...原创 2018-03-24 22:11:30 · 5003 阅读 · 1 评论 -
Image zImage uImage的区别
Linux内核在PC上以文件的形式存在(保存成磁盘文件形式),就是所谓的“映像文件”。Linux内核映像文件最终是要烧录到目标板的flash中。Linux 内核映像文件有两种:一种是非压缩版本,叫Image;另一种是它的压缩版本,叫zImage。zImage是Image经过压缩形成的,所以它的大小比Image小。为了能使用zImage这个压缩版本,必须在它的开头加上解压缩的代码,将zImage 解...原创 2018-03-30 18:32:02 · 933 阅读 · 0 评论 -
Linux部分基本命令
1, 一条命令删除某个文件夹及其子目录下的所有隐藏文件(.和..除外);find -iname “.*” -exec rm -rf {} \;[wangtao@centos6 ~]$ lsdir[wangtao@centos6 ~]$ cd dir[wangtao@centos6 dir]$ lsc[wangtao@centos6 dir]$ ls -a. ..原创 2018-02-05 11:51:41 · 356 阅读 · 0 评论