Linux Qt开发
yanzi1225627
南无飒哆喃。三藐三菩陀。俱胝喃。怛侄他。唵。折戾主戾。准提娑婆哈。南无阿弥陀佛。
展开
-
Fedora14(linux)下qt配置OpenCV、测试代码 及qt无法启动终端模拟器'xterm' 的解决方案
Fedora14(linux)下qt配置Openv:1,gedit /usr/share/qt4/mkspecs/default/qmake.conf在文件内添加了下面两句:QMAKE_INCDIR = /usr/include/opencv QMAKE_LIBS = -lcvaux -lcv -lcxcore -lhighgui -lml2,在项目文件的.pro文件内添加:INCLUDEPATH原创 2012-08-01 16:00:13 · 4767 阅读 · 0 评论 -
Qt安装后要做的第一件事------Qt自动补全代码快捷键和输入法切换快捷键 的冲突解决 (附:fedora下查询 删除软件命令)
遥想当年初接触qt,只要能要就心满意足了。随着不断学习,发现了越来越多的问题。在linux环境下,qt自动补全代码的快捷键是ctrl+space,而输入法的切换启动快捷键也是如此,这就冲突了!导致qt,准确说QtCreator自动补全代码、提示功能有时用不了,输入法的权限貌似是高于应用软件的快捷键权限,也可能是我安装顺序问题。 不管了,总之要解决。我输入法是fcitx,本想修改它的启动快捷键,弄了原创 2012-08-02 10:11:50 · 8717 阅读 · 2 评论 -
Fedora14 基于Qt的UDP传输文字聊天小软件实现 (Qt查询本地Ip、Qt本地时间显示、传输中文汉字实现、Qt的textedit自动滚屏实现、给QPushButton设键盘快捷实现)---续上
先上一张最后运行结果图,顺便说下开发环境:fedora14+qt4.8.1.界面的搭建是用designer画的,以前还没用过,都用程序写界面发现吃力不讨好,用designer画的效果和程序写时完全等价的。他会自动生成一个类似android下的xml布局文件,并且自动关联槽函数,不用白不用,哈哈!基类为widget。先交代几个重要变量:192.168.2.211 对应变量原创 2012-08-03 21:01:01 · 13486 阅读 · 7 评论 -
基于qt的udp聊天发送信息 有四处要设置自动滚屏 --------------- 续上
上次写博客,我说有两处设置自动滚屏,但经过实际和板子通讯发现,还应有两处自动滚屏。总结如下:第一处滚屏:receive()槽函数的开始,也就是显示text之前,要自动滚屏下。防止用户在上一时刻将鼠标停留在他处,在显示之前,要把可插入位置,通过自动滚屏移到文本的末尾第二处滚屏:receive槽函数显示text文本之后,为了防止显示一半文本,另外一部分不可见,这显然是我们不希望看到的第三处原创 2012-08-05 18:40:48 · 5190 阅读 · 0 评论 -
fedora14 基于Qt的TCP发送文本信息 聊天室 开发记录
TCP协议部分,还真让我迷糊了好大一会。原因是刚弄完UDP,UDP的本地端和远程端代码是完全一样的。只是初始化在构造函数里,绑定的本地Ip地址不同,这点有函数getIp()自动完成。因此本地和远程完全一样。但Tcp部分不是这样,我这里总结一下(本人水平很低级的,属菜鸟未入门级。总结下只是防自己忘):一,服务器端: 整个工作流程是:如下图: 程序的核心部分在原创 2012-08-07 10:56:43 · 5352 阅读 · 5 评论 -
基于qt的嵌入式平台输入法:SYSZUXpinyin移植到arm后,UDP接收端中文乱码 本地中文乱码 解决
SYSZUXpinyin输入法完全是用qt搭建的,移植到arm平台后,可以弹出软键盘,本人已成功。移植过程可以参考http://blog.chinaunix.net/uid-24219701-id-3077611.html这里,等有时间洒家写个移植的小细节。这里主要讲,移植后整个程序的文本、字符编码方式怎么调整才能避免乱码。 我的环境是在Fedora14下,默认的编码方式是UTF原创 2012-08-10 21:19:53 · 10178 阅读 · 14 评论 -
SYSZUXpinyin 只能用到arm上, x86下用不了
SYSZUXpinyin 只能用到arm上, x86下用不了。原因是SYSZUXpinyin的实现,用到了一个QWSinputMethod的类,这个类是arm平台的qt库所特有的。还记得我们在终端里启用qt程序后面要加个-qws参数,原因就在这。 所以,用SYSZUXpinyin在arm平台尽管移植成功,但pc机上跑不了,增加了调试的复杂性。希望以后SYSZUXpinyin能考原创 2012-08-10 21:52:58 · 2884 阅读 · 6 评论 -
Qt+OpenCV移植到arm上采集摄像头视频 请注意
一般都是在PC上跑的通,但在arm就不行。到arm上直接段错误。参见我以前的帖子http://www.oschina.net/question/256295_51872。原因就是出在CvCapture* pCapture = cvCreateCameraCapture(-1);这句话上,一执行到这里就会报Segmentation fault 。非常恼人,我当时请教了很多人也没有答案,最后不了了原创 2012-11-23 11:09:07 · 16939 阅读 · 101 评论 -
移植OpenCv2.1到arm6410(一)linux下tar.gz、tar、bz2、zip等解压缩、压缩命令小结
首先是安装cmake,安装过程详见我的系列帖子:http://bbs.witech.com.cn/viewthread.php?tid=14486&pid=95708&page=2&extra=#pid95708此后,我的问题将都汇总到博客里。下载到的opencv压缩包是.tar.bz2形式,解压命令是tar -xfj 。。。-C 。。。具体请见:Linux下最常用的打包程序就是ta原创 2012-04-26 10:09:21 · 2773 阅读 · 0 评论 -
Opencv2.1 移植 arm6410
配置环境: 虚拟机+ubuntu11.10+Cmake 2.8.4参考文章:http://blog.csdn.net/noodies/article/details/5798434http://blog.csdn.net/sun_x_t/article/details/7261944我原本安装的是CMake2.8.2,但找不到这个版本的for linux版本。无奈换成CMake2.原创 2012-04-26 15:09:10 · 3299 阅读 · 0 评论 -
如何通过超级终端 利用串口实现arm板子和pc互相发送文件???
一,从pc往板子上发:板子终端:rz, 然后右键发送即可!发送到板子终端用户所在的当前目录!二,将板子上东西发给PC:鼠标点右键,接收文件!然后板子终端:sz 。。。。(发送内容的绝对路径)。可以这样记忆,接收方先动作!修正下:从板子给pc发东西,只需要在超级终端里切换到文件所在的目录,然后sz 那个接收文件对话框会自动弹出来。原创 2012-07-18 15:26:28 · 6158 阅读 · 2 评论 -
Fedora14 源码安装qt4.7.0 PC版 和 arm版 过程 及问题解决
以前在pc上安装qt4.8.0是用qt sdk安装的,直接把qt4.8.0library 以及qt Creator等全安装好了。这次项目需要是用qt4.7.0版本,因此只好重新安装了,由于使用的是fedora14,比ubuntu11.10上麻烦不少,原因是ubuntu用户多,一个问题一搜就能得到解决方法,Fedora上可能少些,但还是有的。 安装qt4.7.0(这里单纯指的qt4.7.0原创 2012-07-17 20:53:06 · 3997 阅读 · 0 评论 -
Qt开发:Qt+OpenCV在(Linux平台)PC上采集摄像头视频(源码奉送)
摄像头型号是环宇飞扬,普通的usb摄像头。运行环境是在linux上的,Opencv版本是2.1的。如果是windows下的qt开发环境,要么改下配置,要么照着源码写一下。在linux上运行是没有任何问题。.pro文件的源码:#-------------------------------------------------## Project created by QtCreator 20原创 2013-04-08 11:18:15 · 14847 阅读 · 2 评论 -
x86下 linux qt检测U盘插拔(一)------- HAL 与UDISKS
利用qt检测U盘插拔,思路有用qt的qdbus,dbus接收HAL的消息,或者是接收udisks的消息,这两种方法在x86平台上是可行的,但到板子里就不行。板子里不一定有HAL的,而HAL往板子里移植网上么有半点资料。udisk也没有移植的资料。更要命的是,不管hal也好udisks也好,他们得到的消息都是udev发过来的。而udev需要sysfs文件系统的支持,但现在arm板子上大多数都是yaf原创 2012-08-21 10:48:01 · 8117 阅读 · 12 评论 -
Qt开发:UDP、TCP发送文字消息、检测U盘插拔、SYSZUXpinyin软键盘输入法移植------[源码奉送]
开发环境为Linux+Qt, 功能是实现tcp 、udp发送消息,检测U盘插拔、同时在arm端移植syszuxpinyin软键盘出入法。下面是我当时的工作总结。下面是效果图:关于tcp、udp: 工作状况和总结 工作状况:1, 调通了Qt下的TCP通信模块,并在板子上测试通过,A8开发板与PC通信良好,发送中文无乱码。2, 将TCP模块和UDP模块整合到一起,做到一个GUI界面里。由于TCP原创 2013-04-08 15:55:13 · 7475 阅读 · 6 评论 -
opencv2.0移植完后使用中cxtypes.h出现warning: incompatible implicit declaration of built-in function 'lrint‘解决
前提:opencv已经编译安装好了arm版本。这里指的是在pc机上,arm-linux-gcc test.c -o test ....................出现的一个bug提示如下:In file included from /usr/local/arm/opencv/include/opencv/cxcore.h:70, from t原创 2012-05-02 11:02:35 · 3019 阅读 · 0 评论 -
QT-everywhere-opensource-src-4.8.0 移植arm飞凌6410 过程记录(ubuntu11.10+arm-linux-gcc-4.3.2)
此次记录的是我移植的心酸历程!原帖在http://bbs.witech.com.cn/thread-14486-1-1.html,今将其贴到自己的博客里。我现在在ubuntu11.10上,已经把qt-everywhere-opensource-src-4.8.1.tar编译好了,目录在/usr/local/arm/qt-embeded-arm-4.8.0,在相应的arm6410Ok板子上也建了原创 2012-05-09 11:07:03 · 6125 阅读 · 4 评论 -
dbus移植Qt : error while loading shared libraries: libdbus-1.so.3 解决
Qt用个dbus模块可真是不容易。按照前文,已经编译好了带dbus的qt的lib。为了编译这个qt我们先安了dbus-1.0.2. 在pc上交叉编译我们的Qt程序,生成.pro文件后,记得一定要加QT +=dbus。因为dbus是个可选模块,不加的话Qt会找不到。但是其他模块,如QT += core gui QT += network ,这些则不用加也不会原创 2012-08-13 10:27:41 · 8432 阅读 · 0 评论 -
dbus/Qt移植arm:No such signal ::DeviceAdded(QString) 和 system_bus_socket不存在 解决
qt利用dbus检测U盘程序交叉编译无误后,拷贝到板子里,运行报错:"?????????QDBusInterface?" "Failed to connect to socket /usr/local/arm/dbus-1.0.2/var/run/dbus/system_bus_socket: No such file or directory"Object::connect: No原创 2012-08-13 15:23:16 · 7946 阅读 · 10 评论 -
Linux+QT+OpenCv摄像头调试心得(3)---- glibc detected *** free(): invalid pointer: 0xafeff000
摄像头预览正常,在点击“退出按钮”,或者关闭运行窗体后,下面的编译器输出栏弹出一堆警告,如下:*** glibc detected *** /home/yan/qt/Camera_Read_OpenCv_V1-build-desktop-Desktop_Qt_4_8_0_for_GCC__Qt_SDK____/Camera_Read_OpenCv_V1: free(): invalid poi原创 2012-04-12 15:33:48 · 5904 阅读 · 0 评论 -
opencv2.0 源码安装 for x86 make出现error: 'ptrdiff_t' does not name a type 解决
make的时候出现error: 'ptrdiff_t' does not name a type造成编译错误,具体原因是没有加一个命名空间。具体可以见:http://web.archiveorange.com/archive/v/b6fbFdu0fh9uQC9aVdpF,只要在cxcore.hpp的命名空间地方加入include目录下的cxcore.hpp(一定看准名字,可不是src目录下)的位置原创 2012-05-02 22:14:45 · 6594 阅读 · 2 评论 -
v4l2驱动摄像头 出现错误UINT64_C' was not declared in this scope 解决
编译时报错如下:/usr/include/libavutil/common.h:168: 错误:'UINT64_C' was not declared in this scope解决:在common.h里面添加#ifndef UINT64_C#define UINT64_C(value)__CONCAT(value,ULL)#endif视图如下:原创 2012-05-08 09:10:33 · 5693 阅读 · 2 评论 -
v4l2采集视频,opencv处理帧数据第一难关:qt的QImage转换为opencv的IplImage 函数代码实现
很多时候要用v4l2采集视频帧数据,当点击按钮触发时,保存其中的一帧数据,然后用opencv进行处理。那么就需要将QImage转为IplImage了,我封装了一个简易函数,可以实现此功能,第一个参数是你的QImage数据帧,是指针类型的;第二个数据是你的IplImage帧数据,要注意调用此函数前要cvCreateImage(cvSize(qimage->width,qimage->height原创 2012-05-08 15:51:08 · 8025 阅读 · 0 评论 -
关于Qt移植后环境变量的设置 qt移植到arm中文显示问题解决 实现pc与tiny210 arm开发板 udp通信(续上)
1,Qt编译arm版本后,里面有很多歌文件夹。其实只需要将里面的lib文件夹拷贝到板子上就行了。有文章说要把plugin文件夹也一并拷过去。我没拷,也没发现问题。拷贝时先将lib文件夹tar压缩后,然后U盘拷过去,利用超级终端操作解压到对等目录。然后要设置环境变量:export QTDIR=/usr/local/arm/arm-qt-4.8.1export LD_LIBRARY_P原创 2012-08-06 09:04:14 · 8144 阅读 · 9 评论 -
交叉编译dbus模块到Qt 遇到的错误及解决
由于用qt来检测U盘插拔,要用dbus。pc调试通过后,发现到板子里没有dbus。原来默认情况下,编译arm版本qt时是不带dbus的,因此要重新交叉编译qt。我的配置:./configure -prefix /usr/local/arm/arm2-qt-4.8.1 -opensource -embedded arm -xplatform qws/linux-arm-g++ -no-we原创 2012-08-11 18:23:04 · 12424 阅读 · 5 评论 -
dbus_get_version was not declared in this scope 移植dbus,Qt4.8.1源码中的bug:---- 续上
接上篇,开始make,原以为不会有啥问题,因为以前不带dbus用qt4.8.1交叉编译过好多次,出现的问题都一一解决了。谁知make的时候出现错误:In file included from qdbusconnection_p.h:70:0, from qdbusconnection.cpp:52:qdbus_symbols_p.h: In functi原创 2012-08-11 19:49:01 · 3304 阅读 · 1 评论 -
U盘在linux上的工作过程,插拔,插入,响应
原文:http://1no1.blog.sohu.com/213402207.htmlU盘的热拔插/自动挂载跟linux2.6 kernel、 udev、 hal、 dbus 、gnome-mount 、thunar的关系插入新设备后, kernel 发现设备变化反应到 sysfs 上并通知 udev, udev 把硬件相关内容送给 hal, hal 过滤、处理之后发送信息到转载 2012-08-15 10:13:40 · 9682 阅读 · 0 评论 -
lib_clapack.a(dlasyf.o): could not read symbols: File in wrong format---- 交叉编译opencv2.0遇到的错误解决
首先下载opencv2.0的源码http://www.pudn.com/downloads471/sourcecode/graph/opencv/detail1972436.html,opencv从2.1以后(包括2.1)无论安装到x86还是移植都必须使用cmake,移植的时候用cmake有时候又不能成功。无奈只能用opencv2.0,它还保留着./configure 、make 、make原创 2012-08-22 09:12:19 · 12380 阅读 · 3 评论 -
Qt的控制台qtcreator_process_stub(Xterm)不显示中文 解决
当用Qt的qtcreator建纯C/C++项目时,qt会调用一个控制台,类似windows下的console。默认状态下是不显示中文的,NND。Google了一圈无解。 求人不如求己啊!记得最初启动qt的这个控制台时,qt提示没有Xterm。也就是说Qt调用的控制台是Xterm,参照配置Xterm的两篇文章:http://blog.sina.com.cn/s/blog_6a75e原创 2012-08-21 16:10:43 · 8629 阅读 · 3 评论 -
Nokia同意放人 移交125名Qt核心成员给Digia
Nokia在去年三月份将Qt团队外包给了芬兰的一家名叫Digia的公司。据国外媒体thenextweb报道,今天Nokia正式将Qt开源软件技术卖给了Digia。而Digia预计在掌管这个项目后将其推广到Android、iOS和Windows 8 平台。Digia主要目标是借助Qt生态系统加强自身的研发能力,并且将这项技术推广到Android和iOS智能手机平台,也包括了微软的Window转载 2012-08-10 09:00:39 · 3696 阅读 · 5 评论 -
Qt4.8.1 帮助文档无效 用不了 怎么办?
Qt大名鼎鼎的是他的帮助文档非常好,无奈自然状态下安好qt4.8.1后竟然用不了,连输入Widget尽然都查找不到。以前qt4.8.0下,是可以的。不需要配置的,这里要先配置一下:点QtCreator----工具------选项------(左侧栏)帮助-----(右侧栏)文档-----点击添加, 会自动打开QtSdk安装的位置。找到Documentation,选择qt.qch(56.2M),原创 2012-08-07 15:46:15 · 4159 阅读 · 0 评论 -
Fedora14 源码安装qt4.7.0 PC版 和 arm版 过程 及问题解决(之三,续上)
接下来要编译qt4.7.0的Arm版本了!编译前确认安装了arm-linux-gcc,我的版本是4.5.1,试试看吧!以前4.3.2是没问题的! 将原来的解压缩目录删除了,因为pc上的qt已经装好了。然后mkdir arm-qt4.7.0,将源文件解压缩到这个文件夹下。命令:tar -zxvf qt-everywhere-opensource-src-4.7.0.tar.gz -C .原创 2012-07-18 15:06:37 · 2511 阅读 · 0 评论 -
linux下基于Qt的udp协议 pc机与Tiny210(arm板子)互相发送文字信息的实现 记录(1)
暂时调通了pc和pc之间可以互相发送信息。原来里面有关键一步,linux下默认是开防火墙的,这里一定要关了防火墙。使防火墙暂时关闭的命令是;service iptables stop; 开始是:service iptables start.,这两个命令以后还是背下吧!待我明天整理以下,把源码和实现发出来。大爱Qt阿!原创 2012-08-02 21:09:52 · 3130 阅读 · 0 评论 -
linux下qt中 调用open函数 出现call to '__open_missing_mode' declared with attribute error。。解决
调用open函数,因为使用open函数的时候,如果在第二个参数中使用了 O_CREAT,就必须添加第三个参数:创建文件时赋予的初始权。解决方案:在调用open函数的那一行的参数里加个“0666”或者“0777”均可!如:redir_handle = open (redir, O_WRONLY | O_TRUNC | O_CREAT)改为:redir_handle = open原创 2012-05-07 21:35:22 · 5844 阅读 · 0 评论 -
Fedora14 使用虚拟机桥接上网 静态配置固定IP 和宿主机IP在同一网段的方法 及 若干问题解决(NFS挂载第一步)
要进行NFS挂载,第一步是使虚拟机桥接上网,桥接上网下面的小框 不用勾选。下面要将其IP地址和宿主机IP配置在同一网段,破费周折终于成功。记录下步骤:一,我最初是参照http://hi.baidu.com/%D1%E3%C9%F9%C1%F4/blog/item/b0045efd9c02773608244d01.html这里,进行了以下三个步骤:1),# ifconfig eth0 u原创 2012-07-17 10:26:28 · 10615 阅读 · 7 评论 -
在Fedora14系统上挂载A8 开发版 详细过程 及问题解决 (接上篇,nfs挂载步骤之二)
1,参照http://blog.csdn.net/oney139/article/details/7435205,安装nfs-utils,命令: yum install nfs-utils2,gedit /etc/exports 来设置共享的目录。在里面添加这句话:/opt/FriendlyARM/tiny210/linux *(rw,sync,no_root_squash)注意:/o原创 2012-07-17 12:07:11 · 2723 阅读 · 0 评论 -
linux下为刚安装好的qtcreator创建桌面启动图标
qtCreator安装好了之后,是没有桌面启动图标的,每次到终端里输入命令也麻烦。以前写过一个给eclipse创建图标的方法,这次我给qt弄,发现找那个logo找了好长时间。索性我再写以下把。我的QT的安装目录是/usr/local/QtSDK/ 这个目录下的。如有需要,大家把目录换成自己的安装目录就行了,我的版本是4.8.1.采用离线qt的安装包七百多M的安装的。 方法:输入su -,原创 2012-08-02 20:30:58 · 10682 阅读 · 0 评论 -
dbus/qt检测U盘:Failed to connect to socket。。。 system_bus_socket: Connection refused解决
经过今天研究,终于明白了dbus移植到arm后,使用流程。往往第一次运行程序的时候会出现这个问题,"?????????QDBusInterface?" "Failed to connect to socket /usr/local/arm/dbus-1.0.2/var/run/dbus/system_bus_socket: Connection refused"原因是dbus没有启原创 2012-08-14 12:11:39 · 9834 阅读 · 2 评论 -
windows下 Qt检测U盘(二)
在windows下,利用qt检测U盘相对方便点。通过检测Widget::winEvent(MSG *msg, long *result),当pc上有U盘插拔时,会自动触发这个函数。通过检测此消息是否是WM_DEVICECHANGE就可以了!遗憾的是这么简单的方法只能用在windows下。参考蔡贵超的博客:http://insharecgc.sinaapp.com/?p=157源码如下:ht原创 2012-08-21 10:59:25 · 7174 阅读 · 3 评论 -
Arm平台 Qt检测U盘插拔(三)-----蛋疼的recv()阻塞
因为最终要在tiny210上实现此功能,最终选择了hotplug。http://hi.baidu.com/hdy5200075/item/7751f48647f3d12a100ef3f6这里是hotplug检测U盘的源码,我在qt里将其写到一个hostplug.h文件里。#ifndef HOSTPLUG_H#define HOSTPLUG_H#include #incl原创 2012-08-21 12:09:31 · 11545 阅读 · 11 评论