当前位置:首页 » 操作系统 » qt4linux

qt4linux

发布时间: 2022-05-15 13:41:47

‘壹’ 如何用qt4编程结束linux进程

C菜鸟助手成员tonytvb为你解答(如有疑问请hi我或向我的团队提问):

呵呵,以前的一个课程设计!
用system函数就可以了!
首先你先得学会LINUX下杀死进程的命令
这里个给你讲解一下,
1、ps -ef 可以查看到所有的进程
2、每个进程有一个PID号,只要用命令kill -9 +PID就可以强制关闭(所谓的杀死)它了~!
而在QT里面只需要借助SYSTEM这个函数就可以利用LINUX本来的功能来使用这些函数!

‘贰’ linux下qt3和qt4可以共存吧

可以。生成Makefile的时候指定用qmake-qt4还是qmake-qt3就行了。

‘叁’ linux 下 编译 Qt4

QT4 不是新手能编译的,楼主你还是从在线软件源更新吧。

在我的印象里,现在所有新版本,都已经自带 QT4 了。如果楼主你的系统没有 QT4 ,我想你应该更新系统了。不然就算告诉你怎么编译 QT4 ,估计你也编译不成功。
------------
这和是不是虚拟机无关。

‘肆’ 用QT4怎么获得Linux下的剩余硬盘空间

使用QtMobility::QSystemStorageInfo,样例

QtMobility::QSystemStorageInfosysStrgInfo;
QStringListdrives=sysStrgInfo.logicalDrives();

foreach(QStringdrive,drives)
{
qDebug()<<sysStrgInfo.availableDiskSpace(drive);
qDebug()<<sysStrgInfo.totalDiskSpace(drive);
}

另外一个办法,调用系统的df命令

QFileusbMemoryInfo;
QStringListusbMemoryLines;
QStringListusbMemoryColumns;

system("df/dev/sdb1>/tmp/usb_usage.info");
usbMemoryInfo.setFileName("/tmp/usb_usage.info");

usbMemoryInfo.open(QIODevice::ReadOnly);

QTextStreamreadData(&usbMemoryInfo);

while(!readData.atEnd())
{
usbMemoryLines<<readData.readLine();
}

usbMemoryInfo.close();

usbMemoryColumns=usbMemoryLines.at(1).split(QRegExp("\s+"));
QStringavailable_bytes=usbMemoryColumns.at(3);

‘伍’ 嵌入式linux qt4程序如何去除系统的光标

嵌入式linux技术 嵌入式Linux是按照嵌入式操作系统的要求而设计的一种小型操作系统,它由一个Kernel(内核)及一些根据需要进行定制的系统模块组成。Kernel一般只有几百kB左右,即使加上其它必须的模块和应用程序,所需的存储空间也很小。它具有多任务、多进程的系统特征,有些还具有实时性。一个小型的嵌入式Linux系统只需要引导程序、Linux微内核、初始化进程3个基本元素。运行嵌入式Linux的CPU可以是x86、Alpha、Sparc、MIPS、PPC等。与这些芯片搭配的主板都很小,通常只有一张PCI卡大小,有的甚至更小。嵌入式Linux所需的存储器不是软磁盘、硬盘、Zip盘、CD-ROM、DVD这些众所周知的常规存储器,它主要使用Rom、CompactFlash、M-Systems的DiskOnChip、Sony的MemoryStick、IBM的MicroDrive等体积极小(与主板上的BIOS大小相近),且存储容量不太大的存储器。它的内存可以使用普通的内存,也可以使用专用的RAM。 与其它嵌入式操作系统相比,Linux的源代码是开放的,不存在黑箱技术。Linux作为一种可裁剪的软件平台系统,很可能发展成为未来嵌入式设备产品的绝佳资源。Linux与生俱来的优秀网络血统更为今后的发展铺平了一条宽广平坦的大路。因此,在保持Linux内核系统更小、更稳定、更具价格竞争力等优势的同时,对系统内核进行实时性优化,更加使之能够适应对工业控制领域高实时性的要求。这也正是嵌入式linux操作系统在嵌入式工控系统中的发展所在。同时也使Linux成为嵌入式操作系统中的新贵。 标准的Linux内核通常驻留在内存中,每一个应用程序都是从磁盘运到内存上执行。当程序结束后,它所占用的内存就被释放,程序就被下载了。而在一个嵌入式系统里,可能没有磁盘。有两种途径可以消除对磁盘的依赖,一是在一个简单的系统里,当系统启动后,内核和所有的应用程序都存在内存里。这是大多数传统的嵌入式系统的工作模式,同样Linux。第二种就是linux所特有的功能,因为Linux已经有能力“加载”和“卸载”程序,因此,一个嵌入式系统就可以利用它来节省内存。一个比较典型的系统有大约8MB到16MB的闪存和8MBRAM而闪存可以被用作文件系统。用闪存驱动程序作为从闪存到文件系统的界面就是一种选择。当然,也可以用一个闪存磁盘。用闪存来摆脱系统对一个磁盘的需求(依赖)具有DiskOnChip技术以及CmopactFlash卡等方式。 用来连接FlashMemory和文件系统的程序都以文件形式存储在Flash文件中,需要时可以装入内存,这种动态的、根据需要加载的能力是支持其它一系列功能的重要特征。它能使初始化代码在系统引导后被释放。实际上,Linux同样还有很多内核外运行的公用程序,这些程序通常在初始化时运行一次,以后就不再运行。而且,这些公用程序可以用它们相互共有的方式一个接一个地按顺序运行。这样,相同内存空间可以被反复使用以“召入”每一个程序,就象系统引导一样。这样可以节省内存,特别是那些配置一次以后就不再更改的网络堆栈。如果将Linux可加载模块的功能包括在内核里,驱动程序和应用程序就都可以被加载。由于它可以检查硬件环境并且为硬件装上相应的软件,从而消除了用一个程序占用许多FlashMemory来处理多种硬件的复杂性。另外,软件的升级更加模块化,可以在系统运行时在Flash上升级应用程序和加载驱动程序,其配置信息和运行时间参数可以作为数据文件储存在Flash中。 嵌入式工业控制网络的实现方案 基于嵌入式linux的工控系统以嵌入式微处理器为核心来运行嵌入式Linux操作系统。应用程序可通过网络进行更新,并可通过键盘进行人机对话,数据可通过LCD现场显示,重要数据可用文件形式保存在Flash等闪存存储器中;数据和报警信息可通过串口向上位机传输,也可以通过以太网向工业以太网或Inernet发布,用户还可通过网络实现远程监控和远程维护。更为关键的是,可充分利用Internet上已有的软件和协议(如:ftp,http以及ApachePHPMysql等应用程序)迅速搭建前台数据采集系统,以实现测控系统和后台管理系统的通讯。图1所示是这种实现方案的系统框图。这种方式的优点有: (1)不需专用的通信线路即可用现成的INTER-NET网络将数据传送到任何地方。 (2)不仅能够传递数据信号,也可以传递音频和图像信号。 (3) 由于目前的INTERNET协议是现成和公开的,因此,利用大到几十兆的 Microsoft IE浏览器,或小到只有600kB的Mosaic浏览器都可以对网络数据进行读取。

‘陆’ 什么是QT4

qt4是用来开发kde4的
kde和gnome都是桌面环境
ubuntu使用gnome桌面
kubuntu使用kde
外表看起来不一样,一些软件也不太一样,kde更漂亮一点
ubuntu是linux的一个发行版,和kde、gnome不是一个概念

‘柒’ linux 系统怎样安装qt4

安装命令:
sudo apt-get install qt4-dev-tools qt4-doc qt4-qtconfig qt4-demos qt4-designer

关于集成开发环境我觉得QDevelop很不错,它跟Qt Designer结合的很好,而且有提示类成员函数的功能。这样,使用Qdevelop编写代码和编译、调试,使用Qt Designer设计界面,开发效率较高。运行以下命令安装QDevelop:
sudo apt-get install qdevelop

为了连接MySQL数据库,需要安装连接MySQL的驱动程序:
sudo apt-get install libqt4-sql-mysql

如果还需要其它的没有默认安装的Qt库,可以在命令行输入
sudo apt-get install libqt4-
然后按tab键自动补全,就会列出所有以libqt4- 开头的软件包,如下图所示:

如果还需要画一些数据曲线和统计图表等,而第三方的QWT库提供了这些功能。同样,只需要一个命令即可完成安装:
sudo apt-get install libqwt5-qt4 libqwt5-qt4-dev

‘捌’ linux下QT4自带的sqlite驱动不可用该怎么解决

我告诉你个方法,绝对管用,你这种情况是没有安装mysql的驱动,提示只有sqlite的驱动。在命令行下安装libqt4-sql-mysql(sudoapt-getinstalllibqt4-sql-mysql),然后将/usr/lib/qt4/plugins/sqldrivers/libqsqlmysql.so拷贝到你的QtSDKsqldrivers目录下,我的是在/QtSDK/Desktop/Qt/481/gcc/plugins/sqldrivers,里面同时还有qsqlite.so,所以刚才会说只能找到qsqlite

‘玖’ QT4 Linux GUI应用程序如何把所需要的QT库一起打包,使其能在没有装QT4的Linux平台上运行

写在依赖包列表里,有管理程序会自动下载安装的。不过要写明版本和候选源的名字。加上官方的运行库依赖……基本上所有的linux发行版都有qt4运行库的源。
至于怎么写,您网络一下吧……rpm或者dpkg都有控制命令和测试命令,反正安装的时候测试没有启动下载或者一起打包的库安装就好了。
用程序管理器是最容易的,会自动检查依赖并下载。比如yum和apt这种。
反正我写qt的时候在linux下从来不担心这问题,基本也没有问题
倒是windows需要自己打包带着走……毕竟windows下用qt的程序很少,装qt运行库的更少了

‘拾’ QT4如何移植到ARM-LINUX目标板

一、准备
busybox 1.14.1
qt-embedded-linux-opensource-src-4.5.1
tslib 1.4
gcc version 4.3.2 (Sourcery G++ Lite 2008q3-72)
构建一个新的根文件系统目录,路径为
/root/rootfs

二、具体步骤:

1、编译安装busybox
在官网下载最新版。可以参考如下几处要修改的地方:
Busybox Settings ---> Build Options ---> (arm-linux-)Cross Compiler prefix
Busybox Settings ---> Installation Options --->[]Dont't use /usr
Busybox Settings ---> Installation Options --->(/root/rootfs) BusyBox installation prefix
Busybox Settings --->Busybox Library Tuning --->[*] Fancy Shell prompts
输入如下命令,编译并安装。
# make;make install

2、编译安装tslib
# ./autogen.sh
# ./configure -prefix=/usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/armv4t/usr/ -host=arm-linux ac_cv_func_malloc_0_nonnull=yes
# make;make install

安装目录指明为 /usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/armv4t/usr/
主要是为了在编译QTE时,不用指定tslib的头文件和库文件,方便以后程序开发。

注意:在做这一步前,需要做一个目录链接
在/usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/armv4t/usr/目录下
# ln -s ../../usr/include ./

3、编译安装QTE
1)、最基本的配置
# ./configure -prefix /usr -embedded arm -xplatform qws/linux-arm-g++ -depths 16 -qt-mouse-tslib
-prefix /usr 使用这个配置,编译后的QTE库文件即可放在目标文件系统的/usr/lib下,而不是默认/usr/local/Trolltech/QtEmbedded-4.5.1 这个很深的目录
2)、编译
# make
# cp lib/* /root/rootfs/usr/lib -rd 将QTE库文件拷贝到根文件系统的目录
# cp plugins /root/rootfs/usr -rd 将QTE插件目录拷贝到根文件系统的目录

4、根文件系统的设置
1)、这时/root/rootfs/usr下应该有 bin etc include lib sbin目录
tslib生成的etc目录,包含一个tslib的配置文件 nf,编辑此文件,去掉mole_raw input前的注释
# mv etc ../ 移动到rootfs的根目录

2)、进行一次清理操作
#arm-linux-strip lib/*.so
#arm-linux-strip usr/lib/*.so

3)、编辑etc/profile,添加以下内容
export QWS_MOUSE_PROTO=Tslib:/dev/event0
export TSLIB_CONSOLEDEVICE=none
export TSLIB_FBDEVICE=/dev/fb0
export TSLIB_TSDEVICE=/dev/event0
export TSLIB_CALIBFILE=/etc/pointercal
export TSLIB_CONFFILE=/etc/nf
export TSLIB_PLUGINDIR=/usr/lib/ts

最后,通过mkyaffs2image 制作镜像,烧写镜像,启动ts_calibrate校验触屏即可。

热点内容
油泵房配置哪些消防系统 发布:2024-10-10 23:23:59 浏览:949
pcl如何创造有mods服务器 发布:2024-10-10 23:16:18 浏览:851
证券中的ftp 发布:2024-10-10 23:16:14 浏览:483
风行视频缓存 发布:2024-10-10 23:02:55 浏览:602
武汉学java 发布:2024-10-10 23:00:52 浏览:359
php入门到精通 发布:2024-10-10 22:51:27 浏览:526
我的世界基岩版的服务器怎么进入 发布:2024-10-10 22:45:32 浏览:360
什么是保险柜主密码 发布:2024-10-10 22:39:54 浏览:660
sql临时表效率 发布:2024-10-10 22:24:37 浏览:503
linux搭建mc服务器搭建 发布:2024-10-10 21:58:38 浏览:984