iMX6 yocto平台QT交叉编译环境搭建
转:https://blog.csdn.net/morixinguan/article/details/79351909
. /opt/fsl-imx-fb/4.9.11-1.0.0/environment-setup-cortexa9hf-neon-poky-linux-gnueabi
/opt/fsl-imx-fb/4.9.11-1.0.0/sysroots/x86_64-pokysdk-linux/environment-setup.d/qt5.sh
/home/ubuntu/Qt5.8.0/Tools/QtCreator/bin/qtcreator.sh
qt-opensource-linux-x64-5.8.0.run
1、安装ubuntu上必备的库文件:
如果无法安装请依次执行以下两个命令:
apt-get upgrade
apt-get update
再安装以上的库文件。
2、搭建JDK开发环境
下载jdk1.6.0_45,然后安装jdk相关的库文件以及设置环境变量
3、安装yocto交叉编译工具以及QT开发环境可参考:
http://blog.csdn.net/lu_embedded/article/details/56102831
主机环境:Ubuntu 12.04, 64位 。
交叉编译工具:Poky 1.5.3 交叉编译工具链及相关工具
1、安装交叉编译工具
将 poky 交叉编译工具压缩包解压到 /opt 目录。
- $ sudo cp fsl-imx-x11-Yocto_1.5.3.tar.bz2 /opt
- $ cd /opt
- $ sudo tar jxvf fsl-imx-x11-Yocto_1.5.3.tar.bz2
用 ls 命令查看一下。
- $ ls -1 /opt/poky/1.5.3/
- environment-setup-cortexa9hf-vfp-neon-poky-linux-gnueabi
- site-config-cortexa9hf-vfp-neon-poky-linux-gnueabi
- sysroots
- version-cortexa9hf-vfp-neon-poky-linux-gnueabi
为交叉编译工具指定用户或组,XXX 是你的 ubuntu 用户的名字。
$ sudo chown -R XXX:XXX /opt/poky
2、安装 Qt Creator
我这里下载到的是 qt-creator-opensource-linux-x86_64-3.2.1.run,安装过程如下。
同样,拷贝到 /opt 目录下,直接运行即可进入安装界面。
- $ sudo cp qt-creator-opensource-linux-x86_64-3.2.1.run /opt
- $ cd /opt
- $ ./qt-creator-opensource-linux-x86_64-3.2.1.run
3、配置 Qt creator 的运行环境
修改 /opt/qtcreator-3.2.1/bin/qtcreator.sh,在文件的第一行加入一段:
. /opt/poky/1.5.3/environment-setup-cortexa9hf-vfp-neon-poky-linux-gnueabi
environment-setup-cortexa9hf-vfp-neon-poky-linux-gnueabi 的内容如下。
- export PATH=/opt/poky/1.5.3/sysroots/x86_64-pokysdk-linux/usr/bin:/opt/poky/1.5.3/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi:$PATH
- export PKG_CONFIG_SYSROOT_DIR=/opt/poky/1.5.3/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi
- export PKG_CONFIG_PATH=/opt/poky/1.5.3/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi/usr/lib/pkgconfig
- export CONFIG_SITE=/opt/poky/1.5.3/site-config-cortexa9hf-vfp-neon-poky-linux-gnueabi
- export CC="arm-poky-linux-gnueabi-gcc -march=armv7-a -mthumb-interwork -mfloat-abi=hard -mfpu=neon -mtune=cortex-a9 --sysroot=/opt/poky/1.5.3/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi"
- export CXX="arm-poky-linux-gnueabi-g++ -march=armv7-a -mthumb-interwork -mfloat-abi=hard -mfpu=neon -mtune=cortex-a9 --sysroot=/opt/poky/1.5.3/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi"
- export CPP="arm-poky-linux-gnueabi-gcc -E -march=armv7-a -mthumb-interwork -mfloat-abi=hard -mfpu=neon -mtune=cortex-a9 --sysroot=/opt/poky/1.5.3/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi"
- export AS="arm-poky-linux-gnueabi-as "
- export LD="arm-poky-linux-gnueabi-ld --sysroot=/opt/poky/1.5.3/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi"
- export GDB=arm-poky-linux-gnueabi-gdb
- export STRIP=arm-poky-linux-gnueabi-strip
- export RANLIB=arm-poky-linux-gnueabi-ranlib
- export OBJCOPY=arm-poky-linux-gnueabi-objcopy
- export OBJDUMP=arm-poky-linux-gnueabi-objdump
- export AR=arm-poky-linux-gnueabi-ar
- export NM=arm-poky-linux-gnueabi-nm
- export M4=m4
- export TARGET_PREFIX=arm-poky-linux-gnueabi-
- export CONFIGURE_FLAGS="--target=arm-poky-linux-gnueabi --host=arm-poky-linux-gnueabi --build=x86_64-linux --with-libtool-sysroot=/opt/poky/1.5.3/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi"
- export CFLAGS=" -O2 -pipe -g -feliminate-unused-debug-types"
- export CXXFLAGS=" -O2 -pipe -g -feliminate-unused-debug-types -fpermissive"
- export LDFLAGS="-Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed"
- export CPPFLAGS=""
- export OECORE_NATIVE_SYSROOT="/opt/poky/1.5.3/sysroots/x86_64-pokysdk-linux"
- export OECORE_TARGET_SYSROOT="/opt/poky/1.5.3/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi"
- export OECORE_ACLOCAL_OPTS="-I /opt/poky/1.5.3/sysroots/x86_64-pokysdk-linux/usr/share/aclocal"
- export OECORE_DISTRO_VERSION="1.5.3"
- export OECORE_SDK_VERSION="1.5.3"
- export PYTHONHOME=/opt/poky/1.5.3/sysroots/x86_64-pokysdk-linux/usr
- export ARCH=arm
- export CROSS_COMPILE=arm-poky-linux-gnueabi-
- export OE_QMAKE_CFLAGS="$CFLAGS"
- export OE_QMAKE_CXXFLAGS="$CXXFLAGS"
- export OE_QMAKE_LDFLAGS="$LDFLAGS"
- export OE_QMAKE_CC=$CC
- export OE_QMAKE_CXX=$CXX
- export OE_QMAKE_LINK=$CXX
- export OE_QMAKE_AR=$AR
- export OE_QMAKE_LIBDIR_QT=/opt/poky/1.5.3/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi//usr/lib
- export OE_QMAKE_INCDIR_QT=/opt/poky/1.5.3/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi//usr/include/qt4
- export OE_QMAKE_MOC=/opt/poky/1.5.3/sysroots/x86_64-pokysdk-linux/usr/bin/moc4
- export OE_QMAKE_UIC=/opt/poky/1.5.3/sysroots/x86_64-pokysdk-linux/usr/bin/uic4
- export OE_QMAKE_UIC3=/opt/poky/1.5.3/sysroots/x86_64-pokysdk-linux/usr/bin/uic34
- export OE_QMAKE_RCC=/opt/poky/1.5.3/sysroots/x86_64-pokysdk-linux/usr/bin/rcc4
- export OE_QMAKE_QDBUSCPP2XML=/opt/poky/1.5.3/sysroots/x86_64-pokysdk-linux/usr/bin/qdbuscpp2xml4
- export OE_QMAKE_QDBUSXML2CPP=/opt/poky/1.5.3/sysroots/x86_64-pokysdk-linux/usr/bin/qdbusxml2cpp4
- export OE_QMAKE_QT_CONFIG=/opt/poky/1.5.3/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi//usr/share/qt4/mkspecs/qconfig.pri
- export QMAKESPEC=/opt/poky/1.5.3/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi//usr/share/qt4/mkspecs/linux-g++
- export QT_CONF_PATH=/opt/poky/1.5.3/sysroots/x86_64-pokysdk-linux//etc/qt.conf
4、配置 Qt creator
4.1 运行 QT creator
进入到 /opt/qtcreator-3.2.1/bin 目录,执行命令 $ ./ qtcreator.sh
,运行 Qt creator。
然后,在 Qt 运行界面下,菜单栏点击 “Tools –> Options –> Build&Run”,进行相关配置。
4.2 设置 “Compiler”
添加一个“ Manual” ,点击 Add –> GCC ,添加一个 GCC。
点击 Browser 选择 Compiler path 为:/opt/poky/1.5.3/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-g++
,然后点击 apply。
4.3 设置 “QT Versions”
添加一个“ Manual” ,点击 Add ,点击 Browser,选择 qmake location 为:/opt/poky/1.5.3/sysroots/x86_64-pokysdk-linux/usr/bin/qmake
,然后点击 apply。
4.4 设置“ Kit”
添加一个“ Manual” ,点击 Add,点击 Browser,选择 Sysroot 为:/opt/poky/1.5.3/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi
。点击 Compiler,选择先去配置好的 GCC。
然后点击 apply。
最后点击 OK 退出。
至此,i.MX 平台的 Qt 开发环境搭建完毕,接下来就可以在此环境上面进行 Qt 的应用开发了!
iMX6 yocto平台QT交叉编译环境搭建的更多相关文章
- linux下arm平台Qt编译环境搭建与解析
一.概述: 我们知道QTcreator.这仅仅是个IDE,他包含了一个编译器--qmake.这两者的关系与codeblocks和g++的关系一样,首先要明确这些. 而我们在linu ...
- YA157C交叉编译环境搭建
目录 1.开发板简介 3.主机搭建交叉编译环境 4.编译第一个ARM Linux程序--Hello World 5.在开发板上运行Hello World程序 6.ssh登录开发板 7.注意 8.she ...
- Exynos4412交叉编译环境搭建
Exynos4412交叉编译环境搭建 交叉编译:在PC机(x86平台)上开发程序,在ARM板上运行,提高开发.编译速度. 环境: Tiny4412SDK1506开发板 需要软件: arm-linux- ...
- Zynq7000开发系列-6(QT开发环境搭建:Ubuntu、Zynq)
操作系统:Ubuntu14.04.5 LTS 64bit Qt:Qt 5.4.2 (qt-opensource-linux-x64-5.4.2.run.qt-everywhere-opensource ...
- Ubuntu系统下arm-linux-gcc交叉编译环境搭建过程
搭建所需环境Linux版本:Ubuntu 14.10 交叉编译器版本:arm-linux-gcc-4.4.3资源链接 何为交叉编译环境搭建交叉编译环境,即安装.配置交叉编译工具链.在Ubuntu环境下 ...
- Qt开发环境搭建 - Windows + VS2010 + VS插件
Qt 开发环境搭建 - Windows+VS2010+VS插件 1.Qt在Windows平台下的三种开发环境 方案 编辑器 编译器 调试器 一 Qt Creator MinGW GDB 二 Qt Cr ...
- qt学习教程1.qt开发环境搭建
qt学习教程1.qt开发环境搭建 首先下载qt 下载地址:http://download.qt.io/archive/qt/ 此教程使用的版本为5.1.1 下载好后,打开安装包,然后点下一步 选择一个 ...
- QT笔记(1)--QT编程环境搭建
一.QT简介 Qt 是一个1991年由奇趣科技开发的跨平台C++图形用户界面应用程序开发框架.它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务器.Qt是面向对象的框架,使用特殊 ...
- QT开发环境搭建
一.Qt发展史 1991年,由奇趣科技开发的跨平台C++图形用户界面应用程序开发框架: 2008年,Nokia从Trolltech公司收购Qt, 并增加LGPL的授权模式: 2011年,Digia从N ...
随机推荐
- makefile编写---.a静态库的生成和调用
#.SUFFIXES: .c .o Cc =gcc #OSA=/data/users/osa IncDir=-I. -I./ Debug = -g Cflags = -c $(DEBUG) Libs ...
- windows文件打包命令
copy /Y partition.bin /b + qcsblhd_cfgdata.bin /b + qcsbl.bin /b + oemsbl.bin /b + fat.amss.bin /b + ...
- OpenCV学习笔记十五:opencv_features2d模块
一,简介: 该库用于2D特征检测,描述与匹配.
- Linux命令之paste
介绍 cut用来从文本文件或标准输出中抽取数据列或者域,然后再用paste可以将这些数据粘贴起来形成相关文件.粘贴两个不同来源的数据时,首先需将其分类,并确保两个文件行数相同. paste将按行将不同 ...
- hibernate 标签inverse cascade
inverse设立不当会导致性能低下,其实是说inverse设立不当,会产生多余重复的SQL语句甚至致使JDBC exception的throw.这是我们在建立实体类关系时必须需要关注的地方.一般来说 ...
- Activity四种启动方式
Activity启动方式有四种,分别是: standardsingleTopsingleTasksingleInstance 可以根据实际的需求为Activity设置对应的启动模式,从而可以避免创建大 ...
- jmeter操作myql数据库
1.先安装mysql的驱动mysql-connector-java-5.1.7-bin.jar 配置jdbc的connection configuration Database Url :jdbc:m ...
- 50、Toast自定义布局
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http: ...
- 编写自己的ls命令
····要编写ls命令,首先要了解它能做什么,完成了什么工作,是如何完成这些工作的···· 一.ls命令能做什么? 我们在命令行输入ls,ls默认找出当前目录中所有文件的文件名,并且按照字典序排序后 ...
- windows下在Eclipse中启动的tomcat没有乱码,单独部署到tomcat下乱码解决方案
今天遇到了一个很奇怪的问题,在Eclipse中调试,运行项目一切正常,项目的所有编码都是统一的UTF-8.但是在单独部署到tomcat上的时候出现了中文乱码. 解决方案 第一步:确保项目,jsp页面, ...