STM32MP157_Linux5.4+QT6.7.2+openCV开发——2环境准备

Ubuntu的选择

根据QT官网对v6.7.2的描述(Qt for Linux/X11 | Qt 6.7),

至少需要使用ubuntu22.04以上的版本。

注意GCC编译器的版本也需要相应的适配,此处暂时不着急,我们先把ubuntu22.04虚拟机搞定,这些包都可以通过 sudo apt-get install <xxx>去搞定。

虚拟机的创建

  1. 安装 VMware® Workstation 16 Pro ;
  2. 去阿里云镜像网站上下载ubuntu-22.04的镜像
    ubuntu-releases-22.04.4安装包下载_开源镜像站-阿里云 (aliyun.com)
    选择 ubuntu-22.04.4-desktop-amd64.iso 下载即可;
  3. 创建虚拟机,配置建议如下,用户名,密码可以暂时都设置简单点,毕竟只是学习过程:

    创建过程参考可以参考该博主,不在赘述:VMware虚拟机的创建和启动,保姆式教学_vmware workstation pro创建新的虚拟机-CSDN博客
  4. 语言设置务必将文件目录的文件夹名设置为英文,避免各种编译器不兼容的情况出现;

虚拟机的基本环境配置

设置软件更新源的服务器为国内服务器【这里选择阿里云服务器】

依次运行如下指令
sudo apt-get install git #安装git工具
sudo apt-get install net-tools #安装nettools
sudo apt-get install build-essential libgl1-mesa-dev  #qt6.7.2需要的底层支持
sudo apt-get install libxcb-cursor0  #linux图形编程库
sudo apt-get install make #安装make构建套件
sudo apt-get install nfs-kernel-server  #nfs网络文件系统配置
sudo apt-get install libssl-dev #SSL服务
sudo apt-get install openssh-server  #SSH服务,nfs的使用需要基于这个服务
sudo systemctl start ssh #启用SSH
sudo apt-get install python3 #安装python3
sudo ln -s /usr/bin/python3 /usr/bin/python  #连接python脚本环境变量(将python与python3两个环境变量进行连接)
sudo apt-get install python3-pip #安装python的pip
pip install jinja2 opencv-python matplotlib numpy 
sudo apt-get install tree #安装树状文件查看
sudo apt-get install xfig #绘图库
sudo apt-get install make gcc-arm-linux-gnueabihf gcc bison flex libssl-dev dpkg-dev lzop vim
sudo apt-get install build-essential cmake pkg-config
sudo apt-get install libncurses-dev  #使用buildroot 需要使用 menuconfig图形界面配置需要安装此
sudo apt-get install imagemagick-6.q16hdri  #可以使用corvent将各种格式的图片进行互相转化,如logo.ppm
sudo apt-get install gcc-multilib g++-multilib
sudo apt-get install libcap-dev
sudo apt-get install libmount-dev
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt-get update

网络设置

  1. Ubunte虚拟机的网络配置。
    进入【setting】菜单-->选择【网络】-->设置【第二个以太网】的ipv4

  2. windows的网卡设置

  3. 开发板的网络设置
    使用MobaXterm连接开发板
    输入  ifconfig eth0 192.168.5.9   配置开发板ip
    使用  ifconfig  确认是否配置成功

    也可以使用如下代码对开发板IP进行永久配置
     

    vi /etc/systemd/network/50-static.network   #编辑网络配置文件
    
    
    
    [Match] 
    	Name=eth0 
    [Network] 
    	Address=192.168.5.9/24 
    Gateway=192.168.5.1
    
    
    
    
    
    systemctl enable systemd-networkd  #重启网络
    

网络文件系统(nfs)的使用

在linux系统编程中,我们往往使用网络文件系统的方式将文件拷贝到嵌入式硬件中,以便快速实现软件的部署和运行。根据上述【网络设置】的内容,我们实际上可以实现任意平台到任意平台的文件操作,接下来是相关的配置操作。

  1. windows与ubuntu之间的文件传输:
    获取ubuntu的网络IP
    在windows中打开【MobaXterm】软件
    创建SSH连接,输入如下信息,注意:端口号为22
    正确输入ubuntu密码


    打开windows的【FileZilla】软件
    正确输入在【MobaXterm】中输入过的信息,快速连接即可

    这样我们可以在windows界面下进行QT开发,验证通过后将源码拷贝到ubuntu中进行交叉编译,最后传输到开发板中。
  2. ubuntu和linux开发板之间的文件传输:
    cd /etc  #进入ect文件夹
    
    sudo touch exports #创建exports文件,注:记得修改文件权限,且只能修改本文件,/etc/下的文件不能 
                       #随意修改,要不然麻烦很大
    
    sudo vim /etc/exports  #编辑exports文件
    
    #最后一行添加  
    /home/book/  *(rw,nohide,insecure,no_subtree_check,async,no_root_squash)
    
    
    sudo /etc/init.d/nfs-kernel-server restart #重启nfs
    
    cat /etc/exports #快速浏览exports文件
    #其返回值  /home/book/  *(rw,nohide,insecure,no_subtree_check,async,no_root_squash)
    #代表了该目录下无权限就可以访问
    
    ps -A | grep nfs  #检查ubuntu是否开启nfs服务 返回值中有nfsd字样表示开放此服务
    
    
    #通过ubuntu自己挂载自己nfs服务,验证是否成功  /mnt就是指定网络文件路径的别名
    sudo mount -t nfs -o nolock,vers=3 192.168.153.139:/home/book/nfs_rootfs/ /mnt
    ls /home/book/nfs_rootfs/
    ls /mnt
    
    #开发板通过nfs服务挂在文件夹  /mnt就是指定网络文件路径的别名
    mount -t nfs -o nolock,vers=3 192.168.5.11:/home/book/nfs_rootfs /mnt
    
    
    
     

     




待续。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值