查看: 2729|回复: 0

SINA33Linux&QT编译过程

[复制链接]
  • TA的每日心情
    奋斗
    2016-6-24 09:52
  • 签到天数: 112 天

    连续签到: 1 天

    [LV.6]常住居民II

    发表于 2016-5-14 09:39:13 | 显示全部楼层 |阅读模式
    分享到:
    一、编译前的准备工具:
    ►VMware虚拟机:
    VMware-workstation-full-10.0.7-2844087.exe   #请购买正版软件
    ►CentOS镜像和虚拟机二选一:
    CentOS镜像:
    CentOS-7-x86_64-DVD-1503-01.iso   #centos官方镜像文件
    CentOS虚拟机:
    CentOS-64-sinlinx.zip               #sinlinx搭建好的VMware虚拟机
    ►sinlinx-a33-linux源码包:
    sinlinx-a33-linux-xxx.tar.gz             #xxx发布日期
    二、源码结构说明:
    ►lichee               #linux kernel boot rootfs
    ►tools
    pkgs              #pkgs for CentOS
    toolchain      #cross compile toolchain
    ►Qt
    qt-4.8.7           # QT4.8 source and compile script
    三、安装VMare+CentOS
    安装VMware
    全部点下一步安装即可
    安装CentOS
    注:若不想自己安装可直接下载我们搭建的虚拟机,然后再VMware中打开,用root用户登录,密码为HelloSinlinx,并直接从“编译Linux”开始
    选择自定义安装
    图片1.png
    图片2.png
    图片3.png
    图片4.png
    图片5.png
    图片6.png
    图片7.png
    图片8.png
    图片9.png
    图片10.png
    图片11.png
    图片12.png
    图片13.png
    图片14.png
    安装CentOS
    启动刚才创建的虚拟机:CentOS-64-sinlinx
    图片15.png
    这里主要改一下“Data & Time”和“SOFTWARE SELECTION”,其他默可。
    图片16.png
    ►“SOFTWARE SELECTION”按下图所示选择

    图片17.png

    图片18.png

    ►然后开始安装,过程中设置一下root密码和user账户。
    图片19.png
    ►安装完后重启,登陆ROOT用户,选择语言(建议选英文)等配置。
    图片20.png
    图片21.png
    至此,VMware+CentOS安装完毕。
    四、更新CentOS
    CentOS由于很追求稳定性,所以官方源中自带的软件不多,因而需要一些第三方源,比如EPEL、ATrpms、ELRepo、Nux Dextop、RepoForge等。根据上面提到的软件安装原则,为了尽可能保证系统的稳定性,此处大型第三方源只添加EPEL源、Nux Dextop和ELRepo源。
    安装注意要先打开网络连接,若执行yun install时提示/var/run/yum.pid被锁定,可将其删掉后再试。
    ►EPEL
    EPEL即Extra Packages for Enterprise Linux,为CentOS提供了额外的10000多个软件包,而且在不替换系统组件方面下了很多功夫,因而可以放心使用。
    yum install epel-releasels
    执行完该命令后,在/etc/yum.repos.d目录下会多一个epel.repo文件。
    ►Nux Dextop
    Nux Dextop中包含了一些与多媒体相关的软件包,作者尽量保证不覆盖base源。官方说明中说该源与EPEL兼容,实际上个别软件包存在冲突,但基本不会造成影响:
    release-0-5.el7.nux.noarch.rpm
    完成该命令后,在/etc/yum.repos.d目录下会多一个nux-dextop.repo文件。
    ►ELRepo
    ELRepo包含了一些硬件相关的驱动程序,比如显卡、声卡驱动:
    .rpm
    完成该命令后,在/etc/yum.repos.d目录下会多一个elrepo.repo文件。
    ►安装yum-axelget
    yum-axelget是EPEL提供的一个yum插件。使用该插件后用yum安装软件时可以并行下载,大大提高了软件的下载速度,减少了下载的等待时间:
    yum install yum-axelget
    安装该插件的同时会安装另一个软件axel。axel是一个并行下载工具,在下载http、ftp等简单协议的文件时非常好用。
    ►全面更新
    在进一步操作之前,先把已经安装的软件包都升级到最新版:
    yum update
    要更新的软件包有些多,可能需要一段时间。不过有了yum-axelget插件,速度已经快了很多啦。
    ►重启
    重启虚拟机。
    五、编译源码前准备►安装源码
    在虚拟上新建目录
    mkdir -p /root/work/sinlinx/a33
    将源码包(sinlinx-a33-linux-xxx.tar.gz)拷贝至该目录下并解压,然后从git中提取文件
    cd /root/work/sinlinx/a33
    tar -xvf sinlinx-a33-linux-xxx.tar.gz      #解压后得到“.get”目录
    git reset --hard                               #执行完此步骤才能看到文件
    ►安装交叉编译环境
    将arm-2014.05-29-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2解压到/opt目录
    Tar -jxvf /root/work/sinlinx/a33/tools/toolchain/arm-2014.05-29-arm-none-linux-
    gnueabi-i686-pc-linux-gnu.tar.bz2 -c /opt/
    ►添加环境变量:修改/etc/bashrc文件,在最后添加
    export PATH=$PATH:/opt/arm-2014.05/bin
    ►安装依赖库
    yum install xulrunner.i686
    yum install libXtst.i686
    yum install texinfo
    yum install zlib-devel.x86_64
    yum install fakeroot
    cd /root/work/sinlinx/a31s/tools/pkgs
    rpm -ivh uboot-tools-2011.03-1.el6.x86_64.rpm
    rpm -ivh busybox-1.15.1-21.el6_6.x86_64.rpm
    六、编译QT4.8.7►编译QT
    进入qt源码所在路径,直接运行build.sh即可,另外可根据自己的需求修改build.sh中的QT配置选项
    cd /root/work/sinlinx/a33/qt-4.8.7
    ./build.sh
    编译完成后会自动安装到/opt/qt-4.8.7目录
    七、编译Linux
    ►配置
    cd /root/work/sinlinx/a33/lichee
    ./build.sh config
    Welcome to mkscript setup progress
    All available chips:
    0.sun8iw5pl
    Choice:0
    All available platforms:
    0.Linux
    Choice:0
    All available QT:
    0.None     #文件系统不包含QT
    1.Qt4.8.7   #QT4.8.7
    Choice:1
    All available kernel:
    0.linux-3.4
    Choice:0
    All available boards:
    0.Sinlinx
    Choice:0
    ►编译
    ./build.sh
    编译完成后有如下提示
    图片28.png
    ►打包镜像文件
    ./build.sh pack
    完成后会显示镜像img文件所在的路径
    图片29.png
    注:
    SINA33 Linux的rootfs路径位于/root/work/sinlinx/a33/licheebuildroot/target/sinlinx/rootfs
    在制作镜像文件之前可以将要安装的程序拷贝到该目录下,另外可修改该路径下“sinlinx/autorun.sh”文件来更改自动加载的驱动、配置以及自启动应用程序。
    八、附录
    1.校准触摸屏
    在串口控制台输入命令进行校准
    ts_calibrate
    2.校准测试
    ts_test
    3.使用扩展空间
    默认的img烧写后剩余空间很小,用df命令查看
    df
    用fdisk -l命令查看分区大小
    fdisk -l
    /dev/mmcblk0p1 有很大的空间,我们可将其格式化后挂载上来使用  
    Mkfs.ext4 /dev/mmcblk0p1      #格式化,只执行一次即可
    Mkdir /udisk
    Mount /dev/mmcblk0p1 /udisk   #挂载,可将其写到启动脚本内开机自动挂载
    再次输入df查看
    图片22.png
    成功挂载以后我们将文件拷贝到/udisk目录下即可,另外可挂载命令写到/sinlinx/autorun.sh脚本中。
    4.搭建QT APP开发环境
    开启SSH服务
    Qt Creater可直接通过ssh部署运行程序,首先我们需要打开开发板的ssh服务。在串口控制台输入如下命令
    /sinlinx/sshd start
    开启后可载虚拟机上用ssh命令测试,需要先知道开发板的IP地址(用ifconfig命令查看)。
    注意:每次重启开发板后需要手动开启ssh服务,也可将该命令写到/etc/profile脚本里开机自动启动。
    在虚拟机(CentOS7)上安装QtCrea
    将qt-creator-opensource-linux-x86_64-3.5.1.run拷贝到虚拟机中,双击安装,全部点下一步即可。
    Qt Creator设置
    注:SINA31s与SINA33此部分一致
    打开Qt Creator(Applications->Programming->Qt Creator)
    添加新的设备
    点击Tools->Options...->Devices
    点Add添加新设备,配置如下图所示,其中Host name处填开发板的IP,用户名为root,密码sinlinx
    图片23.png
    点Test按钮,若成功的话提示如下:
    图片24.png
    注意:开发板默认是通过DHCP获取IP地址,所以重启后IP可能会改变,这时要重新修改Host name
    设置编译运行选项
    点击Tools->Options...->Build&Run
    打开Compilers选项卡添加编译工具,完成后点Apply保存。

    图片25.png
    打开Qt Versions添加Qt版本,完成后点Apply保存
    图片26.png
    打开Kits添加配置,之后点OK完成配置
    图片27.png



    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /2 下一条

    手机版|小黑屋|与非网

    GMT+8, 2024-4-20 08:59 , Processed in 0.112348 second(s), 16 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.