- 博客(92)
- 资源 (3)
- 收藏
- 关注
原创 python包管理
mkvirtualenv -p /home/fang/Python-3.12.7/tmp_install/bin/python3.12 venv_py312 #so,下次注意了 就这么安装,和 virtualenvwrapper 配合,太方便了。不知为何 /usr/lib/python3.8/ 和/usr/lib/python3.6/下 find . -name *tkinter*.so 都可以找到对应的库,删掉系统里面的python3.12后,本地这个可以保留,万一还想用呢,,删除也方便。
2024-11-08 14:35:17
289
原创 vscode
调试,可以先make编译好,然后点击 运行-》添加配置,弹出的编辑器里选择gdb。然后填写一下program和args字段(["arg1", "arg2"]),然后就可以添加断点后F5启动了。在调试控制台,可以 -exec 执行gdb原始命令。ubuntu下:ctrl + alt + -
2024-09-30 10:34:10
134
原创 valgrind
-tool= 最常用的选项。--log-file= 将输出的信息写入到filename.PID的文件里,PID是运行程序的进行ID。--log-file-qualifier= 取得环境变量的值来做为输出信息的文件名。--db-command= 启动调试器的命令行选项[gdb -nw %f %p]--log-fd= 输出LOG到描述符文件 [2=stderr]--log-file-exactly= 输出LOG信息到 file。
2023-04-20 13:40:59
586
原创 orangePi3 lts
到http//releases.ubuntu.com/21.04/ubuntu-21.04-desktop-amd64.iso(21.04还真不好找)下载,3.使用release的桌面版本,替换kernel+uboot的deb最后只能通过使用官方img里带的rootfs,替换编译得到的uboot和kernel。完成后去https//mirrors.tuna.tsinghua.edu.cn/help/ubuntu/替换对应版本的软件源。还不如18.04上编译的legacy。..................
2022-07-18 07:49:33
1185
原创 ESP32
在ubuntu16.04IDF开发环境参看 https://aithinker.blog.youkuaiyun.com/article/details/121565113sudo apt-get install git wget flex bison gperf python3 python3-pip python3-setuptools cmake ninja-build ccache libffi-dev libssl-dev dfu-util libusb-1.0-0Reading package lists.
2022-07-03 22:25:15
1389
原创 ubuntu16.04换源 & 包管理
换了源,出现问题了,还回去,需要执行下面几句sudo apt-get updatesudo apt-get -f installsudo apt-get upgrade
2022-05-18 22:08:30
497
1
原创 树莓派3b+学习linux内核
Step 1下载 2020-02-13-raspbian-buster.img(地址)并使用rasp Imager将其烧录到sd卡。这个版本的系统貌似默认使用kernel7.img,不放心可以在/boot/config.txt中添加kernel=kernel7.imgStep2安装必要的包sudo apt-get updatesudo apt-get install bc build-essential git unzipsudo apt-get install kernel-p..
2022-04-24 14:41:55
1509
1
转载 debugfs
在调试linux驱动的时候,可以用debugfs来调试,debugfs类似字符设备驱动一样,甚至更简单,不需要主设备号次设备号等等,只需要实现一个file_operations,然后通过debugfs_create_file就可以在debugfs中建立一个文件结点,就像字符设备驱动那样,只需要对这个文件结点进行open就可以进行read、write、ioctl,等等操作,这些操作对应到我们在驱动里为debugfs准备的file_operations。让内核支持DEBUGFS,使能宏CONFIG_DEBU
2022-04-21 22:06:16
1460
原创 arm汇编中的跳转指令
原文链接 :跟涛哥一起学嵌入式08:ARM跳转指令深度剖析 - 知乎 (zhihu.com)在ARM中,常见的跳转指令有B、BL、MOV、LDR,不同的指令,它们的使用条件、使用场合是不同。B指令B指令是ARM中最基本的跳转指令,它的使用方法如下:B label上面语句表示跳转到label的标号处去执行。B跳转指令是ARM中最简单的指令,只是单纯的跳转,而且是相对跳转。它可以跳到以当前位置PC为基址,前后32MB的地址空间范围,所以B指令只是在临近的代码块、标号之间跳转。B指令跳.
2022-02-15 11:09:23
5534
原创 vs2017 Tips
vs2017下使用 ctrl+, (ctrl+逗号)打开检索小窗口,可以实现快速跳转到项目管理的某个文件、跳转到项目中的某个symbol等功能,非常好用
2021-12-21 16:39:22
176
转载 CAVLC
在H.264标准中,CAVLC(Context-based Adaptive Variable Length Coding)被用于亮度和色度残差数据编码。在标准的码流结构中,CAVLC编码方式描述为ce(v)。如果在编码时采用CAVLC,那么尽管在DCT时是以8x8块为单位进行的,在进行CAVLC时也会强制采用4x4块为单位进行编码(请参考h.264语法结构分析中的redisual_luma部分)。在进行熵编码之前,需要把4x4块的矩阵中的元素按照一定顺序重新排列成大小为16的序列,这部分工作请参考h...
2021-11-12 21:41:34
424
原创 qemu嵌入式环境
00. 编译qemu安装依赖,主要是交叉工具链,编译uboot、kernel时用(我ubuntu主机中有一个for arm-cortex-a64的交叉编译工具链aarch64, 有一个for arm-cortex-m的交叉编译工具链, 可以在docker中安装一个 for arm-cortex-a32 的交叉编译工具链 arm-linux-guneabi-gcc)apt-get updateapt-get install vim bc build-essential gcc-arm-linu..
2021-03-13 17:23:11
657
1
原创 qemu构建嵌入式环境
编译qemu下载qemu源码(我下的是v2.8.0,原来是想下载v5.2.0,后来发现网络连接总是配置不好,v2.8.0 configure需要>pyth2.6,且<pyth3),然后#不加 --target-list 则编译支持的所有平台, --enable-debug 允许gdb qemu./configure --enable-kvm --enable-debug --prefix=/opt/qemu --target-list="arm-softmmu x86_64-sof
2021-01-20 13:38:29
1245
转载 Linux虚拟网络设备之tun/tap
在现在的云时代,到处都是虚拟机和容器,它们背后的网络管理都离不开虚拟网络设备,所以了解虚拟网络设备有利于我们更好的理解云时代的网络结构。从本篇开始,将介绍Linux下的虚拟网络设备。虚拟设备和物理设备的区别在Linux网络数据包的接收过程和数据包的发送过程这两篇文章中,介绍了数据包的收发流程,知道了Linux内核中有一个网络设备管理层,处于网络设备驱动和协议栈之间,负责衔接它们之间的数据交互。驱动不需要了解协议栈的细节,协议栈也不需要了解设备驱动的细节。对于一个网络设备来说,就像一个管道(pip
2020-11-16 17:06:55
619
原创 route命令
1)route delete:删除路由;2)route print:打印路由的Destination;3)route add:添加路由;4)route change:更改现存路由查看路由表netstat -rn # 或者使用 route -n,一样的内核 IP 路由表目标 网关 子网掩码 标志 跃点 引用 使用 接口0.0.0.0 192.168.1.1 0.0.0.0 UG...
2020-11-15 21:22:26
1769
原创 下载linux内核源码并编译替换到ubuntu中使用
uname -a 查看自己的ubuntu使用的内核版本去这里下载内核源码,https://www.kernel.org/pub/linux/kernel/。稳定起见选择和自己内核相近的版本或者直接 sudo apt-get install linux-source-4.15.0 (这里选择版本的时候选择相近的版本) 将源码下载到 /usr/src/linux-source-x.x.x/完成后解压缩源码包安装配置内核的必要软件包apt-get install libssl-dev libn...
2020-11-14 22:05:38
1046
原创 使用qtcreator创建project 或 阅读代码
基本使用qtcreator 阅读一个已有的工程:new file or project ---> import project ---> import existing project选择项目根目录,并起一个名字 xxx 。qtcreator会在那个根目录下生成四个文件 均以xxx打头xxx.configxxx.creatorxxx.filesxxx.includesqtcreator 新建一个plain c++工程new file or pr...
2020-11-07 20:40:39
1251
翻译 gstreamer1.16插件笔记
gstreamer命令行,basic tutorial(github my-demos),plugins tutorial(github my-demos),api手册 gst核心手册 file:///home/fang/gstreamer/gstreamer-1.16.2/docs/gst/html/libgstreamer.html ,base api 手册 file:///home/fang/gstreamer/gst-plugins-base-1.16.2/docs/libs/html.
2020-07-28 15:37:53
2133
原创 grep
-i 使大小写不敏感,-E 使用正则过滤, -v 反向过滤logcat -vtime | grep Hello 过滤含有Hello字串的内容,默认大小写敏感pkg-config --list-all |grep -i qt 过滤含有qt的内容, -i 使其对大小写不敏感pkg-config --list-all |grep -E "Qt|gstreamer" 过滤含有Qt或gstreamer字样的内容 -E 使用正则pkg-config --list-all |grep -i -E "gs
2020-07-24 09:55:20
188
原创 gstreamer1.16命令行学习
https://gstreamer.freedesktop.org/dev/https://gstreamer.freedesktop.org/documentation/tools/gst-launch.html?gi-language=chttps://cgit.freedesktop.org/gstreamer/gst-plugins-good/tree/tests/examples/rtp?h=0.10http://orangeamoy.com/2019/06/28/GStreamerAnd.
2020-07-02 13:58:39
1463
原创 gstreamer1.16安装
step 1:我们将gstreamer安装到默认的/usr/local/下,先直接将/usr/local/ 下的pkgconfig和lib路径 export 出来(这在安装完成gstreamer再安装相关插件的时候会用到)export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATHexport LD_LIBRARY_PATH=/usr/lib:/usr/local/lib:$LD_LIBRARY_PATHstep 2:.
2020-06-29 10:23:47
4173
3
原创 python学习--numpy
ndarray(同类型数据集合,以 0 下标开始索引元素) 内部至少包含以下内容: 一个指向数据(内存或内存映射文件中的一块数据)的指针 数据类型或 dtype,描述在数组中的元素类型(dtype 是一个类,每个支持的数据类型都是此类的一个实例) 数组形状(shape)元组 数组跨度(stride)元组,跨度可以是负数,这样会使数组在内存中后向移动,eg. o...
2019-12-25 17:31:45
204
原创 windows 下的linux环境
目的是想在 window7 环境下使用 linux的基础命令 和 git 和 anaconda 等工具。主要有以下一些选择1.git bashgit window版本自带了一套bash环境,仿真了大部分的bash命令,还提供了git2.cygwin3.vmware虚拟机,太笨拙4.docker ?没有使用过window版本,但貌似也是内嵌了一套virtual-box虚拟机...
2019-12-19 15:35:15
330
原创 python学习--基础2类
class Robot: """Represents a robot, with a name.""" #这串string可以通过 Robot.__doc__ 调到 # A class variable, counting the number of robots 这个类似类静态成员了,被整个类拥有 population = 0 def __init_...
2019-12-16 18:46:45
188
原创 mysql必知必会
sql 语句:1.数据定义类语句(DDL): create drop alter2.数据操纵类语句(DML) 增删查改 insert delete select update3.数据控制类语句(DCL) grant revoke这些语句都要以 ; 结尾 !show databases;//查看系统中都存在哪些数据库 information_sch...
2019-12-05 20:14:33
197
原创 正则表达式 检索字符串
正则表达式 Regular Expression# 正则表达式 支持的所有元字符:# . ^ $ * + ? {} [] \ | ()# . 匹配任何一个字符(而不是标点符号) 。多行模式下\n除外。单行模式下.可以匹配\n# \ 转义符,eg.想精确匹配"." 可以"\."# \b 匹配一个位置(同 ^ $),单词的开始或结束# \d 匹配任...
2019-12-03 15:22:27
4392
原创 树莓派3b+使能集成摄像头 and usb麦克风
1. 树莓派启动后,先运行"sudo raspi-config" 然后选择"Interfacing Options",在里面enable camera.2.在/etc/modules文件最后加入一行"bcm2835-v4l2",保存退出,重启。3. 重启后,可以用"vcgencmd get_camera"查看是不是识别到了摄像头。识别到的话,结果如下:supported=1 detec...
2019-11-10 20:16:01
916
原创 conda 安装 opencv (源码安装) 解决 libgtk2.0-dev问题
anaconda 安装opencv之后:出现 opencv error: (-2:Unspecified error) The function is not implemented. ...... libgtk2.0-dev and pkg-config, ..........之类的问题背景:anaconda + python + opencv 学习,conda使用默认的channel,安...
2019-11-08 08:00:47
3459
2
原创 anaconda
卸载:直接删除 ~/下载/ENTER/ (anaconda3 和.conda), 然后清除 ~/.bashrc 中conda相关的字段安装:sudo ./Anaconda3-5.2.0-Linux-x86_64.sh -u -u表示覆盖安装[]中是默认值,询问过程要求按ENTER的直接回车...不需要 init到shell安装完成配置 ~/.bashrc:expor...
2019-11-01 14:49:50
1275
转载 Cmake 教程
Cmake 教程本文记录了cmake的用法。概述cmake是什么cmake是一款优秀的工程构建工具。KDE开发者在使用了近10年autotools之后,终于决定为KDE4选择一个新的工程构建工具。特点:开放源代码 跨平台,在Linux/Unix上,生成makefile;在MacOS上生成xcode;在windows上生成MSVC的工程文件 简化编译构建过程和编译过程,工...
2019-10-25 13:51:54
371
原创 gtest测试框架
gtest测试框架,搭建参考 :https://www.linuxidc.com/Linux/2015-05/116894.htm1. gtest代码下载:https://codeload.github.com/google/googletest/tar.gz/release-1.8.02.进入 googletest-1.8.0/googletest/, 删除不需要的文件,完...
2019-07-08 16:53:16
2185
原创 双系统安装
安装ubuntu系统https://www.jianshu.com/p/ad5dc60e453dhttp://www.cnblogs.com/jpfss/p/9462792.html计算机-->管理,存储,磁盘管理(或者直接win+x 选择磁盘管理)选择一个空间比较大的盘,右键压缩卷(意思是在原来磁盘基础上压缩出来一个空闲盘)我们压缩出60G(60G看起...
2019-06-19 17:08:32
660
原创 xxd命令
xxd: 二进制显示和处理文件工具,cat: 以文本方式ASCII显示文件xxd -s 0x30 fileskip file 的前 0x30 bytes后显示file xxd -s -0x30 fileskip file 的 (size-0x30) bytes后显示file(其实就是显示file的最后 0x30 bytes) xxd -s 0x28 -l 120 -c 12 file...
2019-06-19 17:02:29
7265
转载 swig与指针
1. 概述swig可以将c/c++编写的code生成其他语言(python / js / java / c# / perl / lisp / ….)的接口,本质是一个代码生成工具.2. 安装swig install$ sudo apt-get install automake$ sudo apt-get install flex bison$ git clone https...
2019-06-19 17:00:18
1514
2
转载 gitbook
https://blog.youkuaiyun.com/lu_embedded/article/details/81100704http://gitbook.zhangjikai.com/themes.htmlhttps://www.jianshu.com/p/421cc442f06c
2019-06-19 16:50:57
378
原创 printf 可变参数封装
#define fb (fmt, …) fa(fmt, ##__VA_ARGS__) //##__VA_ARGS__就只是告诉编译器,fa可以接受可变参数,不要报错,相当于又把…传递下去了(两个#的解释请参见宋宝华《linux设备驱动程序开发详解 4.0内核》p80)Void fa(fmt, …){ xxxxx}typedef char *va_list; //v...
2019-06-19 16:49:47
1569
原创 docker hub
1. 使用 docker hub 服务器注册dockerhub帐号sudo docker login 填写用户名和密码sudo docker tag <imageID> ddddfang/ubuntu:tag ddddfang是账户的名字,所以在push之前需要将image名字改成<账户名/xxx:tag>这种形式(sudo docker rmi -...
2019-06-19 16:46:13
569
gnu arm ucosII
2014-03-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人