为了方便跨平台使用,Qt提供了一个资源系统。资源系统用于将程序运行时所需要的资源以二进制的形式存储于可执行文件内部。也就是把资源文件编译成为可执行文件的一部分。这样就不怕路径问题以及资源文件被误删。...在这里先分享一个免费获取图标的网站:https://www.iconfinder.com/ 好了,下面来演示如何创建资源文件。 首先,打开文件菜单,选择新建一个项目或者文件,选择下图所示的资源文件。...别名的作用是我们如果修改了资源文件的文件名,但是我们使用别名来引用资源文件,那么将不会造成错误。用别名可以保证你即使修改了文件名,也不会出错。 资源文件添加好以后,我们就可以使用资源文件了。...parent) : QMainWindow(parent) , ui(new Ui::MainWindow) { ui->setupUi(this); //设置图标,使用资源文件...实际上资源文件会被编译成为cpp文件的。可以在项目下看的,确实是会被编译成为二进制文件的。 ? 当然了ui文件也会被编译成为cpp文件,如下所示: ? 关于资源文件,就介绍这么多了。
对单个文件打patch old.txt为原文件,new.txt 为已修改后的文件,现在要做的是:制作patch,更新old.txt文件 (1)查看文件内容 [wln@localhost 02] cat...-a 将所有文件都当做文本文件 -u 选项以统一格式创建补丁文件,这种格式比缺省格式更紧凑些 -r 是一个递归选项,设置了这个选项,diff会将两个不同版本源代码目录中的所有对应文件全部都进行一次比较...2345 [wln@localhost patch] cat new/a/b/foo.txt new_line_1 new_line_2 [wln@localhost patch] 为什么要进入到old/下执行...假如没有新文件生成,可以直接在制作patch的当前路径下执行patch (4)打好patch,发现有问题,想返回,则执行-R [wln@localhost patch] cd old/ [wln@localhost.../a.patch patching file a/a.txt patching file a/b/foo.txt 参考: (1)摘录:linux下打patch方法 http://blog.csdn.net
遇到的问题是几台游戏服务器,有一台新的服务器之前已经copy(Linux的scp命令)过文件上去,但在测试的过程中发现还是图片无法正常不显示出来,然后用httpwatch去分析请求的资源,发现有一个图片请求的地址是...为了不至于再copy一次,就需要使用文件同步的管理软件了,同事推荐了linux下的rsync,小试了一下,还是很不错的。...’目标路径 第一次用的时候,我在源服务器(即上面所指的服务器A)中的文件目录没有加/导致后来直接把那个目录copy过来了,而不是它目录下的所有文件 关于rsync 这个命令的一些参数,英文好点就自己直接使用...参考了: rsync参数详解 rsync 使用说明 使用之前需要先安装rsync,这个直接自行搜索吧.....-b, --backup 创建备份,也就是对于目的已经存在有同样的文件名时,将老的文件重新命名为~filename。可以使用--suffix选项来指定不同的备份文件前缀。
Qt是面向对象的框架,使用特殊的代码生成扩展(称为元对象编译器(Meta Object Compiler, moc))以及一些宏,易于扩展,允许组件编程。...安装 下载 Qt的安装包需要从他的下载链接上下载(从官网直接来的话要回答写奇怪的问题,大概就是扯什么开源啊版权的问题,不会答的还下不了0.0) 运行安装程序 下载下的程序没有执行权限,我们得帮他加一下,...最后选择路径,选择安装文件,等他自己跑好就行了。安装下来的就是一个Qt的集成开发环境。...myths@myths-X450LD:~/Download$ sudo chmod +x qt-unified-linux-x64-2.0.2-2-online.run myths@myths-X450LD.../qt-unified-linux-x64-2.0.2-2-online.run 路径 一般都帮我们弄好了Desktop 文件,这里不去管他,想看的话用locate 命令。
上一篇文章 Linux下使用ssh密钥实现无交互备份 这篇来说说如何安全的备份,还有一点不同的是上一篇是备份服务器拉取数据,这里要讲的是主服务器如何推送数据实现备份。...一、备份服务器配置rsync文件 vi /etc/rsyncd.conf #工作中指定用户(可以不指定为0) uid = 0 gid = 0 #相当于黑洞.出错定位 use chroot = no #有多少个客户端同时传文件...max connections = 200 #超时时间 timeout = 300 #进程号文件 pid file = /var/run/rsyncd.pid #日志文件 lock file = /var.../run/rsync.lock #日志文件 log file = /var/log/rsyncd.log #模块开始 #模块名称随便起(可以是多个) [backup] #需要备份的目录 path = /...本地控制真正可写) read only = false #这里设置IP或让不让同步 list = false #指定允许的网段 hosts allow = 192.168.1.0/24 #拒绝链接的地址,一下表示没有拒绝的链接
Vim 是一种流行的、功能丰富的和高度可扩展的 Linux 文本编辑器,它的一个特殊功能便是支持用带密码各种的加密方法来加密文本文件。...本文中,我们将向你介绍一种简单的 Vim 使用技巧:在 Linux 中使用 Vim 对文件进行密码保护。我们将向你展示如何让一个文件在它创建的时侯以及为了修改目的而被打开了之后获得安全防护。...一旦你运行下面的 vim 命令,你会被提示输入一个密钥: $ vim -x file.txt 警告:正在使用弱加密方法;参见 :help 'cm' 输入加密密钥:******* 再次输入相同密钥:...下次你想打开它编辑一下,你就必须像这样去输入密钥: $ vim file.txt 需要 "file.txt" 的加密密钥 警告:正在使用弱加密方法;参见 :help 'cm' 输入密钥:******...文章中我们介绍了怎么通过 Linux 下的 Vim 文本编辑器来给一个文件做加密防护。 永远记住要用强加密方式及密码来适当的保护那些可能包含了诸如用户名及密码、财务账户信息等机密信息的文本文件。
使用gdb调试core文件,可以帮助我们快速定位程序出现段错误的位置。当然,可执行程序编译时应加上-g编译选项,生成调试信息。...2.控制core文件是否生成 (1)使用ulimit -c命令可查看core文件的生成开关。若结果为0,则表示关闭了此功能,不会生成core文件。...(3)使用ulimit -c unlimited,则表示core文件的大小不受限制。...一般情况下,无需修改,按照默认的方式即可。 4.gdb调试core文件的步骤 使用gdb调试core文件来查找程序中出现段错误的位置时,要注意的是可执行程序在编译的时候需要加上-g编译命令选项。...5.其它查找段错误位置的方法 可以使用gdb进行单步调试,来查找段错误出错的位置。gdb的用例具体见: Linux下gdb用法简单介绍。
Linux下使用inotify监控文件变化是一个好用的办法,如何配置inotify,网上有很多教程,这里就不说了。...问题发生在自己下载编译inotify后,运行时报错,找不到 libinotifytools.so.0 ,运行ldd命令结果如下: ldd /usr/local/bin/inotifywait linux-vdso.so...libinotifytools.so.0 => not found libc.so.6 => /lib64/libc.so.6 (0x00007fd66fe52000) /lib64/ld-linux-x86...ldd /usr/local/bin/inotifywait linux-vdso.so.1 => (0x00007fff48fb9000) libinotifytools.so....0 (0x00007fb1a08a1000) libc.so.6 => /lib64/libc.so.6 (0x00007fb1a0543000) /lib64/ld-linux-x86
先导 本文用于在qt中使用配置文件进行一些配置的保存 方法 关键点就是使用qt的一个类QSettings,该类提供一系列接口用于配置文件的操作如读取和写入,支持的配置文件格式有ini、conf...使用该类在软件启动时进行初始化操作对一些软件的配置进行赋值操作,可以使得上一次保存的配置可以继续使用,增加程序使用的便捷性。...value则是写入进配置文件的对应配置项的值,类型是QVarant,直接写入值可以自动转换类型 一些错误 中文乱码 中文乱码是因为没有对配置文件的编码做配置而于系统使用编码不匹配导致的,基本解决方案是将配置文件使用一个比较统一的编码格式...,因为我个人会跨平台使用代码,所以我会把配置文件的编码统一保存为utf-8的格式。...注意:使用该方法需要包含头文件#include ,否则无法使用QTextCodec的静态方法,并且注意配置文件的编码格式和设置的编码格式匹配。
rm是我们在Linux下删除文件经常用到的命令,但是有时候我们目录下有很多个文件想要删除,偏偏却要保留其中1个或几个文件,那怎么办呢?...很多新手朋友可能会采取一个一个文件删除的方法来操作,但是如果文件很多呢?删到啥时候啊~~ 今天我们就来教大家使用rm命令删除文件的时候如何排除指定的文件(不删除指定文件)。...首先我们来看一下平时我们是怎么使用rm命令的。...1、删除单个文件 rm 1.txt 2、强制删除文件,无需确认 rm -rf 1.txt 3、删除文件夹 rm -rf mydir 4、删除目录下全部文件,包括文件夹 rm -rf * 5、删除全部文件...(1.txt) 正常情况下是全部文件被删除了,只留下了1.txt,但是有时候我们的系统没配置好,可能会报错,例如下面这种: root@abc:/home/# rm -rf !
pubspec.yaml 配置文件中配置 ; 将 flutter 节点下的 assets 节点的注释打开 , 即删除前面的 # 注释符号 ; 然后在 flutter 项目根目录创建 images...目录 , 将图片 hunter.png 拷贝到该 images 目录中 ; 并在 pubspec.yaml 配置文件的 assets 节点下配置 - images/hunter.png 信息 ; #...; 下图展示了资源文件目录结构以及配置文件中的配置信息 ; 导入资源图片样式 : 二、Flutter 使用资源图片 ---- Image 组件中使用资源图片 , 在其 image 字段使用 AssetImage...ResourcePage> { @override Widget build(BuildContext context) { return MaterialApp( title: "资源文件使用...ThemeData(primarySwatch: Colors.blue), home: Scaffold( appBar: AppBar( title: Text("资源文件使用
一、环境介绍 操作系统: win10 64位 QT版本: QT5.12.6 编译器: MinGW 32 、 MSVC2017 (x86) 二、捕获异常、弹窗提示用户 2.1 main.cpp代码...QMessageBox> #include #include /* 工程: debug_test 日期: 2021-03-19 作者: DS小龙哥 环境: win10 QT5.12.6...QMessageBox> #include #include /* 工程: debug_test 日期: 2021-03-19 作者: DS小龙哥 环境: win10 QT5.12.6...LIBS += -lDbgHelp 3.3 运行效果 四、Release版本生成PDB文件 程序出现问题之后,为了方便复现问题、需要有pdb文件。...qtcreate默认是不生成pdb文件。需要在pro工程文件里加入以下代码。
首选预览一下最终实现的效果,如下图: 一、服务器端 1、widget.h #ifndef WIDGET_H #define WIDGET_H #include #include... QString fileName; //文件名称 quint64 fileSize; //文件大小 quint64 sendSize; //已经发送文件大小 QTimer...() { QString filePath = QFileDialog::getOpenFileName(this,"选择文件","../"); //如果选择文件路径无效则提示 ...void Widget::on_buttonSend_clicked() { //先发送文件头信息 文件名##文件大小 QString head = QString("%1##%2"... QString fileName; //文件名称 quint64 fileSize; //文件大小 quint64 reciveSize; //已经接收文件大小
上上篇介绍了Linux文件管理的上部分内容,这次继续将 Linux文件管理的剩余部分说完。内容如下。...: 统计文件的字节数(注意包括 空格,回车,换行) wc -c linux.txt 扩展: wc 选项 文件的名称,可以统计一个文件的信息,实际情况下,选项还可以一起使用 案例4 : 统计一个文件的总行数...功能:当我们查找一个文件时,必须使用的一个命令。...注:实际工作时,尽量减少全盘检索,因为全盘搜索比较消耗资源 扩展:find实现模糊查询(必须结合通配符) 案例3:搜索 /var/log目录下的所有的以".log"结尾的文件信息 find /var/log.../统计,则这时候需要使用到的输出重定向技术。
linuxdeployqt 简介 基于Windows-Qt 发布的打包工具windeployqt,主要打包Qt相关依赖库,但是在linux,qt官方并未发布对应的打包版本。...看一下Windows命令。...on Linux..../Qt5.9.5/gcc/bin/linuxdeployqt 注意事项 生成文件: AppRun default.desktop default.png description-pak doc...doc-pak lib Makefile plugins qt.conf RdpClient translations 实际使用过程中: platforms 与 plugins 应该位于同级目录
一、环境介绍 操作系统环境: ubuntu18.04 64位 QT版本: 5.12 二、打包发布的过程 1. 先使用Release 编译QT程序 2....ldd命令使用方法示例: wbyq@wbyq:~/qt_code$ ldd build-ffmpeg_code-Desktop_Qt_5_12_6_GCC_64bit-Release/ffmpeg_code...为了发布过程不出现各种BUG,找不到库、找不到平台等等一系列问题,现在使用一个笨办法。 将QT使用的编译器目录下的所有库拷贝到camera_linux_app目录下,有覆盖的就不管。...将QT使用的编译器目录下的plugins文件夹拷贝到camera_linux_app目录下。 (5). 在camera_linux_app目录下编写一个app启动脚本。...接下来就可以将这个打包的文件拷贝到其他没有QT环境的电脑上解压运行了。 运行的时候,执行(camera_linux_app)目录下的脚本文件(ffmpeg_code.sh)即可。
linux下编译qt5.6.0静态库 编译QT是一件比较麻烦的事情。所以如果没有必要,就不要编译了。如果你只需要使用QT的一些基本功能,那么就只编译源码目录下的qtbase目录下的东西即可。...下面所介绍的都只是在linux下适用的(windows下使用MinGW也可以,QT提供的MinGW安装包是32位的,需要64位的可以参考)。...提供一个我已经编译好的了 linux下64位gcc编译 http://pan.baidu.com/s/1eRMnf26 提取密码 iz39 windows下64位mingw...-static 创建并使用QT静态库 -no-largefile 禁用大文件支持 + -largefile 启用QT访问大于4 GB的文件功能 -no-accessibility 不编译的可访问性支持...* -no-system-proxies 默认情况下,不使用系统网络代理 -system-proxies 默认情况下,使用系统网络代理 -no-warnings-are-errors Make 时把
linux下有时需要查询某个文件被哪些进程调用,或者某个进程打开了哪些文件,今天介绍两个命令。...权限类型有一下几种: c——代表当前目录 e——将此文件作为程序的可执行对象使用 f——打开的文件,默认不显示 F——打开的文件,用于写操作,默认不显示...r——根目录 m——映射文件或者共享库 s——将此文件作为共享库 fuser命令常用选项: -a 显示所有命令行中指定的文件,默认情况下被访问的文件才会被显示。...0 2 lsof 列出当前系统打开文件 在linux环境下,任何事物都以文件的形式存在,通过文件不仅可以访问常规数据,还可以访问网络连接和硬件。...解释一下输出的每列的意义: COMMAND:进程的名称 PID:进程标识符 USER:进程所有者 FD:文件描述符,应用程序通过文件描述符识别该文件。
一.简单介绍什么是core文件以及他的作用 在linux编写的C/C++可执行程序往往会出现如下图的错误,一个core dumped。...由于刚开始对linux的认识不足,就忽略了这样一个重要的调试信息。...随着学习的深入,其实core文件在linux下是一种ELF格式的文件,有关于什么是ELF格式大家可以自行查阅相关的内容。 实际上core文件就是可执行文件执行时的映像,也可以叫做内存的快照。...二.如何保存core文件。 在linux下,默认的情况是core dumped并不产生core文件,因为此项功能默认是被关闭。使用ulimit -c命令可以查看是否启动core文件。...core文件,小于等于时可以产生core文件 综上,只需要使用ulimit -c unlimited就可打开core文件了,注意需要在root用户下执行此命令,否则权限不足执行失败。
领取专属 10元无门槛券
手把手带您无忧上云