linux工具
jorin@zou
这个作者很懒,什么都没留下…
展开
-
unrecognized real-time signal
gdb版本:gdb-7.8.2,unrecognized real-time signal,交叉编译原创 2022-08-29 19:22:21 · 295 阅读 · 1 评论 -
mips平台交叉编译samba
1.1 下载源码https://download.samba.org/pub/samba/stable/1.2 编译我下载的是3.0.11,主要是嵌入式平台空间有限,下载过新版本,可执行程序过大配置:./configure --host=mips-linux-gnu --disable-cups --disable-iprint --target=mips-linux-gnu CC=mips-linux-uclibc-gnu-gcc编译:编译过程中出错,提示configure: error:原创 2021-05-14 17:27:31 · 358 阅读 · 0 评论 -
valgrind源码下载及交叉编译
各版本valgrind源码下载https://sourceware.org/ftp/valgrind/编译./configure CC=mips-linux-uclibc-gnu-gcc CXX=mips-linux-uclibc-gnu-g++ AR=mips-linux-uclibc-gnu-ar --host=mips-linux-uclibc-gnu --prefix=/opt/output执行把交叉编译好的程序放到/mnt/sd_card/中export VALGRIND_LIB=/m原创 2021-04-15 18:51:53 · 875 阅读 · 0 评论 -
linux系统中使用wpa_cli命令连接wifi
1.1 linux系统中使用wpa_cli命令连接wifiecho "ctrl_interface=/var/run/wpa_supplicant" > /tmp/wpa_supplicant.confecho "ap_scan=1" >> /tmp/wpa_supplicant.confwpa_supplicant -Dnl80211 -iwlan0 -c/tmp/wpa_supplicant.conf -B -P/var/run/wpa_supplicant.pid &原创 2021-03-03 22:26:02 · 775 阅读 · 1 评论 -
mount命令挂载
1.1 mount 命令挂载1.1.1 以jffs2 可读可写权限挂载mtdblock5分区到/config目录mount -t jffs2 /dev/mtdblock5 /config1.1.2 以squashfs只读权限挂载mtdblock4分区到mtd目录mount -t squashfs /dev/mtdblock4 /mnt/mtd1.1.3 把分区 mmcblk0p1挂载到目录dir (可读可写)mount /dev/mmcblk0p1 /mnt/dirumount -f -原创 2021-03-02 22:10:47 · 940 阅读 · 0 评论 -
ubuntu搭建samba服务
1.1 ubuntu搭建samba服务1.1.1 安装sambasudo apt-get install samba samba-common1.1.2 配置smb.confvim /etc/samba/smb.conf在最后添加以下[share]path=/home/zze/sambaavailable=yesbrowseable=yespublic=yeswritable=yes1.1.3 配置用户密码sudo smbpasswd -a root1.1.4 重启samb原创 2021-03-02 22:03:41 · 164 阅读 · 0 评论 -
ubuntu搭建nfs文件系统
1.1 搭建nfs文件系统1.1.1 修改nfs配置文件vim /etc/exports/root/ *(rw,sync)1.1.2 重启nfs 服务生效/etc/init.d/nfs-kernel-server restart1.1.3 挂载mount -t nfs -o nolock 192.168.1.200:/root /root192.168.1.200:/root #这个是虚拟机的ip地址/root #开发板的目录1.2 end...原创 2021-03-02 21:56:31 · 201 阅读 · 0 评论 -
gdbserver远程调试
1.1 嵌入式设备gdbserver远程调试在一些资源比较小的嵌入式设备,比如IPC设备,发生了段错误之后,无法在本地gdb,如果这个段错误比较容易复现,gdbserver此时主能发挥最大用处。1.2 例子1.2.1 目标机器运行以下命令gdbserver是通过交叉编译过的可执行程序,放到嵌入式板子上,运行以下命令./gdbserver 192.168.1.200:1234 ./程序1.2.2 开发机器运行以下命令在宿主机上执行以下命令mips-linux-uclibc-gnu-gdb原创 2021-02-28 21:39:52 · 1696 阅读 · 0 评论 -
git常用
1.1 常用的git常用总结一下git branch #查看当前分支git checkout A(分支名) #切换到分支Agit branch -a #列出当前所有分支git pull origin A #从远程拉取A分支与本地分支合并git log #查看提交log记录git branch A #创建A新分支git status #查看修改过的和新添加的文件git add #把新文件和修改的添加到暂存区git commit -m “msg” #把暂存区提交到本地仓库gi原创 2021-02-20 22:48:39 · 109 阅读 · 0 评论 -
curl&&ssl交叉编译
1.1 下载curl 库https://github.com/curl/curl/releases/tag/curl-7_58_01.2 下载opensslhttps://github.com/openssl/openssl/releases/tag/OpenSSL_1_1_0h1.3 编译openssl./configure --with-ssl=/home/project/samba//openssl-OpenSSL_1_1_0h/output/lib --prefix=$(pwd)/outp原创 2021-02-19 22:05:35 · 380 阅读 · 0 评论 -
嵌入式设备交叉编译perf性能分析工具
嵌入式设备交叉编译perf性能分析工具1.1 背景最近工作一直在做嵌入式相关的开发,主要是应用方面,随着程序的业务功能越写越复杂,加上嵌入式系统上的调试工具,少之又少,主要还是靠printf的传统调试大法,下面来整个perf分析程序的热点函数。1.2 make menuconfig 进入内核选项配置界面搜索快捷键:"/",查看perf工具在哪里进入以下目录,并开户两个内核选项按“y”选中两个内核选项。打开perf工具依赖的glibc选项下面这两步很关键,如果不对,会导致很多编译错原创 2020-07-06 15:21:29 · 2471 阅读 · 2 评论 -
交叉编译htop工具到基于mips芯片的openwrt系统
1 交叉编译htop工具到基于mips芯片的openwrt系统1.1 背景在一些嵌入式系统上,很多工具都没有,像top,想看个内存使用,进程,cpu使用率,htop有源码,所以想着把htop交叉编译到这个嵌入式设备上。1.2 下载htop源码http://hisham.hm/htop/index.php?page=downloads打开以下链接,git clone到本地即可。git clone https://github.com/hishamhm/htop1.3 git clone到本地之原创 2020-07-06 11:32:06 · 2184 阅读 · 0 评论 -
内存泄露与valgrind
1 内存1.1 内存的相关概念介绍并不是所有的虚拟内存都会分配物理内存,只有那些实际使用的虚拟内存才分配物理内存,并且分配后的物理内存,是通过内存映射来管理的。MMU内存管理单元,完成虚拟地址与物理地址之间的映射。TLBCPU访问内存页表还是不够快,加了TLB,用来缓存页表,提高物理内存访问效率。页表记录虚拟地址与物理地址的映射关系。页内存映射的最小单位,也就是页,通常是 4 KB 大小。这样,每一次内存映射,都需要关联 4 KB 或者 4KB 整数倍的内存空间。多级页表页的大小只原创 2020-07-04 09:47:09 · 377 阅读 · 0 评论 -
strace命令使用分析
strace命令介绍与用法1.1 strace概述在操作系统中,进程分为用户态进程和内核态进程,应用程序运行在用户态,内核态负责对资源包括网络,磁盘,内存等管理,用户态进程要访问这些资源时,需要通过系统调用陷入内核态,由内核来统一管理和分配。通过系统调用陷入内核态,或者应用程序运行过程中,产生的signal,都可以被strace捕获到,每个系统调用的名称,参数,返回值,调用时间通过标准错误输出或者-O选项写入到文件中,通过分析这些信息,可以在应用程序发生故障时,不用重新编译程序,就可以捕获当前进程内原创 2020-07-04 09:17:15 · 2361 阅读 · 0 评论