soc开发环境初步安装

  • ubuntu开发环境安装
    • vsftp
    • 安装vim
    • 安装gcc及g++
    • 安装vscode
    • 安装git
  • 硬件开发准备
    • 装串口驱动
    • 装以太网驱动
    • 做系统固件(也可以跳过)
    • 补充
      • 查看系统版本
      • 安装软件时会遇到无法获得资源,是否有其他资源正在占用问题,如sudo apt-get install 提示不可用
  • 板子端开发环境搭建
    • 交叉编译器
      • 选定交叉编译环境
  • 实例
    • 开发流程
      • 检查系统需求
      • 搭建编译环境
      • 选择设备
      • 系统定制
      • 编译与打包
      • 烧录并运行
    • 主机编译环境搭建(对应的就是ubuntu开发环境安装)
      • 出现无法定位软件包 ia32-libs-y的问题?
    • 烧录软件安装
      • 解决没有dkms问题?
      • 添加LiveSuit文件操作权限问题
      • 使用
        • 执行过程中出现 "error while loading shared libraries: libpng12.so.0 : cannot open shared object file: No such file or directory"??

自已之前接触到的linux开发板,应该是2014年购买的友善之臂的210,当时也是花了不少钱,但也一直没用上,也没什么项目可做。这次项目是基于一个soc的,所以就先从这个芯片开发环境入手了解下。

关于开发前的ubuntu使用,自己在2019时,已经使用过一段时间了,所以不陌生。但没有在上面开发过程序。自己的电脑也本来就是双系统的。所以就不像公司之前的项目一样,还要安装什么vm ware,还要在windown下安装linux虚拟机。

ubuntu开发环境安装

vsftp

ubuntu与windows做交互的,相互传文件(windowns端需要安装一个ftp工具,像file zilla,虚拟机安装的ubuntu本身就相当于一台电脑可以设置自己的网络ip,通过这个ip,windowns与ubuntu间就可以相互传文件了。)。做网络传输的,由于本身就是基于Linux ubuntu开发,所以这个暂时不用安也可以。

终端执行,sudo apt-get install vsftpd

同时要启动一下,执行:/etc/init.d/vsftpd restart,然后在windows端启动ftp工具,就可以看到ubuntu下的文件。

安装好这个工具后,同时按ctrl+alt,就可以方便的切出到windows

安装vim

脚本终端的编辑器,用来发命令的。这个之前玩ubuntu时,也应该安装上了。

终端执行:

sudo apt-get purge vim common
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install vim

安装gcc及g++

终端执行gcc -v;默认ubuntu是自带的。
终端执行g++ -v;默认也是自带的。

如果没装的话,就执行sudo apt-get install g++//编译c++程序,
sudo apt-get install gcc//编译c程序

安装vscode

用来编写代码的,已经安装好了。有三种安装方式:

  1. sudo dpkg -i 安装包名称.deb(这个是linux下安装包格式)

  2. make make install,下载源码形式

  3. apt-get ,网络安装方式,类似于手机。

安装git

用来git代码和管理。

执行sudo apt-get git

硬件开发准备

拿到手后,一般硬件上像全志或齐感的SOC芯片的linux操作系统已经安装好了,一般是OS装到了TF卡里面。先上电,等待系统启动后,再插USB调试端口还有以太网或手机卡。

装串口驱动

windows下就是装ch340或其他驱动,ubuntu下就是安装相应的驱动。

然后安装与板子交互的工具如moba或Xbell,通过串口连接到板子上串口,就可以交互了。

装以太网驱动

单片机一般通过jlink或stlink来下载程序,但linux很多时候都是通过以太网来下载或调试程序。

通过scp 文件 root@板子IP,来将文件传到板子上的linux.

做系统固件(也可以跳过)

常规的就是准备TF卡读卡器,然后将tf卡变成启动盘。然后把linux烧录到 外置的flash里面就可以了。

补充

查看系统版本

执行:uname -a

安装软件时会遇到无法获得资源,是否有其他资源正在占用问题,如sudo apt-get install 提示不可用

这时表示要进行软件的一个升级。需要执行以下两步。

sudo apt-get update//更新资源
sudo apt-get  upgrade//更新软件

板子端开发环境搭建

实现过程:先在pc端编写好程序,通过交叉编译工具,下载到板子端运行。

交叉编译器

通过它可以生成在arm端可运行的程序,然后拷贝到arm上的linux系统里,然后通过串口与板子交互,发送运行这个程序的命令,就可以看到板子上的linux在执行这个程序了。

选定交叉编译环境

pwd:显示相关目录的路径.,建立一个路径:sudo mkdir -p /home/guangod/qgsdk/buildroot
注:删除一个路径:sudo rmdir -p /home/guangod/qgsdk/buildroot

实例

Tina Linux是基于 openwrt-14.07 的版本的软件开发包。而openwrt是一个开源的嵌入式linux自动构建框架,由makefile和kconfig构成。

开发流程

检查系统需求

只支持ubuntu操作系统下的编译。

搭建编译环境

开发机器需要安装的各种软件包和工具

选择设备

在编译源码前,开发者需要先导出预定义环境变量,然后根据开发者根据的需求,选择对应的硬件板型.

系统定制

开发者可以根据使用的硬件板子、产品定义,定制 U-Boot、Kernel 及 Openwrt

编译与打包

完成设备选择、系统定制之后执行编译命令,包括整体或模块编
译以及编译清理等工作,进一步的,将生成的 boot/内核二进制文件、根文件
系统、按照一定格式打包成固件。

烧录并运行

继生成镜像文件后,将介绍如何烧录镜像并运行在硬件设备。

主机编译环境搭建(对应的就是ubuntu开发环境安装)

ubuntu作为编译服务器,通过usb或串口与开发板相连,可将编译后的镜像文件烧写到目标硬件板,并调试程序。

需要安装gcc, binutils, bzip2,flex, python, perl, make,ia32-libs, find, grep, diff, unzip, gawk, getopt, subversion, libzdev, libc headers.
或直接输入命令:
sudo apt-get install build-essential subversion git libncurses5-dev zlib1g-dev gawk flex quilt libssl-dev xsltproc libxml-parser-perl mercurial bzr ecj cvs unzip ia32-libs-y

实际操作时,无论是一个个输安装命令还是其他一块安装的方式,都会出现无法定位软件包的问题???
原因为:复制时的斜杠为全角,输一遍半角,就可以直接安装上了.

出现无法定位软件包 ia32-libs-y的问题?

安装替代安装包:sudo apt-get install libc6:i386 libgcc1:i386 gcc-4.6-base:i386 libstdc++5:i386 libstdc++6:i386

stack overflow上的答案:

sudo -i
cd /etc/apt/sources.list.d
echo "deb http://old-releases.ubuntu.com/ubuntu/ raring main restricted universe multiverse" >ia32-libs-raring.list
apt-get update
apt-get install ia32-libs

烧录软件安装

路径为:/media/guangod/娱乐盘/QiganCenter/software/tools/aw_tools/.
使用./LiveSuit.run运行时提示没有dkms?

解决没有dkms问题?

dkms是一个内核模块管理工具.
刚开始选的几个发布源,确这是没有这个的,后来经过同事指点,在百度上搜dkms安装包,发现在ubuntu 官网上就有这个包,重新在"软件和更新"选择ubuntu官方的发布源,再执行sudo atp-get install dkms,好了,安装上了.

添加LiveSuit文件操作权限问题

chmod 777 LiveSuit.run,提示权限不足,这个777实质是文件调用权限分为三级 : 文件所有者(Owner)、用户组(Group)、其它用户(Other Users)。r,w,x,x就是可执行权限,用八进制数表示的.

使用

先输入命令:cd ~/Bin/LiveSuit

然后输入:./LiveSuit.sh

执行过程中出现 “error while loading shared libraries: libpng12.so.0 : cannot open shared object file: No such file or directory”??

从Launchpad.net 这个网站下载libpng12-0_1.2.54-1ubuntu1.1_amd64.deb,这个安装包,直接安装上即可.

登堂入室之soc开发环境及硬件开发准备相关推荐

  1. android开发环境建立以及开发工具的使用--怎样使用eclipse来开发android源码

    /** 版本:1.0 日期:2009-04-01 作者:HKjinzhao 备注: 转自:http://blog.csdn.net/hkjinzhao/article/details/4043997 ...

  2. Flutter 从配制开发环境再到开发第一个应用

    Flutter 从配制开发环境再到开发第一个应用 从java开发走起,开发java,先下载jdk sdk,然后配制环境变量,最后配制开发工具,进入开发. 在Flutter这里,也是先下载 Flutte ...

  3. Android连载之:第二章第三节:利用其他的开发环境和工具开发Android应用程序

    2.3 利用其他的开发环境和工具开发Android应用程序 推荐使用带有Android插件的Eclipse来开发Android应用程序,ADT插件提供了编辑.编译.调试功能并集成进了IDE中.然而,S ...

  4. 【Linux Mint 深度学习开发环境搭建】开发软件安装

    系列文章目录 第一章 Linux mint 深度学习开发环境搭建之Nvidia显卡相关软件安装 第二章 Linux mint 深度学习开发环境搭建之开发软件安装 第三章 Linux mint 深度学习 ...

  5. python开发工具及环境配置_python_在windows下安装配置python开发环境及Ulipad开发工具...

    最近开始学习Python,在网上寻找一下比较好的IDE.因为以前用C#做开发的,用Visual Studio作为IDE,鉴于用惯了VS这么强大的IDE,所以对IDE有一定的依赖性. Python的ID ...

  6. 鸿蒙开发起步系列 | 环境搭建、HarmonyOS应用开发及智能硬件开发

    本文从鸿蒙环境搭建开始说起,并汇总了HarmonyOS智能硬件开发和应用开发的一手资料,全场景剖析HarmonyOS系统究竟是什么.如何助力开发者更便捷高效地开发应用. 1.我的鸿蒙起步--开发环境搭 ...

  7. 可以运行vivado的云服务器,百度云服务器FPGA标准开发环境的逻辑开发与编译示例 - 全文...

    镜像是云服务器实例运行环境的模板,包括操作系统和预装软件等配置.百度云为每个FPGA实例默认提供了专属公共镜像,用户可以按需选择适合的镜像类型. 概述 基于百度云自研的FPGA加速卡,提供了一套FPG ...

  8. java 开发环境配置_Java 开发环境配置

    在本章节中我们将为大家介绍如何搭建Java开发环境.Windows 上安装开发环境 Linux 上安装开发环境 安装 Eclipse 运行 Java window系统安装java 下载JDK 首先我们 ...

  9. python有哪些常见的开发环境_Python集成开发环境有哪些

    对于Python集成开发环境,你更喜欢哪一款? 0.Spyder Spyder是Python(x,y)的作者为它开发的一个简单的集成开发环境.和其他的Python开发环境相比,它最大的优点就是模仿MA ...

最新文章

  1. android手势放大自动还原,ImageView通过matrix实现手势缩放,放大,缩小 ,移动
  2. 第二次 图书助手冲刺第一天
  3. java 正则表达式提取价格
  4. 哈佛经济学教授卧底贫民窟8年,揭开穷人最大真相:这比贫穷更可怕
  5. XXX 不是当前用户的有效责任,请联系您的系统管理员
  6. mysql 1055 解决方案_MySQL报错1055解决方案 - 树懒学堂
  7. SpringBoot 2.0 Actuator监控系统
  8. SGPN: Similarity Group Proposal Network for 3D Point Cloud Instance Segmentation
  9. 树的基本定义表示方法
  10. centos6.8 开启透传
  11. turboc7运行C测试 vc6.0测试
  12. 2021Java春招,java求职简历模板下载
  13. 漫谈《大型网站技术架构》
  14. Arduino通过HX1838红外接收模块控制红色发光LED
  15. 人工客服行业遭重创,背后支撑的力量
  16. 教你如何使用关键词获取淘宝和天猫的商品信息
  17. 如何让开源多点成功的几率;开源和 COVID-19: 道高一尺魔高一丈;等开源之道每周评论2020 04 07...
  18. 碳素结构钢的实际拉伸性能可能与规定的最小值不同
  19. 14. vue的插槽
  20. JetPack Compose之Modifier修饰符

热门文章

  1. 圆通山美食城旅游发展总体规划
  2. ubuntu添加freeradius字典dictionary
  3. 三星手机虚拟定位服务器,三星量产企业服务器用3.2TB NVMe SSD
  4. 【无标题】C#上位机与三菱PLC FX2NC通讯方法
  5. 专项测试之Web测试
  6. 虚拟机与Linux的安装
  7. 考研复试个人陈述范文(共9篇)
  8. aspen和python一起使用_aspen plus 能不能用python
  9. 几个编程语言的优缺点
  10. 如何下载网课资料? PPT+视频