IMX6ULL基本环境搭建
基本环境搭建
1 交叉编译工具
在虚拟机中安装交叉编译工具,为后续开发做准备。
1.1 工具版本
工具版本:Linaro Releases
当前虚拟机为64位系统,因此下载64位系统的工具:
$ uname -a
Linux localhost.localdomain 3.10.0-693.el7.x86_64 #1 SMP Tue Aug 22 21:09:27 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
1.2 安装说明
将工具安装在:/usr/local/arm/arm-linaro-4-9-4目录
1)将工具压缩包拷贝到安装目录:
[root@localhost] /usr/local/arm/arm-linaro-4-9-4
$ ls
gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz*
2)解压缩
tar -vxf gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz
3)修改环境变量,在文件末尾添加编译工具链路径
$ vim /etc/profile
export PATH=$PATH:/usr/local/arm/arm-linaro-4-9-4/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf/bin
4)重启虚拟机
5)查看安装是否成功
$ arm-linux-gnueabihf-gcc -v
Thread model: posix
gcc version 4.9.4 (Linaro GCC 4.9-2017.01)
2 网络环境配置-方式1
参考文档:【正点原子】I.MX6U网络环境TFTP&NFS搭建手册V1.3.1.pdf
2.1 网络拓扑
拓扑图如下:
开发板:开发板配置IP为192.168.1.20,通过网线和笔记本相连,由于电脑没有网口,通过USB转网口相连。
有线网卡:有点网卡配置的IP为192.168.1.8。
笔记本:笔记本的WiFi配置IP为192.168.1.6,笔记本中安装有虚拟机。
虚拟机:虚拟机配置IP为192.168.1.10,虚拟机设置为桥接模式,桥接在有线网卡上。
2.2 基本配置
虚拟机需要配置2个网卡,一个用于和开发板进行通信,一个用于上网。
(1)虚拟机配置为桥接模式(用于和开发板之间通信)
(2)虚拟机上网还需要再配置一个网卡,配置为NAT模式,用于虚拟机上网。
(3)启动虚拟机,可以看到虚拟机有两个网卡。
ens33是用于和开发通信的(需要和有限网卡配置在同一个网段);
ens37是用于上网的,登录SSH也可以使用这个地址。
2.3 测试
开发板Ping虚拟机:
root@ATK-IMX6U:~# ping 192.168.1.10
PING 192.168.1.10 (192.168.1.10) 56(84) bytes of data.
64 bytes from 192.168.1.10: icmp_seq=1 ttl=64 time=1.92 ms
64 bytes from 192.168.1.10: icmp_seq=2 ttl=64 time=1.65 ms
64 bytes from 192.168.1.10: icmp_seq=3 ttl=64 time=1.29 ms
虚拟机Ping开发板:
$ ping 192.168.1.20
PING 192.168.1.20 (192.168.1.20) 56(84) bytes of data.
64 bytes from 192.168.1.20: icmp_seq=1 ttl=64 time=0.704 ms
64 bytes from 192.168.1.20: icmp_seq=2 ttl=64 time=0.546 ms
64 bytes from 192.168.1.20: icmp_seq=3 ttl=64 time=1.12 ms
虚拟机Ping百度:
$ ping www.baidu.com
PING www.baidu.com (39.156.66.18) 56(84) bytes of data.
64 bytes from 39.156.66.18 (39.156.66.18): icmp_seq=1 ttl=128 time=40.3 ms
64 bytes from 39.156.66.18 (39.156.66.18): icmp_seq=2 ttl=128 time=43.9 ms
64 bytes from 39.156.66.18 (39.156.66.18): icmp_seq=3 ttl=128 time=43.3 ms
64 bytes from 39.156.66.18 (39.156.66.18): icmp_seq=4 ttl=128 time=44.3 ms
笔记本Ping虚拟机:
C:\Users\grace>ping 192.168.1.10
正在 Ping 192.168.1.10 具有 32 字节的数据:
来自 192.168.1.10 的回复: 字节=32 时间=3ms TTL=128
来自 192.168.1.10 的回复: 字节=32 时间=5ms TTL=128
来自 192.168.1.10 的回复: 字节=32 时间=3ms TTL=128
C:\Users\grace>ping 192.168.17.128
正在 Ping 192.168.17.128 具有 32 字节的数据:
来自 192.168.17.128 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.17.128 的回复: 字节=32 时间<1ms TTL=64
3 网络环境配置-方式2
参考文档:关于电脑两个网卡,有线网络直连开发板,无线上网.pdf
分享文档 :关于电脑两个网卡,有线网络直连开发板,无线上网-OpenEdv-开源电子网
3.1 网络拓扑
拓扑图如下:
3.2 基本配置
虚拟机需要配置2个网卡(都使用桥接模式),一个用于和开发板进行通信,一个用于上网。
(1)虚拟机配置两个桥接模式:VMnet0用于桥接到笔记本,用于上网;VMnet1用于连接到有线网卡,和开发板进行通信。
(2)虚拟机配置两个网卡,都使用桥接模式。
(3)启动虚拟机
配置ens37的IP:
ifconfig ens37 192.168.1.15 up
3.3 测试
虚拟机Ping百度:
$ ping www.baidu.com
PING www.baidu.com (39.156.66.18) 56(84) bytes of data.
64 bytes from 39.156.66.18 (39.156.66.18): icmp_seq=1 ttl=52 time=39.8 ms
64 bytes from 39.156.66.18 (39.156.66.18): icmp_seq=2 ttl=52 time=42.1 ms
64 bytes from 39.156.66.18 (39.156.66.18): icmp_seq=3 ttl=52 time=39.8 ms
虚拟机Ping开发板:
$ ping 192.168.1.20
PING 192.168.1.20 (192.168.1.20) 56(84) bytes of data.
64 bytes from 192.168.1.20: icmp_seq=1 ttl=64 time=0.530 ms
64 bytes from 192.168.1.20: icmp_seq=2 ttl=64 time=1.29 ms
64 bytes from 192.168.1.20: icmp_seq=3 ttl=64 time=1.08 ms
开发板Ping虚拟机:
root@ATK-IMX6U:~# ping 192.168.1.15
PING 192.168.1.15 (192.168.1.15) 56(84) bytes of data.
64 bytes from 192.168.1.15: icmp_seq=1 ttl=64 time=0.702 ms
64 bytes from 192.168.1.15: icmp_seq=2 ttl=64 time=1.38 ms
3.4 遇到的问题
虚拟机配置双网卡后,无法通过SSH连接,Samba无法正常使用,FTP无法正常使用等问题。
解决办法:参考(16条消息) CentOS7 配置双网卡_Benny-文俊的博客-CSDN博客_centos7双网卡配置
主要途径:将笔记本有线网卡、虚拟机ens37网卡、开发板网卡重新配置在另外一个网段。
(1)配置双网卡为静态IP
1)网卡ens33,桥接到电脑的WiFi,需要用来连接外网,配置文件的内容如下:
$ pwd
/etc/sysconfig/network-scripts
$ vim ifcfg-ens33
1 TYPE="Ethernet"
2 PROXY_METHOD="none"
3 BROWSER_ONLY="no"
4 BOOTPROTO=static
5 DEFROUTE="yes"
6 IPV4_FAILURE_FATAL="no"
7 IPV6INIT="yes"
8 IPV6_AUTOCONF="yes"
9 IPV6_DEFROUTE="yes"
10 IPV6_FAILURE_FATAL="no"
11 IPV6_ADDR_GEN_MODE="stable-privacy"
12 NAME="ens33"
13 UUID="0ab7073a-2165-4e45-b6e2-536bbdd70077"
14 DEVICE="ens33"
15 ONBOOT="yes"
16 IPADDR=192.168.1.10
17 NETMASK=255.255.255.0
18 GATEWAY=192.168.1.1
19
20 DNS1=114.114.114.114
21 DNS2=8.8.8.8
2)网卡ens37,桥接到有线网卡,拷贝一份ens33的配置文件,取命为ens37,配置文件的内容如下:
$ vim ifcfg-ens37
1 TYPE="Ethernet"
2 PROXY_METHOD="none"
3 BROWSER_ONLY="no"
4 BOOTPROTO=static
5 DEFROUTE="yes"
6 IPV4_FAILURE_FATAL="no"
7 IPV6INIT="yes"
8 IPV6_AUTOCONF="yes"
9 IPV6_DEFROUTE="yes"
10 IPV6_FAILURE_FATAL="no"
11 IPV6_ADDR_GEN_MODE="stable-privacy"
12 NAME="ens37"
13 DEVICE="ens37"
14 ONBOOT="yes"
15 IPADDR=192.168.2.15
16 NETMASK=255.255.255.0
17 GATEWAY=192.168.2.1
和ens33的配置文件相比:
1、删除了UUID,这个是唯一的,不能和ens33重复;
2、删除了DNS1和DNS2,不需要上网。
3、配置的IP在192.168.2.0这个网段。
3 TFTP服务器搭建
TFTP(Trivial File Transfer Protocol,简单文件传输协议)是 TCP/IP 协议族中的一个用来在客户机与服务器之间进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务。我们可以使用 TFTP来加载内核zImage、设备树和其他较小的文件到开发板DDR上,从而实现网络挂载。
参考博客:linux-Centos 7下tftp-server服务的安装与配置 - 520_1351 - 博客园 (cnblogs.com)
Linux版本:
$ uname -a
Linux 192.168.17.128 3.10.0-693.el7.x86_64 #1 SMP Tue Aug 22 21:09:27 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
1)安装tftp服务器
$ yum install tftp-server -y
2)修改tftp配置文件来开启服务
$ vim /etc/xinetd.d/tftp
其中tftp的默认根目录为:/var/lib/tftpboot
3)可以使用TFTP服务的默认根目录,也可以修改一下,我这边进行修改。
$ pwd
/home/grace/IMX6U/tftpboot
# 更改目录权限
$ chmod 777 tftpboot/ -R
$ vim /etc/xinetd.d/tftp
# 更改为创建的路径,-c参数表示允许上传
13 server_args = -s /home/grace/IMX6U/tftpboot -c
4)启动tftp服务
$ service tftp restart
$ service tftp status
Redirecting to /bin/systemctl status tftp.service
● tftp.service - Tftp Server
Loaded: loaded (/usr/lib/systemd/system/tftp.service; indirect; vendor preset: disabled)
Active: active (running) since Sun 2022-04-17 14:50:06 CST; 2min 25s ago
Docs: man:in.tftpd
Main PID: 3712 (in.tftpd)
CGroup: /system.slice/tftp.service
└─3712 /usr/sbin/in.tftpd -s /var/lib/tftpboot
Apr 17 14:50:06 localhost.localdomain systemd[1]: Started Tftp Server.
Apr 17 14:50:06 localhost.localdomain systemd[1]: Starting Tftp Server...
可以看到,tftp的目录为/var/lib/tftpboot,也就是更改的目录路径无效。暂时还没找到原因
systemctl restart xinetd
systemctl restart tftp
4 总结
当前还有一些问题:
1)虚拟机起来之后需要配置ens37网卡的地址
ifconfig ens37 192.168.1.15 up
2)需要启动TFTP服务
$ service tftp restart
IMX6ULL基本环境搭建的更多相关文章
- .NET Core系列 : 1、.NET Core 环境搭建和命令行CLI入门
2016年6月27日.NET Core & ASP.NET Core 1.0在Redhat峰会上正式发布,社区里涌现了很多文章,我也计划写个系列文章,原因是.NET Core的入门门槛相当高, ...
- Azure Service Fabric 开发环境搭建
微服务体系结构是一种将服务器应用程序构建为一组小型服务的方法,每个服务都按自己的进程运行,并通过 HTTP 和 WebSocket 等协议相互通信.每个微服务都在特定的界定上下文(每服务)中实现特定的 ...
- rnandroid环境搭建
react-native 环境搭建具体步骤这个大家已经玩烂了,这个主要是记录下来自己做win7系统遇到的坑 1.com.android.ddmlib.installexception 遇到这个问题,在 ...
- python开发环境搭建
虽然网上有很多python开发环境搭建的文章,不过重复造轮子还是要的,记录一下过程,方便自己以后配置,也方便正在学习中的同事配置他们的环境. 1.准备好安装包 1)上python官网下载python运 ...
- springMVC初探--环境搭建和第一个HelloWorld简单项目
注:此篇为学习springMVC时,做的笔记整理. MVC框架要做哪些事情? a,将url映射到java类,或者java类的方法上 b,封装用户提交的数据 c,处理请求->调用相关的业务处理—& ...
- 【定有惊喜】android程序员如何做自己的API接口?php与android的良好交互(附环境搭建),让前端数据动起来~
一.写在前面 web开发有前端和后端之分,其实android还是有前端和后端之分.android开发就相当于手机app的前端,一般都是php+android或者jsp+android开发.androi ...
- Nexus(一)环境搭建
昨天,成功搭建了自己的 Maven 环境(详见:Maven(一)环境搭建),今天就来研究和探讨下 Nexus 的搭建! 使用背景: 安装环境:Windows 10 -64位 JDK版本:1.7 Mav ...
- 「译」JUnit 5 系列:环境搭建
原文地址:http://blog.codefx.org/libraries/junit-5-setup/ 原文日期:15, Feb, 2016 译文首发:Linesh 的博客:环境搭建 我的 Gith ...
- appium+robotframework环境搭建
appium+robotframework环境搭建步骤(Windows系统的appium自动化测试,只适用于测试安卓机:ios机需要在mac搭建appium环境后测试) 搭建步骤,共分为3部分: 一. ...
- Linux测试环境搭建的学习建议
随着Linux应用的扩展许多朋友开始接触Linux,根据学习Windwos的经验往往有一些茫然的感觉:不知从何处开始学起.这里介绍学习Linux测试环境搭建的一些建议. 一.Linux测试环境搭建从基 ...
随机推荐
- WPF开发随笔收录-操作注册表
一.前言 在windows平台软件开发过程中,注册表的操作是经常会遇到的一个场景.今天记录一下在操作注册表时遇到的一些坑: 二.正文 1.操作注册表,于是直接从网上找了一段代码来用 /// <s ...
- SQLite总结
废话不多说: 优点,高并发读快速度读取超越所有主流大中型数据库 缺点,缺少同步机制,读写不能同时,且同时只能有一个写入线程 用途,硬盘式缓存 另附一SQLite工具类: import java.io. ...
- 使用 Gradio 的“热重载”模式快速开发 AI 应用
在这篇文章中,我将展示如何利用 Gradio 的热重载模式快速构建一个功能齐全的 AI 应用.但在进入正题之前,让我们先了解一下什么是重载模式以及 Gradio 为什么要采用自定义的自动重载逻辑.如果 ...
- 硬之城携手阿里云 Serverless 应用引擎(SAE)打造低代码平台
简介: 简化用云的成本,把复杂留给自己,简单留给用户. 作者 | 陈泽涛(硬之城产品总监)& 洛浩(阿里云云原生高级架构师) 硬之城成立于 2015 年,是一家以电子元器件 BOM 整体供应为 ...
- 我们为什么要做 SoloPi
SoloPi现状 去年(2019年)7月份,蚂蚁集团正式对外开源了客户端自动化测试工具 SoloPi ,其主要包括三大模块:录制回放(用于功能测试).性能工具(用于性能测试)以及一机多控(服务于兼容性 ...
- OpenYurt:延伸原生 Kubernetes 到边缘场景下的落地实践
简介: 随着云原生技术的逐步成熟,阿里云容器服务团队在具体落地实践过程中不断探索云原生技术的应用边界.同时随着物联网和 5G 的迅猛发展,传统的边缘计算架构已经不能满足业务发展的需要. 如何基于云原生 ...
- 本周ddl(4.1-4.5)
本周ddl(4.1-4.5) cs61a首先完成2.23之前的任务 cs61a完成3.1之前的学习 cs61a完成3.8任务并且ants完成阶段1 csapp的bomblab 记录南京5个景点及其周边 ...
- 超级好用的 HBase GUI 工具分享
超级好用的 HBase GUI 工具分享 你是否曾为 HBase 数据管理而苦恼?别担心,这一款超级好用的 HBase GUI (HBase Assistant)工具,让您在大数据世界中游刃有余.不再 ...
- NopCommerce 多数据库方案
本文转自:http://www.cnblogs.com/YUTOUYUWEI/p/5538200.html 有时候一个项目需要连接多个数据库,以实现不同数据库的数据在同个项目的共享. 如果已经安装了n ...
- Git——关于Git的一些补充(1)
Git--关于Git的一些补充(1) 提示:图床在国外且动图比较多的情况下,需要时间加载. 目录: 目录 Git--关于Git的一些补充(1) 提示:图床在国外且动图比较多的情况下,需要时间加载. 目 ...