PetaLinuxandroid sdk 安装怎么安装

&PetaLinux Support and Resources
PetaLinux Support and Resources
Embedded Linux development today with PetaLinux tools and resources!
PetaLinux Tools
The PetaLinux Tools
License is no longer required. Users can install and use PetaLinux tools
to deploy royalty free OS images.
Use is defined by the EULA
Access to all PetaLinux BSPs and Reference Designs
Technical support of PetaLinux tools through WebCase (details below)
Additional support through Xilinx community forums and answer records.
Features supported by Xilinx Technical Support:
Installation and use of tools (e.g.:petalinux-*)
provided BSP&s & Reference Designs
System-Level
and RootFS Customizations via PetaLinux menuconfig options
kernel customization limited to Xilinx-specific features/drivers
support is limited to basic heartbeat verification
system-level consulting and design services, please contact a Xilinx
Alliance Member Partner
Documentation
Board Support Packages (BSP) and Reference Examples
PetaLinux Board Support Packages (BSP) and Reference Examples include pre-built boot loaders, system images and bitstream.
Built-in tools allow a single command to deploy and boot these elements to either physical hardware, or to the included full QEMU system emulator. With PetaLinux, developers can have their Xilinx-based hardware booted and running within about 5 minute ready for application, library and driver development.
PetaLinux BSPs and Reference Examples are available from Xilinx and partners. Please
the latest PetaLinux to see all the support boards.ZedBoard应用之——qt移植(转帖)
今天将我最近一个星期做的工作总结下,这星期我主要对XILLINX的ZYNQ开发板的交叉编译环境进行搭建。我选用XILLYBUS的xillinux作为开发板的系统,在PC的虚拟机上的linux是ubuntu12.10
64位,QT的版本是4.8.4,最后实现了QT图像编译中对QT工程的编译及交叉编译。下面我会详细介绍。
1.XILLINUX系统
这是XILLYBUS公司为ZYNQ平台做的一个LINUX发布版,接触过ZYNQ的都知道xillinux系统最大的特点就是支持zynq板上的简单VGA(RGB每个颜色四条线),这个就很方便了不用想LINARO那样还需要支持HDMI的设备(不是谁都有HDMI的显示屏啊)。这里我简单介绍下我知道的用于ZYNQ平台的linux文件系统,首先是LINARO现在论坛中资料最多的了,《基于zynq嵌入式系统协同设计》那本书就是基于linaro,官网http://www.linaro.org/可以详细了解,第二个系统是PETALINUX这是xillinx官网的linux拥有完整的编译环境,资料很全,简单弄了弄,感觉很有发展。我们zynq自带SD卡中的轻量级linux好像就是它啊(感觉),没有找到桌面系统所以也没弄。&/support/download.html下面petalinux
SDK就是它了,用详细的文档。最后就是我用的XILLINUX了,这个linux的优势在于VGA和总线,没用HDMI的同学可以直接就用了,另外XILLYBUS是一个总线公司它提供了一个代替AXI总线的总线,这个总线会在PL里实现FIFO进行数据传输,PS中通过AXI与ARM核相连,只不过这个连接以及它的驱动已经被XILLYBUS写好了,在linux
CLOSE调用就可以了,(现在还没做过段时间玩玩吧)详细的资料请见/xillinux,它是基于ubuntu12.04做的,下面是我们熟悉的桌面系统,很爽吧。
PC编译环境的搭建
我的系统是ubuntu12.10
64位,首先需要做些准备工作:
(1)以root身份登录系统
首先创建root用户,ubuntu默认是锁定root用户,通过下面的命令解锁,密码是你设的用户密码
sudo passwd root
接下来修改配置文件,实现root用户登录
gedit /etc/lightdm/lightdm.conf
添加下面两句到lightdm.conf中即可,主要true别写错为ture,#后注释最好去掉
greeter-show-manual-login=true #手工输入登陆系统的用户名和密码
allow-guest=false
#不允许guest登陆
(2)安装32位库,将shell改为bash防止因为兼容性问题出错
update要先找好源,ubuntu自带的源是官网的可能需要外网(可以用代理),这个是ubuntu装软件的最简单的方法,前提就是你能连到源。这里多说一句apt-get
install时会因名字不对出现找不到包的错误,解决方法先是apt-get
update更新下源(连接不上换源),并上/进行搜索,输入相应的关键字,这里有就一定可以下,不用怀疑。
apt-get update
apt-get install ia32-libs
dpkg-reconfigure dash
&准备工作做好了,现在开始安装QT了,QT的完整安装包括QT Creator,lib,designer等,这些被打包为QT
SDK,ubuntu为我们提供了一个简单安装方式,直接将QT的所有组件都安装完成了。你也可以在官网上下载安装包,那是个.run的文件,将该文件的属性改为可执行后就可运行了。运行后,像windons一样安装软件,但是要注意
这样的安装默认的路径是/opt/qt5.0
apt-get install qt-sdk
这样QT的PC编程环境就搭建好了,找个example,hello 直接run就可以了。
这样安装过程简单,需要注意的就是安装路径,我们没有设所以还不知道在哪,以后的一些配置需要知道它的位置
install这种安装的默认路径是:
qt库在/usr/lib/qt4;qtcreator 执行文件在 /usr/bin ;qt的配置会在
/usr/share/qt4 中。
3.QT交叉编译环境的搭建
这是今天的重点,我参考了懒兔子的ZYNQ博客1和9,做了些改动。首先上http://qt-project.org/downloads下载最新的QT
lib for embedded linux 4.8.4 ,我们需要进行交叉编译所以还需要下载交叉编译链,apt-get
install真是神器啊(等到本地编译时你会越发感触),竟然有,只要有就省得编译源码了。好了,现在安装交叉编译环境arm-linux-eabihf-gcc
,g++。这里注意下,这里的交叉编译器是HF的就是应用了硬件浮点,而openhw论坛上的一般都是gcc-arm-linux-gnueabi,这里的版本是4.7。这可能是xillinx的又一个优点吧。
apt-get install gcc-arm-linux-gnueabihf
apt-get install g++-arm-linux-gnueabihf
然后就是linux下编译的三步走了,./configue & make
&make install
。首先找个文件夹解压下载的qt-everywhere-opensource-src-4.8.4。打开/mkspecs/qws/linux-arm-gnueabi-g++/qmake.conf
将arm-linux-none-g(忘了,一看就知道)改为相应的arm-linux-gnueabihf就可以了,保存啊。这里又想到了一个易错点,分享给大家修改配置文件需要保存,没保存就执行可能出错。另外,我们一般先把把错误的文件删除,再重新复制一个好的文件(同名)到所在文件夹,记得要清除trash否则可能继续执行trash里的配置文件(我就是这样)。
为了防止出现某些指令找不到的错误,例如no
such instruction
SWPB等指令错误,将/mkspecs/common/g++-unix.conf进行修改,将编译优化置为0,这样就可以避免了。注意-O0第一个是字母,第二个是数字。你也可以设为O2试试,据说也好使,像我这样设编译会很慢的。
QMAKE_LFLAGS_RELEASE += -Wl,-O0
好了,配置文件也改完了,可以进行配置了。进入qt-everywhere-opensource-src-4.8.4目录。
./configure -embedded armv7 -xplatform qws/linux-arm-gnueabi-g++ -little-endian -opensource -host-little-endian -confirm-license -nomake demos -nomake examples -no-pch
&这样就配置完成了,-no-pch应该可以不加,这个是预编译头文件的意思,但是我不加会在pch出错。欧了,应该没问题了。进行编译。
make install
好了,等着吧,没有优化得1个小时,在这个时间,我简单说说我对动态链接库的理解,qt交叉编译时需要相应的库的头文件以及.so文件来生产相应平台的可执行文件(头文件无所谓都一样,so文件平台相同),在arm上执行时也需要.so文件做链接。动态链接库又叫共享库,多个执行文件可以共享使用,这样可执行文件可以编译的很小了。交叉编译的目的就是编译可执行文件及其相应的动态链接库(这些都是在PC机上完成的),然后将库和执行文件拷贝到我们的嵌入式平台上(ARM,ZYNQ),执行就可以了。
出现这个就可以了。make install 默认的安装路径是
/usr/share/Trolltech/QtEmbedded-4.8.4-arm中,可以看到我们的arm动态链接库在lib下了。bin目录下有我们想要的qmake。下一步就是配置QtCreater,实现图形化的交叉编译。
进入qt的options中的build&Run,需要配置Tool Chains,Qt
Versions。找到arm-linux-gnueabihf-g++和交叉编译后生成的qmake的位置即可。直接上图吧。大家照着配就行了,注意我的arm-linux-gnueabihf-g++也是apt-get所在/usr/bin中(又想到了一个注意的地方如果你不是root用户,你就要去/usr/local/bin中找了)。
把鼠标放到上图橘黄色处别动,可以查看详细的交叉编译链信息。
这回差不多了,修改build选项添加embeded
linux配置,选gcc-arm,再编译即可了。
Desktop可以生成和调试PC下的代码,Embedded
linux就可以生成arm下的可执行文件了,就是不能调试,是不是有点贪啊,如果有实现连调的大神,请赐教。
如果没有出现上图的配置(只有Desktop),需要进入左边条的project添加Embedded
Linux配置即可。
将&/usr/share/Trolltech/QtEmbedded-4.8.4-arm/lib下的内容拷贝到ARM(ZYNQ)的相同目录下,然后需要设置动态库的调用路径了,有两种方法,首先是动态调用。
export LD_LIBRARY_PATH=/usr/local/Trolltech/QtEmbedded-4.8.4-arm/lib/
这样在这个terminal下执行,就可以调用动态库了。
系统的方法是修改/etc/ld.so.conf.d中的内容,可以新建一个qt.conf文件,将我们的库路径加进去
/usr/local/Trolltech/QtEmbedded-4.8.4-arm/lib
然后,在终端重新加载就行了
动态库的寻找路径就设置完成了,其他的库例如opencv的也可以这么做,经验是最好是和PC上相同都设为默认路径(就是上面用的那个),复制到别的地方有时ARM上会找不到。
上面那个PC上跑的例子,通过交叉编译生成一个hello可执行文件,你可以通过file
hello的命令查看它是不是ARM的执行文件。
好了,准备工作都完事了,可以执行了,用U盘移到ZYNQ的桌面上,然后执行
chmod 777 hello
./hello -qws
就可以了。结果如下图:
这个例子很简单,主要测试下交叉编译环境。
就这么多,欢迎大家留言知道。
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。}

我要回帖

更多关于 sdk安装 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信