导航:首页 > 编程系统 > qtwindows移植到linux

qtwindows移植到linux

发布时间:2025-03-04 23:37:40

1. windows下qt creator编写的程序如何在linux下执行

qt的可移植性,指的是代码不用修改,就可以在多个平台编译通过 然后运行~~
这也就是qt一直说的 code less create more。
所以你需要把源码文件在linux下再次编译。

2. qt在linux上和移植时用的到底是哪个qmake

第一步,linux下编译安装qt

仍然是用的ok6410提供的qt-everywhere-opensource-src-4.7.1.tar.gz

1、首先在我自己的目录/z 下新建个qt-x11,将文件拷贝解压

sudo su (取得root权限)

mkdir /z/qt-x11

cp qt-everywhere-opensource-src-4.7.1.tar.gz /z/qt-x11 (拷贝到新建的目录)

tar zxvf qt-everywhere-opensource-src-4.7.1.tar.gz

解压后查看得到:(其中qte4.7.1Makelog为后来生成的,一开始解压后没有,我是安装完成后截的图= =)

此处的build-all是飞凌公司写好的脚本,是用于编译开发板上的嵌入式的qt的,而此处要编译linux的qt,因此对其进行修改,

gedit build-all

修改结果如下:主要是去掉环境变量的配置和qt的配置

注意此处将qt安装在了新建文件夹/opt/qt-x11-4.7.1中,这个目录要记住,因为后面配置qtcreator的时候要到这里找qmake

然后保存关闭,执行 ./build-all

等待。。。我感觉我等了一个下午,幸亏没有提醒出错,要不然我就哭了,编译成功

第二步:安装配置qtcreator

下载链接:http://download.qt-project.org/ 我都被自己的贴心感动得哭了T T

这里根据系统版本神马的,我就参考了别人的文章下载了一个版本,姐实在被这些版本弄的想哭了,参考链接 http://xiaolong5750.blog.163.com/blog/static/44856246201421405034948/

版本是qt-creator-linux-x86-opensource-2.6.1.bin

1、将下载文件拷贝到/z 目录下,在终端下,输入命令

sudo ./qt-creator-linux-x86-opensource-2.6.1.bin

就会出现一个桌面安装窗口,跟windows一样安装就很简单了

对了,有个插曲,我在安装过程中终端跳出了一个warning:designer:attempt to add child to。。。我网上搜了下竟然没搜到这个问题,就直接忽略掉了。。不知道以后会不会有影响。。。

2、接着配置

在主界面中从菜单栏点击"工具"->"选项"->在左侧点击“构建和运行”界面如下图所示。

点击qt版本,有些没有自动检测到qmake路径,这是因为没设置环境变量,手动添加,将刚安装的qmake加入:

接着点击编译器:已自动检测到

最后点击 构建套件,点击右端添加,

至此配置好用于linux上编译的qmake,就可以在linux上跑程序了。

3、新建个小程序试下,新建过程参考http://xiaolong5750.blog.163.com/blog/static/44856246201421405034948/

插曲:我新建的时候,到最后跳出对话框说 “无法创建目录。。。。” 网上查了有人说在安装qtcreator的时候没有用root权限安装神马的,害我重装一遍但也没解决问题,幸亏最近在看《鸟哥的私房菜》,里面说了些文件的权限问题之类的,于是我把自己创建的工程所在的目录的权限都改成chmod 777,然后就没问题了哈哈

建立工程后,build,run 结果如下:

linux

3. 请问Qt软件在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校验触屏即可。

阅读全文

与qtwindows移植到linux相关的资料

热点内容
springbootjson数据 浏览:226
如何把所有的文件夹 浏览:388
买单反去哪个网站 浏览:803
excel怎么处理横断面数据 浏览:737
单片机的程序计数器pc 浏览:120
电脑怎么筛选文件夹里的内容 浏览:196
uc的压缩文件如何转移 浏览:259
苹果安卓搬家用什么app 浏览:169
华为y310能升级吗 浏览:2
u盘文件乱码怎么删除 浏览:759
打印扫描文件怎么保存桌面 浏览:5
数据通讯采集模块多少钱 浏览:821
win10如何打开摄像机 浏览:408
网络电话不限呼叫次数 浏览:3
css文件夹修改路径 浏览:662
怎样将镜像文件传到linux 浏览:542
从文件夹导入数据excel 浏览:238
日版苹果6s91解锁教程 浏览:177
新英朗储物盒内数据线怎么用 浏览:363
win10重装ssd分区 浏览:903

友情链接