Linux技巧篇
文章平均质量分 72
我是一个热爱Linux、热爱Yocto、喜欢编程、热爱技术的码农! 希望我的博客能帮助到哪些在茫茫黑夜中摸索的小白 欢迎关注、点赞和订阅!
fulinux
我热爱Linux、热爱Yocto、喜欢编程、热爱科学技术的码农!希望我的博客能帮助到哪些在茫茫黑夜中摸索的小白!
欢迎关注、点赞和订阅!
展开
-
C程序malloc后不memset的都不是好程序员
By: fulinuxE-mail: fulinux@sina.comBlog: https://blog.csdn.net/fulinus喜欢的盆友欢迎点赞和订阅!你的喜欢就是我写作的动力!目录C程序容易出现segment faultC程序容易出现segment fault追求完美的程序员,应当在调用malloc()分配内存后,应当在不用的时候释放掉,不能有内存泄漏。但是在一些复杂数据结构,比如链表,或者嵌套逻辑结构中使用malloc()和free()两个函数时,极容易出现段错误。如.原创 2021-01-12 16:54:17 · 1180 阅读 · 0 评论 -
pkg-config的作用
有些时候你的工程会用到第三方库,比如你会用到一个叫libxxx库,,编译和安装后,你通常会在/usr/local/lib和/usr/local/include/目录下发现有xxx/目录,但是很多时候你在代码中引用libxxx库的头文件时,声明如下:#include 你的代码写好后,你编译时会出现:fatal error: xxx.h: 没有那个文件或目录亦或者是:error: 对'xxx_read原创 2014-09-14 14:05:40 · 3521 阅读 · 0 评论 -
ssh: connect to host github.com port 22: Connection refused
如果使用git远程推送时出现如下问题:[fulinux@ubuntu learngit]$ git push -u origin master ssh: connect to host github.com port 22: Connection refusedfatal: Could not read from remote repository.Please make sure原创 2014-08-13 21:15:25 · 15619 阅读 · 0 评论 -
linux应用程序中的延时和定时器
笔记:在linux应用程序中延时有sleep()、msleep()和usleep()函数之类的延时,也有如下形式的延时: struct timeval delay; delay.tv_sec = sleepSecond; delay.tv_usec = 0; select( 0, NULL, NULL, NULL, &delay );但是基本上都是基于进程休眠的,好像原创 2014-08-11 15:09:19 · 5573 阅读 · 0 评论 -
linux小技巧(1)
1、避免目录拼写错误shopt命令:演示一下:我想进入/home目录但是不小心拼写错了:[fulinux@ubuntu ~]$ cd /hoem-bash: cd: /hoem: No such file or directory如果使用了shopt命令情况就不一样了:[fulinux@ubuntu ~]$ shopt -s cdspell[fulinux@ubuntu ~]$ cd /hoem/原创 2014-07-22 20:08:06 · 2711 阅读 · 0 评论 -
configure交叉编译
今天在交叉编译时犯了一个错误,纠结了好久,以前交叉编译器的前缀基本上都是用arm-linux-,这次换了一个新环境是arm-none-linux-gnueabi-,于是想当然的把configure中的host参数设置为--host arm-linux,于是就犯了一些错误。把它改为--host arm-none-linux-gnueabi就可以了。详细请看:http://blog.chinaunix原创 2014-07-10 15:45:54 · 5408 阅读 · 1 评论 -
makefile中的一点知识
makefile文件中下面这一部分展开是什么样的呢?。。。mytarget=foo $(mytarget): $(mytarget).c gcc -o $(mytarget) $(mytarget).cmytarget=bar。。。展开是:。。。mytarget=foofoo: foo.c gcc -o bar bar.cmytarget=bar。。。原创 2014-07-21 20:43:32 · 1772 阅读 · 0 评论 -
cannot find -lnl
问题: cannot find -lnlcollect2: error: ld returned 1 exit statusmake: *** [wpa_supplicant] 错误 1解决方法:[fulinux@ubuntu wpa_supplicant]$ sudo apt-get install libnl-dev libssl-dev原创 2014-06-09 14:50:11 · 5284 阅读 · 0 评论 -
Ubuntu安装git服务器
Ubuntu安装git服务器fulinux开发环境Ubuntu 13.10代码服务器git1、安装git和openssh[ruizhe@ubuntu ~]$ sudo apt-get install git-core openssh-server openssh-client2、管理员账户是ru原创 2014-03-24 21:44:14 · 5009 阅读 · 0 评论 -
ubuntu安装交差编译器的时候出现:make[2]: *** [doc/cpp.info]
make[2]: *** [doc/cpp.info] 错误 1make[2]: *** 正在等待未完成的任务....make: *** [/opt/buildroot-2012.08/output/toolchain/gcc-4.5.4-initial/.compiled] 错误 2如果编译交叉编译器是出现这些问题可能就是pc上的编译器和交叉编译器的gcc版本不同引起的,这时候看原创 2014-03-10 17:21:22 · 5596 阅读 · 0 评论 -
gitolite服务器搭建
如果你碰到类似这样:FATAL: R any gitolite-admin admin DENIED by fallthru(or you mis-spelled the reponame)fatal: Could not read from remote repository.或是那样的问题时,你把git目录下的.gitolite目录给删除掉,让后再按上面的操作执行一遍。原创 2014-03-13 19:13:42 · 7341 阅读 · 0 评论 -
perror函数在定位段错误或内存溢出时的神效
当你碰到这个问题是你也许*** Error in `/home/fulinux/libcanbus/test/.libs/lt-client-cycle2snd': free(): invalid next size (normal): 0x00000000022afaf0 ***======= Backtrace: =========/lib/x86_64-linux-gnu/libc.so.6原创 2014-09-11 19:46:37 · 1958 阅读 · 1 评论 -
undefined reference to rpl_malloc
问题:undefined reference to rpl_malloc解决方法:$ vim configure.ac 屏蔽:# AC_FUNC_MALLOC重新生成配置文件:$ autoreconf 执行看看:./configure --build=i686 --host=arm-none-linux-gnueabi && makeOKauthor: fulinuxE-mail: fulinux原创 2014-09-12 11:47:27 · 3111 阅读 · 0 评论 -
使用Nginx搭建rtmp流媒体服务器笔记
平台软硬件环境:PC,ubunut 16.04主要是做个记录,方便日后查询。主要是参考这篇博客:http://www.jianshu.com/p/f0bf83ca3ea3碰到的第一个问题:error: ‘OPENSSL_config’ is deprecated [-Werror=deprecated-declarations]一开始以为Ubuntu安装了openssl和libssl-dev就可以原创 2017-05-20 11:52:54 · 10840 阅读 · 2 评论 -
yocto的一些命令记录:
yocto的一些命令记录原创 2017-05-09 14:06:14 · 2320 阅读 · 1 评论 -
adb remount of system failed: Permission denied
问题:[fulinux@ubuntu rk3288-5.1]$ adb remount* daemon not running. starting it now on port 5037 ** daemon started successfully *remount of system failed: Permission deniedremount failed解决方法:[fulinux@ub原创 2015-05-11 14:21:14 · 12944 阅读 · 0 评论 -
error: Exited sync due to fetch errors
1、问题 我在使用repo sync同步代码时,运行一段时间,出现这个错误:error: Exited sync due to fetch errors,很奇怪的问题。2、分析 在网上找了一些资料,也没有找出原因。3、解决 就是很不经意之间运行了下面的指令: ssh git@10.10.10.211 再同步一下问题就解决了。 出自:http://blog.csdn.net/fulinus原创 2015-04-23 13:50:30 · 14486 阅读 · 2 评论 -
ncurses库移植
目标板:ARM (I.MX286)宿主机:ubuntu-13.10交叉编译器:arm-none-linux-gnueabi-gccncurses版本:5.9原文连接:http://blog.csdn.net/fulinusncurses库下载地址:http://ftp.gnu.org/pub/gnu/ncurses/解压:[fulinux@ubuntu ~]$ tar xzf ncurses-5.原创 2015-02-28 10:22:50 · 4174 阅读 · 2 评论 -
VM虚拟机和windows的共享设置
我们很多时候会用到samba服务器,但是有时候如果是在虚拟机中时,电脑配置等等原因,会使你你windows上操作linux上的文件时很慢,一个文件夹半天打不开。还有就是如果希望在linux系统里操作windows系统下的文档时怎么办呢?这里我向大家推荐一种简单好用的方法。原创 2013-12-07 15:20:08 · 5046 阅读 · 0 评论 -
ubuntu 13.10挂载windows共享目录
研发工作可能需要在linux和windows上操作,需要在windows编辑,在linux上交差编译,同时要确保工程的保密性,如何做呢?原创 2014-03-12 13:53:46 · 4123 阅读 · 0 评论 -
diff和patch命令
参考:https://blog.csdn.net/wh_19910525/article/details/7515540第一:如果当前目录下有linux-3.0源码目录文件和修改后的linux-3.0-s3c2440目录文件,如何生成patch文件?>>>>diff -Nuar linux-3.0 linux-3.0-fulinux > linux-3.0-s...原创 2013-03-24 15:44:32 · 2711 阅读 · 0 评论 -
如何快速安装ubuntu解决ubuntu-12.10-wubi-amd64.tar.xz不用下载
如何快速安装ubuntu解决ubuntu-12.10-wubi-amd64.tar.xz不用下载:其实很简单你将ubuntu-12.10-desktop-amd64.iso或者ubuntu-12.10-desktop-i38.iso镜像文件加压,然后将ubuntu-12.10-desktop-amd64.iso或者ubuntu-12.10-desktop-i38.iso拷贝到解压文件中原创 2013-03-16 19:46:25 · 7067 阅读 · 0 评论 -
linuxshell中"2>&1"含义
2009年09月03日 02:10 来源:ChinaUnix博客 作者:hairui8991 编辑:周荣茂 脚本是: nohup /mnt/Nand3/H2000G >/dev/null 2>&1 & 对 于& 1 更准确的说应该是文件描述符 1,而1 一般代表的就是STDOUT_FILENO,实际上这个操作就是一个du转载 2013-03-27 16:15:57 · 1912 阅读 · 0 评论 -
一个安全删除文件的shell命令
以下脚本中的函数可以安全用来删除delete xxxx该命令会将xxx文件(或目录(不要再目录后加/))移动的~/backup下面,并同时打上时间标签,通过运行delete_old会将~/backup目录下的超过3000M的最旧的文件或目录删除掉,希望数据保护还是有一定的用处# Description: This function used to move some us原创 2013-04-08 14:44:37 · 3574 阅读 · 0 评论 -
不能从nandflash启动原因之一
我在调试是怎么也不能从nandflash启动,但是能从norflash和SDRAM中启动,同时读写nandflash的功能也能实现,于是我就将nandflash全部搬到SDRAM中,结果发现nandflash中竟然只有0x40000大小的内容,我太高兴了,终于找到原因了,原因就是只有0x40000的内容被放进了nandflash,我大概知道原因所在了,我记得设置一个宏时是设置0x40000的。同时原创 2013-03-23 19:54:55 · 4705 阅读 · 0 评论 -
Makefile详解
http://zachary.42qu.com/10747257转载 2013-03-23 15:28:49 · 1423 阅读 · 0 评论 -
关于uboot配置技巧总结
uboot源码中有太多的宏,而这些宏原本是方便而定义的,可是对于那些不是很了解这些宏定义的人,被那么多宏弄得可真是头大了,经过调试发现一个很好的方法:在u-boot-2010.09/include/autoconf.mk文件显示了一切有关你配置选项,那些配置了那些没有配置都一目了然的展现在你的眼前,直接上图说话:其中y就是已配置,上面的PHYS_FLASH_1在源文件中定义的是0原创 2013-03-22 21:36:28 · 2107 阅读 · 0 评论 -
有关调试的一些技巧总结
调试占据着研发全过程的很大比重,我在调试uboot时,花了好久好久。以一个具体的例子,我想让我的uboot从nandflash启动,因为J-link不能直接将u-boot.bin文件直接烧录到nandflash中,必须在通过nandflash控制寄存器来对nandflash操作,我的uboot中就有nand erase和nand write等功能。如果我每次将uboot烧录到nandflash原创 2013-03-22 22:16:43 · 2417 阅读 · 0 评论 -
APUE书
这两周是选课试听期,还没有正式开始上课,所以有点空闲就翻了翻 UINX 环境高级编程(Advanced Programming in the UNIX Environment, 2e),看了七八章,发现这本书真的是无愧于“UNIX 编程圣经”的称号。书中对编程中可能遇到的问题讲解得非常系统和详细,尤其当看到自己以前遇到过问题的地方时,简直就有一种顿悟的感觉,就想感叹一句“哦,原来如此!”。转载 2013-04-05 20:19:51 · 1904 阅读 · 0 评论 -
源代码如何阅读
http://wenku.baidu.com/view/56270184b9d528ea81c77968.html原创 2013-03-21 22:08:11 · 1411 阅读 · 0 评论 -
ubuntu12.10安装tftp服务
1 安装root@ubuntu:/# apt-get install tftpd-hpa正在读取软件包列表... 完成正在分析软件包的依赖关系树Reading state information... 完成下列新软件包将被安装:tftpd-hpa共升级了 0 个软件包,新安装了 1 个软件包,要卸载 0 个软件包,有 0 个软件未被升级。转载 2013-04-03 16:39:34 · 1632 阅读 · 0 评论 -
ubuntu 出错:E: Sub-process /usr/bin/dpkg returned an error code (1)
这几天用ubuntu9.04,在用apt-get安装软件时出现了类似于:install-info: No dir file specified; try --help for more information.dpkg:处理 gettext (--configure)时出错: 子进程 post-installation script 返回了错误号 1 在处理时有错误发生:finduti转载 2013-04-03 16:09:26 · 3736 阅读 · 0 评论 -
AutoHotKey的配置文件
; IMPORTANT INFO ABOUT GETTING STARTED: Lines that start with a; semicolon, such as this one, are comments. They are not executed.; This script has a special filename and path because it is a原创 2013-03-31 18:28:37 · 3058 阅读 · 0 评论 -
根文件系统制作
[lingyun@localhost fulinux]$ clear[lingyun@localhost fulinux]$ mkdir rootfs[lingyun@localhost fulinux]$ cd rootfs[lingyun@localhost rootfs]$ mkdir {bin,dev,etc,lib,mnt,proc,sbin,sys,tmp,usr,var}原创 2013-03-28 13:16:48 · 2205 阅读 · 0 评论 -
64M nandflash分区示意图
这是我的64M的nandflash分区示意图涵盖的文件系统比较多,分区设置代码是在arch/arm/plat-s3c24xx/common-smdk.c:static struct mtd_partition smdk_default_nand_part[] = { [0] = { .name = "bootloader bin", .size原创 2013-03-25 16:06:47 · 3216 阅读 · 0 评论 -
xxx.c:4: fatal error: xxx.h: No such file or directory
我在交差编译的时候经常碰到类似这样的问题: xxx.c:4: fatal error: xxx.h: No such file or directory 注:这里的xxx是一个一般的表述。在Makefile文件中: INC_DIR := ./inc ../common/inc ../common/inc/mod ../common/inc/tlsdk ../encode/inc INC_DIR += $(TL_APP_MPP_PATH)/include再有就是所说的文件xxx.h不存在或者目录原创 2014-01-22 13:18:01 · 37297 阅读 · 3 评论 -
在linux中去出文件中的 ^M 字符
每一行都会有“^M”字符,怎么办呢?这是由于windows下的回车是\r\n, 而linux下的回车是\n,通常windows下的程序放在linux下用vim会遇到这种情况,这时候使用dos2unix命令对文件进行处理一下就OK了。例如:原创 2013-12-10 17:53:23 · 7853 阅读 · 0 评论 -
linux设备驱动篇之LED驱动(一)
在学习LED设备驱动期间经历的问题层出不穷,遇到的问题有以下这些:1、网上很多的LED驱动几乎都是2.6的内核版本,但是3.0内核和2.6的内核驱动编写有很多地方是不同的在2.6上能运行的设备驱动不一定能在3.0内核上运行。这对于刚刚踏入驱动大门人,急于想了解LED驱动是什么样的,他是怎么工作的,与应用程序又是如何协同工作的呢?对于我们可能第一个要去做的就是去找个例程先跑一跑,了解是怎么回事,增强一些自信和在战略上“藐视”设备驱动的气魄。先介绍一下我的工程结构如下说是,第一个是建立在后面第三个文件s3c_原创 2013-04-05 13:21:32 · 6053 阅读 · 0 评论 -
虚拟机上Redhat安装VMware Tools
1)先在VMware里安装好Linux,并保持Linux处于运行状态;2)VMware的菜单里有个Install VMware Tools...的选项,点击它;3)进到VMWare中的Linux里(用root登录),在命令行下挂载光驱:mount /dev/cdrom /mnt ;4)然后cd /mnt;5)如果/mnt下面有个VMware-tools-xxxx原创 2013-11-20 11:28:50 · 4850 阅读 · 0 评论 -
linux之flock命令
[lingyun@localhost rootfs]$ man flockFLOCK(1) H. Peter Anvin FLOCK(1)NAME flock - Manage locks from shell scriptsSYNOPSIS fl原创 2013-08-11 16:24:43 · 9683 阅读 · 0 评论