自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C++ 库管理工具 vpkg Conan CMake pip

【代码】C++ 库管理工具 vpkg Conan CMake pip。

2024-07-17 14:32:02 136

原创 vs项目生成cmake(.sln转CMakeLists.txt)

安装python环境和pip后。

2024-07-17 09:38:43 156

原创 linux下如何查看某软件是否已安装/安装位置

3、yum方法安装的,可以用yum list installed查找,如果是查找指定包,命令后加 | grep “软件名或者包名”;1、rpm包安装的,可以用rpm -qa看到,如果要查找某软件包是否安装,用 rpm -qa | grep “软件或者包的名字”。2、以deb包安装的,可以用dpkg -l能看到。如果是查找指定软件包,用dpkg -l | grep “软件或者包的名字”;4、如果是以源码包自己编译安装的,例如.tar.gz或者tar.bz2形式的,这个只能看可执行文件是否存在了,

2024-07-16 13:55:53 106

原创 Linux内核学习记录

Linux内核将不同功能的外部设备,例如Disk设备(硬盘、磁盘、NAND Flash、Nor Flash等)、输入输出设备、显示设备等等,抽象为可以通过统一的文件操作接口(open、close、read、write等)来访问。另外,内存管理会提供虚拟内存的机制,该机制可以让进程使用多于系统可用Memory的内存,不用的内存会通过文件系统保存在外部非易失存储器中,需要使用的时候,再取回到内存中。内核空间是 Linux 操作系统的主要部分,但是仅有内核的操作系统是不能完成用户任务的。

2024-07-16 13:53:30 264

原创 WARNING: Logging before InitGoogleLogging() is written to STDERR 解决办法

可能原因是在调用Glog进行信息纪录前未对Glog进行构造,Glog未能在初始化时检索到日志文件存储路径等信息。调用Glog初始化构造即可。

2024-07-16 11:13:06 206

原创 windows下使用#include <nlohmann/json.hpp>

3.修改工程属性:在Visual Studio中,打开项目属性,找到“C/C++”选项下的“附加包含目录”,将刚才拷贝的include文件夹的路径添加进去。1.下载并解压:首先,需要从nlohmann/json的GitHub仓库下载源代码,并解压得到的文件。2.拷贝头文件:解压后,会得到一个名为include的文件夹,将该文件夹下的所有文件拷贝到的工程文件夹下。

2024-07-16 10:27:14 229

原创 opencv窗口嵌入qt

opencv捕获摄像头数据并进行图像处理后,显示在qt窗口上。显示在QLabel控件cameraView上。将Mat转成QImage格式。

2024-07-15 16:44:14 64

原创 vim使用记录

粘贴:在想要粘贴的地方按下p 键【将粘贴在光标所在行的下一行】,如果想粘贴在光标所在行之前,则使用P键。如果一个文件在编辑时没有名字,则可以使用:wq 文件名称,代表把当前正在编辑的文件保存到指定的名称中,然后退出。③ 针对整个文档中的所有行进行替换,只替换每一行中满足条件的第一个结果。:s/要替换的关键词/替换后的关键词/g g=global全局替换。② 替换光标所在这一行中的所有满足条件的结果(替换多次,只能替换一行)① 只替换光标所在这一行的第一个满足条件的结果(只能替换1次)

2024-07-15 14:50:18 765

原创 一些输入输出精细操作

【代码】一些输入输出精细操作。

2024-07-11 11:00:21 114

原创 [编译报错]configure: error: cannot guess build type; you must specify one

/configure --build=arm-linux 指定架构。

2024-07-11 10:37:25 147

原创 [arm版qt编译报错]57:10: fatal error: charconv: No such file or directory #include <charconv>

gcc版本过低导致charconv: No such file or directory。

2024-07-11 10:34:43 176

原创 引用&常用用法

所做的任何修改都会反映到原始向量上。这是因为引用提供了对原始对象的间接访问。作为参数传递给函数时,实际上发生的是向量的拷贝。传递std::vector<UpdateItem> items;修饰符确保函数内不能修改传入的字符串,保护数据不被意外更改。)可以避免在函数调用时复制整个字符串,从而提高性能。:使用引用传递(尤其是对于大型数据结构,如。

2024-07-11 09:48:56 205

原创 cmake生成gdb调试

【代码】cmake生成gdb调试。

2024-07-10 15:12:15 80

原创 C++各种类型转换

string转为float。

2024-07-10 13:47:06 230

原创 C++处理json数据注意点(url传递接收json数据)

json结构(字符串类型):{"data" :"result" :],},

2024-07-10 13:16:52 280

原创 [install报错]The package code needs to be reinstalled, but I can‘t find an archive for it.

打开 /var/lib/dpkg/status 文件, 查找安装未成功的安装包,譬如搜索关键子 “half” ,将安装包相关信息删除。然后重新安装一下安装包即可。

2024-07-10 10:24:20 85

原创 CMake多版本控制

个人的理解:当我们在使用CMake这个工具的时候,系统会找到这个路径下的CMake,那么这个路径下应该就是我们原本的CMake。我们把他删除了之后,将pip安装的CMake软链接到这个路径下,这里的软链接我们可以理解为是创建了一个快捷方式。就可以安装多个CMake版本,在切换版本的时候只需要重新软链接我们需要的版本就可以了。

2024-07-09 14:51:50 250

原创 [报错]dpkg: error processing package code (--install): dependency problems - leaving unconfiguredPro

执行sudo dpkg -i code_1.90.2-1718750608_arm64.deb。出现这个错误的原因是之前安装软件的时候出现中断情况,或者你强行终止安装导致不完全的安装。

2024-07-09 08:11:38 308

原创 opoencv踩坑记录

,OpenCV 会尝试使用默认的接口来访问摄像头。在大多数情况下,这应该是足够的,但如果遇到问题,你可以尝试显式地指定。设置为cv::VideoCapture cap(device, cv::CAP_V4L2);cv::VideoCapture cap(device)画面会卡住。如果没有指定捕获接口(即直接使用。来确保使用 V4L2 接口。

2024-07-07 18:07:13 161

原创 [sqlite报错]Errors were encountered while processing: nvidia-l4t-bootloaderE: Sub-process /usr/bin/d

【代码】[sqlite报错]Errors were encountered while processing: nvidia-l4t-bootloaderE: Sub-process /usr/bin/d。

2024-07-04 13:58:57 79

原创 线程同步线程互斥

线程互斥在多线程环境中运行的代码段,需要考虑是否存在竞态条件,如果存在竞态条件,我们就说该代码段不是线程安全的,不能直接运行在多线程环境当中,对于这样的代码段,我们经常称之为临界区资源,对于临界区资源,多线程环境下需要保证它以原子操作执行,要保证临界区的原子操作,就需要用到线程间的互斥操作-锁机制,thread类库还提供了更轻量级的基于CAS操作的原子操作类。存在竞态条件的代码段(临界区代码段):代码在多线程的环境下执行,随着线程调度顺序不同,结果不同。----->原子操作。

2024-07-03 21:17:41 140

原创 GDB指令

💜d(delete) + 当前要删除断点的编号 —— 删除一个断点【不可以d + 行号】💜disable b(breakpoint) + 编号 —— 使一个断点无效【禁用断点】💜c(continue) —— 从一个断点处,直接运行至下一个断点处【VS下不断按F5】💜enable b(breakpoint) + 编号 —— 使一个断点有效【开启断点】💜enable b(breakpoints) —— 使所有断点有效【默认缺省】💜r(run) —— F5【无断点直接运行、有断点从第一个断点处开始运行】

2024-07-03 16:30:47 296

原创 sdk外部库链接问题

在使用百度云sdk过程中,遇到一个奇怪的问题,imshow调用错误,提示缺少两个依赖,但查看环境发现已经安装,检查发现,sdk中的third_partybufen的opencv2导致。我的环境本身的opencv可以正常使用,加载图像,直接用安装好的opencv库替换sdk中的opencv,报一样的错。直接删除sdk中opencv包,在cmake里find搜索ubuntu已安装的opencv,成功解决。

2024-07-03 15:43:23 77

原创 线程池111111111

2024-07-02 20:56:57 57

原创 是否设计为多线程参考(CPU密集,I/O密集)

并发,cpu单核串行I/O操作,就是将数据写入或从内存输出的过程,也指应用程序和外部设备之间的数据传递,常见的外部设备包括文件、管道、网络连接。常见IO流操作,一般指内存与磁盘间的输入输出流操作。

2024-07-02 20:41:00 288

原创 dpkg: error processing package ***(--install): dependency problems - leaving unconfigured

sudo apt install -f

2024-07-02 16:45:38 377

原创 静态库和动态库

库是一组预先编译好的方法的集合,是计算机上的一类文件,提供给使用者一些开箱即用的变量、函数或类。库文件分为静态库和,静态库和动态库的区别体现在程序的链接阶段。Linux的静态库扩展名是 .a,静态库文件名的命名规范是以 lib 为前缀,紧接着跟静态库名,扩展名为.a。例如:我们将创建的静态库名为mian,则静态库文件名就是libmain.a。动态库扩展名是 .so编译后的库文件的源代码被加密,使用者看不到,可保密。Linux库有两种,一种是静态库,其命令规则为 libxxx.a;

2024-06-27 13:41:46 181

原创 opencv报错

【代码】opencv报错。

2024-06-27 13:30:18 222

原创 bash: pip: command not found

bash: pip: command not foundpip install opencv-contrib-python-> pip3 install opencv-contrib-pythonpython3 -m pip --version pip 9.0.1 from /usr/lib/python3/dist-packages (python 3.6) python --versionPython 2.7.17

2024-06-27 11:27:22 90

原创 常用通讯协议

是指外设和计算机间,通过数据信号线、地线等,按位进行传输数据的一种通讯方式。发送数据接收数据的过程 串口控制器管理,其提供寄存器自己设置波特率,传递位数等。通用异步收发器,串行,异步。异步:收发双方时钟不同步。

2024-06-27 10:05:54 118

原创 cmake使用记录

2.预处理 ->扩展后的源文件。3.汇编 .s->.o。源代码->可执行程序。

2024-06-26 21:21:13 59

原创 gcc, g++使用记录

(3)编译可以用gcc/g++,而链接可以用g++或者gcc -lstdc++。因为gcc命令不能自动和C++程序使用的库联接,所以通常使用g++来完成联接。但在编译阶段,g++会自动调用gcc,二者等价。(1)gcc与g++都可以编译c代码与c++代码。但是:后缀为.c的,gcc把它当做C程序,而g++当做是C++程序;(2)编译阶段,g++会调用gcc,对于c++代码,两者是等价的,但是因为gcc命令不能自动和C++程序使用的库联接,所以通常用g++来完成链接。选项,默认生成的可执行文件名为。

2024-06-26 20:26:38 197

原创 linux常用指令

【代码】ubuntu常用指令。

2024-06-24 19:25:09 64

原创 apt update失败

报错:ModuleNotFoundError: No。记录一下四种解决办法。

2024-06-21 13:08:12 116

原创 VS Code快捷键记录

消除前置空格:SHIFT+TAB

2024-06-21 13:01:13 171

原创 VM虚拟机使用问题记录

遇到一个很坑的问题,前一天晚上虚拟机一切正常,第二天早上就突然打不开,怀疑是晚上系统自动更新的原因,排查后发现是.vmx文件损坏的问题。把个CONFIGURATION 和 USER DEFAULTS 之间的内容拷贝出来使用。通过新建一个虚拟机,再导入磁盘文件,避开出问题的vmx文件。去掉前面的时间前缀后拷贝到vmx里。格式打开vmvare.log。

2024-06-21 11:51:17 124

原创 虚拟机与主机复制以及共享文件问题

【代码】虚拟机与主机复制以及共享文件问题。

2024-06-21 11:16:42 158

原创 make指令报错记录

查看帖子,发现是由于使用了make install指令,权限问题,执行sudo make install解决。:执行make clean 清除上一次生成的可执行文件,再次执行make命令。

2024-06-21 11:11:19 469

原创 Qt5.14.2配置android环境

按要求下载安装对应版本的jdk,sdk,ndk。搜索qt官方文档,查看android环境需求。

2024-06-21 11:05:00 157

原创 ubuntu20.04下web网页嵌入qt,qwebengine视频无法传播的问题

但webengine有一个致命问题,没办法正常播放web端视频(可能是版权原因),看帖子编译过程漫长且极易出错,遂打算采取别的办法。一开始尝试用ubuntu18.04编译,死活不行,随后换成ubuntu20.04成功。web端视频通过channel组件调用qt端播放器,尝试了vlc,mplayer.qt内嵌浏览器,通过浏览器再去调用网页,利用浏览器播放视频。均失败,只能选择编译。

2024-06-20 18:06:35 152

Qt5.14.2 ubuntu18.04 x86编译版本(带webengine模块)

Qt5.14.2 ubuntu18.04 x86编译版本(带webengine模块)

2024-07-16

空空如也

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

TA关注的人

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