首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Qt概述和Linux下安装

Qt 是一个1991年由奇趣科技开发的跨平台C++图形用户界面应用程序开发框架。它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务器。Qt是面向对象的框架,使用特殊的代码生成扩展(称为元对象编译器(Meta Object Compiler, moc))以及一些宏,易于扩展,允许组件编程。2008年,奇趣科技被诺基亚公司收购,QT也因此成为诺基亚旗下的编程语言工具。2012年,Qt被Digia收购。2014年4月,跨平台集成开发环境Qt Creator 3.1.0正式发布,实现了对于iOS的完全支持,新增WinRT、Beautifier等插件,废弃了无Python接口的GDB调试支持,集成了基于Clang的C/C++代码模块,并对Android支持做出了调整,至此实现了全面支持iOS、Android、WP。

01

Qt开源作品21-日志重定向输出类

用qt开发商业程序已经十年了,陆陆续续开发过至少几十个程序,除了一些算不算项目的小工具外,大部分的程序都需要有个日志的输出功能,希望可以将程序的运行状态存储到文本文件或者数据库或者做其他处理等,qt对这个日志输出也做了很好的封装,在Qt4是qInstallMsgHandler,Qt5里边是qInstallMessageHandler,有了这个神器,只要在你的项目中所有qdebug qinfo等输出的日志信息,都会重定向接收到,网上大部分人写的demo都是接收到输出打印日志存储到文本文件,其实这就带给很多人误解,容易产生以为日志只能输出到文本文件,其实安装了日志钩子以后,拿到了所有调试打印信息,你完全可以用来存储到数据库+html有颜色区分格式的文件+网络转发输出(尤其适用于嵌入式linux无界面程序,现场不方便外接调试打印的设备)。

03

Manjaro安装配置美化记录

记录自己Manjaro18安装的一些坑,避免下次满互联网找解决方法。在此之前试过Manjaro、Ubuntu、Fedora、linux Mint系统的pac、yum、apt都用过了,所以果断选择Manjaro的包管理方式。Xfce4、Gnome、Cinnamon 和Mate桌面环境都试过了,KDE没试过,因为KDE 被抛弃了。其中呢我觉得xfce4最好,比较轻,资源占用低,但是我还是选择了Gnome,因为这个比较符合我的审美,而且现在(2019.3.31)gnome3.32已经没那么多问题了,资源占用也没那么夸张,cpu一般不会超过5%,还是在用了很多插件情况下,有两个插件一用就会超过7%: 如果是新手,安装完之后建议不要急着还原u 盘,因为后面重装的路还长,不知道一个不注意就卸载了不该卸的,然后…..

03

fcitx install 安装 解决 办法(方框)

目前在Linux下面fcitx算是最好的中文输入法了,但是安装的时候总是问题很多。 (一)     如果是Ubuntu系统,使用“sudo apt-get install im-switch fcitx”,然后“sudo im-switch -s fcitx”,如果能成功的话当然很好,但是这样做有两个问题,一是Ubuntu源上的fcitx的版本很老,二是这样做未必就可行,因为有时候安装之后 在执行上面第二条命令的时候系统提示“update-alternatives: Cannot find alternative `/etc/X11/xinit/xinput.d/fcitx’.”,而这时候查看该文件夹,发现fcitx文件确实是存在的。     第二种方法也是通用的方法,到fcitx官方网站下载源码包,然后编译安装,这种情况通常会遇到一个问题,就是在make的时候说找不到 X11/xpm.h,这是因为有个组件没有安装,使用“sudo apt-get install xlibs-dev”就可以了。     当然在它的网站上也有编译好的安装文件的包,用它安装也行,如果可以的话。     第四种方法是下载fcitx的deb包然后使用它安装。     以上第一和第四种方法只能用于Ubuntu和Debian,第二和第三种在所有的Linux系统中均可行。 (二)     我在使用上述四种方法的时候都会遇到提示“update-alternatives: Cannot find alternative `/etc/X11/xinit/xinput.d/fcitx’.”,只好使用以下办法:     前提是上面四种办法都会遇到这种情况,而且/etc/X11/xinit/xinput.d/中fcitx文件确实是存在的。那么:     修改/etc/X11/Xsession.d/95xinput(如果没有就新建):

02
领券