mt2523 LinkIt_SDK_v4_GCC_Build_Environment_Guide

2024-03-08 16:48

本文主要是介绍mt2523 LinkIt_SDK_v4_GCC_Build_Environment_Guide,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

mt2523 LinkIt_SDK_v4_GCC_Build_Environment_Guide--MediaTek Linkit™SDK v4 GCC构建环境指南

MediaTek Linkit™软件开发工具包(SDK)v4 GNU编译器集合(GCC)构建环境指南提供了安装支持构建环境和运行项目的工具以及安装支持构建环境和运行项目的实用程序。

该文件指导你:
• 设置构建环境
• 使用SDK构建项目
• 向中间件添加模块
• 创建自己的项目

构建环境指南应用于用于实时操作系统的MediaTek Linkit™开发平台,包括Linkit MT7687 HDK和Linkit MT2523 HDK。本文档中的示例以Linkit MT7687为基础,但内容也可以应用于Linkit MT2523 hdk。

2. Environment

本节提供了关于如何在linux操作系统上和microsoft windows上使用mingw交叉编译工具设置默认GCC的sdk构建环境的详细指导。

1.1. Installing the SDK build environment on Linux

在Linux操作系统上设置构建环境需要SDK中提供的默认GCC编译器。以下描述基于Ubuntu14.04LTS环境。

注意,LinkitSDK可以在任何版本的Linux操作系统上使用。SDK中提供的默认GCC编译器基于32位架构。

在构建项目之前,请验证是否安装了构建环境所需的工具链,如表1所示。

下面的命令下载并安装Ubuntu上的基本构建工具

sudo apt-get install build-essential

注意,在不安装支持32位可执行二进制程序包的情况下,在64位系统上使用默认GCC交叉编译器构建Linkit sdk时会发生编译错误,如图所示。

/bin/sh: 4: tools/gcc/gcc-arm-none-eabi/bin/arm-none-eabi-gcc: not found

下面显示了安装基本构建工具的命令和在Ubuntu14.04上支持32位二进制可执行文件的包。

sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install libc6-i386

可穿戴应用程序,例如基于TouchGFX框架的手表,需要Ruby来生成资源文件。查找有关如何在<sdk_root>\project\mt2523_watch\apps\watch_demo\readme.txt

按照以下说明安装SDK包<sdk_root>/readme.txt. The default installation path 
of the GCC compiler is <sdk_root>/tools/gcc, and the compiler settings are in the <sdk_root>/.config
configuration file. 

在.config文件中设置BINPATH,如下所示。

BINPATH = $(SOURCE_DIR)/tools/gcc/gcc-arm-none-eabi/bin

1.2. Installing the SDK build environment on Microsoft Window

要在Windows操作系统上构建该项目,请安装MinGW交叉编译器,并将ARM GCC Windows工具链与LinkIt SDK集成

1.2.1. Preparing the cross-compiler tool
1) 从这里下载mingw-get-setup.exe
2) 启动安装程序,然后单击install(参见图1)。

3)按照屏幕上的说明并保留默认设置,然后单击“继续”将该工具下载到C:\MinGW安装目录(见图2)。

4)下载完成后,单击MinGWInstallationManager安装工具继续(见图3)

5)从基本安装包列表中选择msys-base和mingw 32-base,然后右击以显示菜单选项。单击菜单中的安装标记(见图4)

6)单击Installation菜单中的“应用更改”(请参见图5)。

7)单击弹出对话框窗口上的应用(请参见图6)

8)单击“关闭”以在操作完成后关闭对话框窗口(请参见图7)

9) Navigate to C:\MinGW\msys\1.0 folder and launch the MinGW terminal by running msys.bat to 
create home/<user_name> folder.

10)将SDK复制到MinGWhome/<user_name>文件夹,如图8所示

11) 从这里下载ARM-GCC-Win 32
a) 创建一个名为Win的新文件夹<sdk_root>/tools/gcc/. 
b) Unzip the content of gcc-arm-none-eabi-4_8-2014q3-20140805-win32.zip to 
<sdk_root>/tools/gcc/win/ folder. 
c) 将解压缩的GCC-ARM-None-eabi-4_8-2014q3-20140805-win 32文件夹重命名为GCC-ARM-noneeabi,如图9所示

12)使用build.sh在MinGW终端中编译项目,如第3节“使用SDK构建项目”所述。

1.2.2. Troubleshooting 

在Windows操作系统上使用MinGW构建项目时,请注意以下注意事项
• LinkitSDK中的文件夹名和文件名不应包含“、”[“or”]“字符。
• 项目名称应小于30个字符。否则,由于路径较长,可能会出现与下面所示的生成错误类似的生成错误。

arm-none-eabi-gcc.exe:
error: ../../../../../out/mt2523_hdk/i2c_communication_with_EEPROM_dma/obj
/project/mt2523_hdk/hal_examples/i2c_communication_with_EEPROM_dma/src/sys
tem_mt2523.o: No such file or directory

• 项目中的makefile不应使用任何依赖于平台的命令或文件,例如stat或/proc/cpuinfo
• MinGW安装目录应该是C:\MinGW。否则,如果mingw安装路径非常深,则可能会发生生成错误。
• 要构建httpd项目,为GCC命令导出mingw/bin路径,然后通过启动mingw安装管理器(mingw-get-setup.exe)并选择re,安装msys-vim包for xxd命令。安装,如图10所示

export PATH=$PATH:/c/MinGW/bin:

默认情况下,将在build.sh中启用并行构建功能,以加快编译速度。禁用并行生成功能,如果发生任何不合理的生成错误或系统异常。

这篇关于mt2523 LinkIt_SDK_v4_GCC_Build_Environment_Guide的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/787732

相关文章

如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解

《如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解》:本文主要介绍如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别的相关资料,描述了如何使用海康威视设备网络SD... 目录前言开发流程问题和解决方案dll库加载不到的问题老旧版本sdk不兼容的问题关键实现流程总结前言作为

Linux编译器--gcc/g++使用方式

《Linux编译器--gcc/g++使用方式》文章主要介绍了C/C++程序的编译过程,包括预编译、编译、汇编和链接四个阶段,并详细解释了每个阶段的作用和具体操作,同时,还介绍了调试和发布版本的概念... 目录一、预编译指令1.1预处理功能1.2指令1.3问题扩展二、编译(生成汇编)三、汇编(生成二进制机器语

MCU7.keil中build产生的hex文件解读

1.hex文件大致解读 闲来无事,查看了MCU6.用keil新建项目的hex文件 用FlexHex打开 给我的第一印象是:经过软件的解释之后,发现这些数据排列地十分整齐 :02000F0080FE71:03000000020003F8:0C000300787FE4F6D8FD75810702000F3D:00000001FF 把解释后的数据当作十六进制来观察 1.每一行数据

Android Environment 获取的路径问题

1. 以获取 /System 路径为例 /*** Return root of the "system" partition holding the core Android OS.* Always present and mounted read-only.*/public static @NonNull File getRootDirectory() {return DIR_ANDR

消除安卓SDK更新时的“https://dl-ssl.google.com refused”异常的方法

消除安卓SDK更新时的“https://dl-ssl.google.com refused”异常的方法   消除安卓SDK更新时的“https://dl-ssl.google.com refused”异常的方法 [转载]原地址:http://blog.csdn.net/x605940745/article/details/17911115 消除SDK更新时的“

bash: arm-linux-gcc: No such file or directory

ubuntu出故障重装了系统,一直用着的gcc使用不了,提示bash: arm-linux-gcc: No such file or directorywhich找到的命令所在的目录 在google上翻了一阵发现此类问题的帖子不多,后来在Freescale的的LTIB环境配置文档中发现有这么一段:     # Packages required for 64-bit Ubuntu

编译linux内核出现 arm-eabi-gcc: error: : No such file or directory

external/e2fsprogs/lib/ext2fs/tdb.c:673:29: warning: comparison between : In function 'max2165_set_params': -。。。。。。。。。。。。。。。。。。 。。。。。。。。。。。。。 。。。。。。。。 host asm: libdvm <= dalvik/vm/mterp/out/Inte

【linux学习指南】Linux编译器 gcc和g++使用

文章目录 📝前言🌠 gcc如何完成🌉预处理(进行宏替换) 🌠编译(生成汇编)🌉汇编(生成机器可识别代码) 🌠链接(生成可执行文件或库文件)🌉函数库 🌠gcc选项🚩总结 📝前言 预处理(进行宏替换)编译(生成汇编)汇编(生成机器可识别代码)连接(生成可执行文件或库文件) 🌠 gcc如何完成 格式 :gcc [选项] 要编译的文件 [选项] [目标文

gcc编译常见问题

inux C gcc -lm     使用 math.h中声明的库函数还有一点特殊之处,gcc命令行必须加-lm选项 ,因为数学函数位于 libm.so 库文件中(这些库文件通常位于/lib目录下),-lm选项告诉编译器,我们程序中用到的数学函数要到这个库文件里找。本书用到的大部分库函数(例如printf)位于 libc.so 库文件中,使用libc.so中的库函数在编译时不需要加-l

flutter开发实战-flutter build web微信无法识别二维码及小程序码问题

flutter开发实战-flutter build web微信无法识别二维码及小程序码问题 GitHub Pages是一个直接从GitHub存储库托管的静态站点服务,‌它允许用户通过简单的配置,‌将个人的代码项目转化为一个可以在线访问的网站。‌这里使用flutter build web来构建web发布到GitHub Pages。 最近通过flutter build web,通过发布到GitHu