WhyCan Forum

本站无需注册,无需积分,无需回复可下载所有资料,如果真的喜欢小站,请您注册之后请至少回复一个帖子激活Id,谢谢支持! 站长QQ: 516333132 (挖坑网/填坑网) admin@whycan.cn

您尚未登录。

#1 2018-04-13 02:05:17

sunwei
会员
注册时间: 2018-04-09
累计积分: 77

Melis平台编译环境安装配置说明.doc

文件说明:
    1. Melis平台编译环境安装配置说明.doc    编译环境安装及使用说明;
    2. cygwin.2.00.exe                      cygwin安装文件;

    3. dram_DDRII_init_180M.axf             DRAM初始化程序;
    4. fel_pro.axf                          烧码引导程序;
    4. boot0.axf                            启动引导程序;

使用说明:
    1. 烧码:
        step1: 板子上电,并reset;
        step2: 通过AXD工具下载dram_DDRII_init_180M.axf,运行该程序进行DRAM初始化;
        step3: 通过AXD工具下载fel_pro.axf,运行该程序引导烧码,注意此时需要打开Livesuit工具及连接USB;
        step4: 等待烧码完成;

    2. 启动:
        step1: reset开发板;
        step2: 通过AXD工具下载dram_DDRII_init_180M.axf,运行该程序进行DRAM初始化;
        step3: 通过AXD工具下载boot0.axf,运行该程序引导系统启动;

离线

#2 2018-04-13 08:13:30

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 7,163

Re: Melis平台编译环境安装配置说明.doc

谢谢楼主,要早点休息哦.

你编译成功了吗?

我找到一份比较全的文档: Melis平台编译环境安装配置说明.doc

离线

#3 2018-04-13 08:35:11

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 7,163

Re: Melis平台编译环境安装配置说明.doc

全志melios源码: Lichee Nano  (链接可能会失效)
Lichee Nano\SDK\C100s_PubRelease_V1.0_20170522.zip

离线

#4 2018-04-14 06:54:39

lcfmax
会员
注册时间: 2018-04-13
累计积分: 161

Re: Melis平台编译环境安装配置说明.doc

谢谢大家的分享

离线

#5 2018-07-31 08:11:34

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 7,163

Re: Melis平台编译环境安装配置说明.doc

Melis平台编译环境安装配置说明.doc 文件内容:

目 录
1.    安装编译工具    1
1.1.    安装编译器    1
1.2.    安装Cygwin    1
2.    配置编译环境    2
2.1.    通用配置    2
2.2.    模块本地配置    2
2.3.    简单的makefile    4

1.    安装编译工具
1.1.    安装编译器
Melis平台使用的编译开发工具为ARM公司的集成开发工具RealView 2.2(全称为RealView Develper Suit,简称RVDS)。关于该工具的安装请参考说明文档《REALVIEW安装说明》。
1.2.    安装Cygwin
Cygwin是一个在Windows平台上运行的模拟Unix环境的工具,是许多自由软件的集合。Melis平台使用Cygwin工具,主要是借助其功能强大的make工具。
Cygwin工具的安装步骤如下:
1.    运行Cygwin的安装文件cygwin.2.00.exe,选择安装路径,自动安装至完成;
2.    进入Cygwin的根目录,以编辑方式打开cygwin.bat批处理文件,根据Cygwin的安装路径修改路径配置(cygwin默认安装在C盘根目录下)。
如安装在D盘根目录下,则对应的修改为:
D:                                                       
Chdir D:\cygwin\bin                                       
3.    用户可在启动脚本里添加自己的启动设置,比如更改工作目录等。
如cygwin安装在D盘根目录下,用户名为kevin,则启动脚本位置为:
D:\cygwin\home\kevin\ .bash_profile                       

       
2.    配置编译环境
2.1.    通用配置
在Melis平台上编译代码时,需要先执行硬件平台配置工具“ePDK\includes\cfg.bat”对当前的硬件平台和方案类型进行配置。
Melis平台对平台相关的编译配置文件为“ePDK\includes\cfgs\CROSSTOOL.CFG”,对编译工具、硬件平台及共用库目录作了一些配置,为所有模块共用。该配置文件中相关变量由平台整合人员统一设置,用户可以使用相关的变量,但是不能对变量作修改。相关变量的含义如下:
    $(CROSSTOOL),定义交叉编译工具。
“ARMRVDS”,定义交叉编译工具为RVDS;                   
“ARMGCC”,定义交叉编译工具为ARMGCC;                   
    $(EPDK_CHIP),定义硬件平台的类型,定义在脚本“ePDK\includes\cfgs\chip.cfg”中,chip.cfg由用户执行“ePDK\includes\cfg.bat”选择硬件平台时生成。
        “EPDK_CHIP_SUNI”,定义当前硬件平台为suni平台;       
        “EPDK_CHIP_SUNII”,定义当前硬件平台为sunii平台;     
        “EPDK_CHIP_SUNIII”,定义当前硬件平台为suniii平台;   
    $(LIBPATH),定义melis平台的共享库目录。
    $(INTERLIBPATH),定义melis平台内部共享库目录。
    $(WORKSPACEPATH),定义melis平台目标文件及打包工作路径。
    $(ESTUDIOROOT),定义melis平台使用的PC工具的路径。
    $(CC),定义C语言编译工具。
        RVDS交叉编译工具下为“armcc”;                         
        GCC交叉编译工具下为“arm-elf-gcc”;                   
    $(CFLAGS),定义C语言编译工具的基本配置参数。
    $(AS),定义汇编器工具。
        RVDS交叉编译工具下为“armasm”;                       
        GCC交叉编译工具下为“arm-elf-as”;                     
    $(ASFLAGS),定义汇编器的基本配置参数。
    $(LINK),定义链接工具。
        RVDS交叉编译工具下为“armlink”;                       
        GCC交叉编译工具下为“arm-elf-ld”;                     
    $(LKFLAGS),定义链接工具基本配置参数。
    $(AR),定义库打包工具。
        RVDS交叉编译工具下为“armar”;                         
        GCC交叉编译工具下为“arm-elf-ar”;                     
    $(ARFLAGS),定义库打包工具的基本配置参数。
    $(LOAD),定义加载器工具。
        RVDS交叉编译工具下为“fromelf”;                       
        GCC交叉编译工具下为“arm-elf-objcopy”;               
    $(LDFLAGS),定义加载器工具的基本配置参数。
2.2.    模块本地配置
CROSSTOOL.CFG仅对所有模块共用的配置作了定义,而每个模块特有的配置需要针对每个模块来作扩展。因此,针对每个模块的makefile,都存在一个make.cfg文件与之对应,在CROSSTOOL.CFG的基础上,对相关的变量作扩展。每个模块的make.cfg都不尽相同,需要根据模块的具体情况作修改,但一般都包括下面几个部分:
    $(ROOT),定义当前模块的根目录,一般为“.”。
$(SDKROOT),定义“ePDK”目录相对于$(ROOT)的相对路径,此变量必须定义,CROSSTOOL.CFG配置文件中会通过此变量来引用“ePDK”目录的路径。
include $(SDKROOT)/includes/cfgs/CROSSTOOL.CFG,引用编译工具通用配置。
$(INCLUDES),定义所有需要引用的头文件的路径。
$(LIBS),定义需要引用的库文件。
$(SRCDIRS),定义所有需要引用的源文件的路径,一般采用自动扫描的方式来定义,不需要逐项列出。
$(TARGET),定义需要输送出去的目标文件,一般不包含调试信息。
$(LOCALTARGET),定义本地生成的目标文件,一般命名为“__image.axf”,包含有完整的调试信息,用作调试。
$(LINK_SCT),定义链接程序使用的链接脚本。
除此以外,还需要对“CFLAGS”、“ASFLAGS”、“LKFLAGS”、“LDFLAGS”等相关工具配置参数做相应的扩展,以满足模块编译的特定需求。
一个常用的make.cfg示例如下:
                                                                               
ROOT    = .                                                                   
SDKROOT = $(ROOT)/../..                                                       
                                                                               
#导入交叉编译器通用配置                                                       
include $(SDKROOT)/includes/cfgs/CROSSTOOL.CFG                                 
                                                                               
#头文件路径列表                                                               
INCLUDES        =   -I$(ROOT)                       \                         
                    -I$(ROOT)/../include            \                         
                    -I$(SDKROOT)/includes           \                         
                    -I$(SDKROOT)/includes/emod                                 
                                                                               
#库文件列表                                                                   
LIBS            =   $(LIBPATH)/elibs.a                                         
                                                                               
#列出该工程下的所有包含源程序的子目录                                         
SRCDIRS  =  $(shell find . -maxdepth 5 -type d)                               
                                                                               
INCLUDES       :=   $(INCLUDES)       \                                       
                    $(foreach dir,$(SRCDIRS),-I$(dir))                         
                                                                               
#定义生成的目标文件(输出/本地)                                                 
TARGET      = $(WORKSPACEPATH)/liveclick/rootfs/apps/anole.axf                 
LOCALTARGET = __image.axf                                                     
                                                                               
ifeq ($(CROSSTOOL), ARMRVDS)                                                   
                                                                               
#==============================================================================
#使用RVDS编译器
#==============================================================================
#程序链接脚本                                                                 
LINK_SCT    = --scatter=$(ROOT)/config/anole.sct                               
#编译器扩展参数                                                               
CFLAGS     := $(CFLAGS) -O3 --debug -DEPDK_DEBUG_LEVEL=EPDK_DEBUG_LEVEL_LOG_ALL
CFLAGS     := $(CFLAGS) $(INCLUDES)                                           
#汇编器扩展参数                                                               
ASFLAGS    := $(ASFLAGS) --debug –keep                                       
ASFLAGS    := $(ASFLAGS) $(INCLUDES)                                           
#链接器扩展参数                                                               
LKFLAGS    := $(LKFLAGS) $(LINK_SCT)                                           
#加载器扩展参数                                                               
LDFLAGS    := $(LDFLAGS) --elf --no_debug –output                             
                                                                               
LIBS       := $(LIBS) $(LIBPATH)/lemon.sym                                     
                                                                               
else                                                                           
                                                                               
#==============================================================================
#使用GNU-GCC编译器                                                           
#==============================================================================
error:                                                                         
    $(error GNU Cross-tool is invalid now!!!)                                 
                                                                               
endif                                                                         
                                                                               
2.3.    简单的makefile
Melis平台采用makefile的隐含规则完成对所有源文件的编译。没有启用完整的依赖规则,只有当源码文件(*.c、*.s)文件发生修改后,才会重新编译该源码文件(未修改的源码文件不会被重新编译),修改头文件(*.h)不会引发对源码文件的重新编译,因此,当修改了相关的头文件以后,必须先执行clean,再重新编译。一个基本的makefile一般包括以下几个部分:
    include    make.cfg,引用makefile的配置文件。
    $(SRCCS),通过自动扫描获得的*.c源文件列表。
    $(SRCSS),通过自动扫描获得的*.s源文件列表。
    $(OBJS),通过后缀替换规则从$(SRCCS)和$(SRCSS)获得的*.o文件列表,*.o文件通过makefile的隐含规则自动编译$(SRCCS)和$(SRCSS)获得。
    $(LOCALTARGET):$(OBJS),链接相关的*.o和库文件得到本地目标文件。
    all:$(LOCALTARGET),通过本地文件得到输出目标文件,该符号也是makefile的默认入口。
    clean,清理生成的临时文件。
一个简单的makefile示例文件如下:
#导入编译器配置                                                       
include make.cfg                                                       
                                                                       
#从所有子目录中得到源代码的列表                                       
SRCCS=$(foreach dir,$(SRCDIRS),$(wildcard $(dir)/*.c))                 
SRCSS=$(foreach dir,$(SRCDIRS),$(wildcard $(dir)/*.s))                 
                                                                       
#得到源代码对应的目标文件的列表                                       
OBJS=$(SRCCS:.c=.o) $(SRCSS:.s=.o)                                     
                                                                       
#生成输出目标文件                                                     
all:                                                                   
    make builders                                                     
    make application                                                   
                                                                       
buildres:                                                             
    $(ESTUDIOROOT)/Softwares/xmlang/xmlang.exe ./res/lang.xml         
    $(ESTUDIOROOT)/Softwares/ResCompile/langcompile.exe ./res/lang.cfg
    $(ESTUDIOROOT)/Softwares/ResCompile/themcompile.exe ./res/them.cfg
                                                                       
application:$(LOCALTARGET)                                             
    $(LOAD) $(LDFLAGS) $(TARGET) $(LOCALTARGET)                       
    @echo ----------------------------                                 
    @echo target make finish                                           
    @echo ----------------------------                                 
                                                                       
#生成本地目标文件                                                     
$(LOCALTARGET):$(OBJS)                                                 
    $(LINK) $(LKFLAGS) -o $@ $(filter %.o ,$+) $(LIBS)                 
                                                                       
# 删除生成的中间文件                                                   
clean:                                                                 
    -rm $(OBJS) $(LOCALTARGET)                                         

需要注意的是,makefile的命令前必须使用“TAB”键,不可以用空格。


文件下载: Melis平台编译环境安装配置说明.pdf

离线

#6 2019-02-21 17:38:29

siwen
会员
注册时间: 2019-01-17
累计积分: 7

Re: Melis平台编译环境安装配置说明.doc

win7系统怎么弄Melis平台编译环境安装配置,求安装资源和步骤。

离线

#7 2019-02-21 18:40:26

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 7,163

Re: Melis平台编译环境安装配置说明.doc

siwen 说:

win7系统怎么弄Melis平台编译环境安装配置,求安装资源和步骤。

https://whycan.cn/t_1823.html

离线

#8 2019-02-22 13:54:17

siwen
会员
注册时间: 2019-01-17
累计积分: 7

Re: Melis平台编译环境安装配置说明.doc

晕哥 说:
siwen 说:

win7系统怎么弄Melis平台编译环境安装配置,求安装资源和步骤。

https://whycan.cn/t_1823.html

非常感谢!

离线

#9 2019-07-15 16:15:09

hzpyl
会员
注册时间: 2019-07-10
累计积分: 78

Re: Melis平台编译环境安装配置说明.doc

标志一下。

离线

#10 2019-07-15 16:51:11

迪卡
会员
注册时间: 2018-11-02
累计积分: 201

Re: Melis平台编译环境安装配置说明.doc

标记一下,用keil编译的话更好

离线

页脚