客流信息
DM6467T开发板领航——环境文件配置

 

DM6467T开发板领航——环境文件配置
 
 
继上一篇DM6467T开发板领航——开发环境安装
 
按照我们上一篇DM6467T开发领航——开发环境安装 的安装方法,最主要要修改的文件就是/home/dm6467t/dvsdk_3_10_00_19目录下的Rules.make文件和Makefile文件啦
 
 
 
下面我们一起来看看Rules.make文件吧
 
 
 
在修改之前,请把文件设置为可写
 
root@ubuntu:/home/dm6467t/dvsdk_3_10_00_19# chmod -777 Rules.make
 
 
 
 
 
这个是平台的定义,不用改
 
# Define target platform.
 
PLATFORM=dm6467
 
 
 
这个是DVSDK目录的指定,没有问题,不用改
 
# The installation directory of the DVSDK.
 
DVSDK_INSTALL_DIR=/home/dm6467t/dvsdk_3_10_00_19
 
 
 
# For backwards compatibility
 
DVEVM_INSTALL_DIR=$(DVSDK_INSTALL_DIR)
 
 
 
下面都是些安装的目录,没有问题
 
# Where DSP/BIOS is installed.
 
BIOS_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/bios_5_41_00_06
 
 
 
# Where the DSPBIOS Utils package is installed.
 
BIOSUTILS_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/biosutils_1_02_02
 
 
 
# Where the Codec Engine package is installed.
 
CE_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/codec_engine_2_25_05_16
 
 
 
# Where the DSP Link package is installed.
 
LINK_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/dsplink_linux_1_64
 
 
 
ifeq ($(PLATFORM),dm355)
 
# Where the DM355 codecs are installed.
 
    CODEC_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/dm355_codecs_03_10_00_02
 
endif
 
 
 
ifeq ($(PLATFORM),dm365)
 
# Where the DM365 codecs are installed.
 
    CODEC_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/dm365_codecs_03_10_00_07
 
endif
 
 
 
# Where the DM365MM module is installed.
 
DM365MMAP_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/dm365mm_01_00_03
 
 
 
ifeq ($(PLATFORM),dm6467)
 
# Where the cs2dm6467 codec server package is installed.
 
CODEC_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/cs2dm6467_1_00_00_10
 
endif
 
 
 
# Where DMAI package is installed.
 
DMAI_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/dmai_2_10_00_12
 
 
 
# Where the DVSDK demos are installed
 
DEMO_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/dvsdk_demos_3_10_00_16
 
 
 
# Where the DVTB package is installed.
 
DVTB_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/dvtb_4_20_10
 
 
 
# Where the EDMA3 LLD package is installed.
 
EDMA3_LLD_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/edma3_lld_01_11_00_03
 
 
 
# Where the Framework Components package is installed.
 
FC_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/framework_components_2_25_02_06
 
 
 
# Where the MFC Linux Utils package is installed.
 
LINUXUTILS_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/linuxutils_2_25_04_10
 
CMEM_INSTALL_DIR=$(LINUXUTILS_INSTALL_DIR)
 
 
 
# Where the XDAIS package is installed.
 
XDAIS_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/xdais_6_25_02_11
 
 
 
# Where the RTSC tools package is installed.
 
XDC_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/xdctools_3_16_01_27
 
以上这些目录都没有问题,可以根据文件和自己的目录仔细的对一遍
 
这里的目录不对,需要修改
 
# Where the Code Gen is installed.
 
#CODEGEN_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/cgt6x_6_1_12
 
CODEGEN_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/C6000CGT7.4.2
 
 
 
下面这个是内核目录,我们也需要修改
 
# The directory that points to your kernel source directory.
 
#LINUXKERNEL_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/../git
 
这个是内核目录,我们修改过
 
LINUXKERNEL_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/../git-kernel
 
 
 
# Where temporary Linux headers and libs are installed.
 
#LINUXLIBS_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/../linuxlibs-2009.11-armv5te
 
LINUXLIBS_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/linuxlibs-2009.11-armv5te
 
 
 
# Where Linux examples are installed.
 
#LINUXEXAMPLES_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/../examples-r37
 
LINUXEXAMPLES_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/examples-r37
 
 
 
# The prefix to be added before the GNU compiler tools (optionally including # path), i.e. "arm_v5t_le-" or "/opt/bin/arm_v5t_le-".
 
#CSTOOL_DIR=/opt/arm-2009q1
 
这个是编译器目录
 
CSTOOL_DIR=/home/dm6467t/arm-2009q1
 
CSTOOL_PREFIX=$(CSTOOL_DIR)/bin/arm-none-linux-gnueabi-
 
 
 
MVTOOL_DIR=$(CSTOOL_DIR)
 
MVTOOL_PREFIX=$(CSTOOL_PREFIX)
 
 
 
# Where to copy the resulting executables
 
#EXEC_DIR=$(HOME)/install/$(PLATFORM)
 
这个是编译好的文件放的目录
 
EXEC_DIR=/home/dm6467t/install/$(PLATFORM)
 
 
 
这样Rules.make文件就修改完成了,其实没有想像中的那么难,不要被Davianci吓坏了。只要你认真的对照文件和自己的目录,目录设置对了基本上都不会有问题。如果有漏掉的,也不用担心,在你编译的时候肯定会报错的,什么找不到文件啦,找不到路径啦,之类的错误基本上是配置文件的问题。
 
 
 
下面我们来看看makefile文件
 
对于很多linux初学者,往往对makefile文件一头雾水,甚至有点怕的感觉。其实没什么好怕的。网上关于makefile的文章大把大把的,你先学习个大概,再使用的过程中,不懂的再查查,基本上都能解决问题。至于怎么读懂makefile,我不打算在这里讲,我们就一起看看怎么修改这个makefilek吧
 
 
 
先把makefile改为可写吧
 
root@ubuntu:/home/dm6467t/dvsdk_3_10_00_19# chmod 777 Makefile
 
 
 
看看makefile
 
重点看看216行~227行
 
 
 
include Rules.make
 
 
 
COMPONENTS:=$(DMAI_INSTALL_DIR) $(XDAIS_INSTALL_DIR) $(LINUXUTILS_INSTALL_DIR) $(EDMA3_LLD_INSTALL_DIR) $(FC_INSTALL_DIR) $(CE_INSTALL_DIR) $(XDC_INSTALL_DIR) $(BIOS_INSTALL_DIR) $(CODEC_INSTALL_DIR)
 
 
 
.PHONY:   all clean everything clobber help cmem cmem_clean dmai dmai_clean dmai_install demos demos_clean dvtb dvtb_clean dmammapk dmammapk_clean dsplink dsplink_arm dsplink_dsp dsplink_samples dsplink_clean codecs codecs_clean linux linux_clean psp_examples psp_examples_clean psp_examples_install info check install
 
 
 
#==============================================================================
 
# Set up platform dependent variables.
 
#==============================================================================
 
ifeq ($(PLATFORM),dm6446)
 
COMPONENTS+=$(BIOSUTILS_INSTALL_DIR) $(LINK_INSTALL_DIR)
 
CHECKLIST:=$(CODEGEN_INSTALL_DIR)/bin/cl6x
 
REPOSITORIES:=$(DVTB_INSTALL_DIR)/packages
 
LINUXKERNEL_CONFIG=davinci_dm644x_defconfig
 
LINUXSAMPLES_PLATFORM=dm644x
 
DSPLINK_CONFIG=--platform=DAVINCI --nodsp=1 --dspcfg_0=DM6446GEMSHMEM --dspos_0=DSPBIOS5XX --gppos=MVL5G --comps=ponslrm
 
DSPLINK_MODULE=$(LINK_INSTALL_DIR)/dsplink/gpp/export/BIN/Linux/DAVINCI/RELEASE/dsplinkk.ko
 
HAS_SERVER=true
 
HAS_DSPLINK=true
 
HAS_IRQK=false
 
HAS_EDMAK=false
 
DMAI_PLATFORM=dm6446_al
 
else
 
ifeq ($(PLATFORM),dm6467)
 
COMPONENTS+=$(BIOSUTILS_INSTALL_DIR) $(LINK_INSTALL_DIR)
 
CHECKLIST:=$(CODEGEN_INSTALL_DIR)/bin/cl6x
 
REPOSITORIES:=$(DVTB_INSTALL_DIR)/packages
 
LINUXKERNEL_CONFIG=davinci_dm646x_1ghz_defconfig
 
LINUXSAMPLES_PLATFORM=dm646x
 
DSPLINK_CONFIG=--platform=DAVINCIHD --nodsp=1 --dspcfg_0=DM6467GEMSHMEM --dspos_0=DSPBIOS5XX --gppos=DM6467LSP --comps=ponslrm
 
DSPLINK_MODULE=$(LINK_INSTALL_DIR)/dsplink/gpp/export/BIN/Linux/DAVINCIHD/RELEASE/dsplinkk.ko
 
HAS_SERVER=true
 
HAS_DSPLINK=true
 
HAS_IRQK=false
 
HAS_EDMAK=false
 
DMAI_PLATFORM=dm6467_al
 
else
 
ifeq ($(PLATFORM),dm355)
 
REPOSITORIES:=$(DVTB_INSTALL_DIR)/packages
 
LINUXKERNEL_CONFIG=davinci_dm355_defconfig
 
LINUXSAMPLES_PLATFORM=dm355
 
HAS_SERVER=false
 
HAS_DSPLINK=false
 
HAS_IRQK=true
 
HAS_EDMAK=true
 
DMAMMAP_INSTALL_DIR=$(CODEC_INSTALL_DIR)/dm355mm/module
 
DMAI_PLATFORM=dm355_al
 
else
 
ifeq ($(PLATFORM),dm365)
 
REPOSITORIES:=$(DVTB_INSTALL_DIR)
 
LINUXKERNEL_CONFIG=davinci_dm365_defconfig
 
LINUXSAMPLES_PLATFORM=dm365
 
HAS_SERVER=false
 
HAS_DSPLINK=false
 
HAS_IRQK=true
 
HAS_EDMAK=true
 
DMAMMAP_INSTALL_DIR=$(DM365MMAP_INSTALL_DIR)/module
 
DMAI_PLATFORM=dm365_al
 
else
 
         $(error PLATFORM not set correctly: $(PLATFORM))
 
endif
 
endif
 
endif
 
endif
 
 
 
REPOSITORIES+=$(addsuffix /packages, $(filter-out  $(LINK_INSTALL_DIR), $(COMPONENTS)))
 
 
 
CHECKLIST+=$(REPOSITORIES) $(MVTOOL_PREFIX)gcc $(LINUXKERNEL_INSTALL_DIR)/Documentation $(DEMO_INSTALL_DIR)/$(PLATFORM)
 
#==============================================================================
 
# The default build target.
 
#==============================================================================
 
all:    check cmem dmammapk edmak irqk dmai demos
 
 
 
#==============================================================================
 
# Clean up the targets built by 'make all'.
 
#==============================================================================
 
clean:       cmem_clean dmammapk_clean edmak_clean irqk_clean dmai_clean demos_clean
 
 
 
#==============================================================================
 
# Build everything rebuildable.
 
#==============================================================================
 
everything: check linux dsplink codecs all ce_examples dvtb
 
 
 
#==============================================================================
 
# Clean up all targets.
 
#==============================================================================
 
clobber:    clean dsplink_clean linux_clean codecs_clean ce_examples_clean dvtb_clean
 
 
 
#==============================================================================
 
# A help message target.
 
#==============================================================================
 
help:
 
         @echo
 
         @echo "Available build targets are:"
 
         @echo
 
         @echo "    check           : Make sure Rules.make is set up properly"
 
         @echo "    info            : List versions of DVSDK components"
 
         @echo
 
         @echo "    all             : Build the components below"
 
         @echo "    clean           : Remove files generated by the 'all' target"
 
         @echo
 
         @echo "    cmem            : Build the CMEM kernel module for $(PLATFORM)"
 
         @echo "    cmem_clean      : Remove generated cmem files."
 
         @echo
 
         @echo "    dmai            : Build DMAI for $(PLATFORM)_al"
 
         @echo "    dmai_clean      : Remove generated DMAI files."
 
         @echo
 
         @echo "    demos           : Build the DVSDK demos for $(PLATFORM)"
 
         @echo "    demos_clean     : Remove generated DVSDK demo files."
 
         @echo
 
         @echo "    dvtb            : Build DVTB for $(PLATFORM)"
 
         @echo "    dvtb_clean      : Remove generated DVTB files"
 
ifneq ($(DMAMMAP_INSTALL_DIR),)
 
         @echo
 
         @echo "    dmammapk        : Build the DMA MMAP kernel module"
 
         @echo "    dmammapk_clean  : Remove generated DMA MMAP files"
 
endif
 
ifeq ($(HAS_EDMAK),true)
 
         @echo
 
         @echo "    edmak           : Build the EDMA kernel module"
 
         @echo "    edmak_clean     : Remove generated EDMA files"
 
endif
 
ifeq ($(HAS_IRQK),true)
 
         @echo
 
         @echo "    irqk            : Build the IRQ kernel module"
 
         @echo "    irqk_clean      : Remove generated IRQ files"
 
endif
 
         @echo
 
         @echo "The following targets have to be explicitly built and cleaned:"
 
         @echo
 
         @echo "    everything      : Rebuild everything including below targets"
 
ifeq ($(HAS_DSPLINK),true)
 
         @echo "                             Note: C6000 code gen tools are required"
 
endif
 
         @echo "    clobber         : Remove all generated files"
 
ifeq ($(HAS_DSPLINK),true)
 
         @echo "                             Note: C6000 code gen tools are required"
 
endif
 
ifeq ($(HAS_DSPLINK),true)
 
         @echo
 
         @echo "    dsplink         : Configure and build DSP Link for $(PLATFORM) ARM and DSP"
 
         @echo "                             Note: C6000 code gen tools are required"
 
         @echo "    dsplink_arm     : Configure and build DSP Link for $(PLATFORM) ARM"
 
         @echo "    dsplink_dsp     : Configure and build DSP Link for $(PLATFORM) DSP"
 
         @echo "                             Note: C6000 code gen tools are required"
 
         @echo "    dsplink_samples : Build DSP Link ARM and DSP sample applications for $(PLATFORM)"
 
         @echo "                             Note: C6000 code gen tools are required"
 
         @echo "    dsplink_clean   : Remove generated DSP Link files"
 
         @echo "                             Note: C6000 code gen tools are required"
 
endif
 
ifeq ($(HAS_SERVER),true)
 
         @echo
 
         @echo "    codecs          : Build codec servers for $(PLATFORM)"
 
         @echo "    codecs_clean    : Remove generated codec server files"
 
endif
 
         @echo
 
         @echo "    linux           : Build Linux kernel uImage for $(PLATFORM)"
 
         @echo "                             Note: With 'MENUCONFIG=true' opens menuconfig"
 
         @echo "    linux_clean     : Remove generated Linux kernel files"
 
         @echo
 
         @echo "    install         : Install binaries to $(EXEC_DIR)"
 
         @echo "    dmai_install    : Install DMAI binaries to $(EXEC_DIR)"
 
         @echo
 
         @echo "    ce_examples     : Build Codec Engine Examples for $(PLATFORM)"
 
ifeq ($(HAS_SERVER),true)
 
         @echo "                             Note: C6000 code gen tools are required"
 
endif
 
         @echo "    ce_examples_clean:Remove Codec Engine Examples"
 
ifeq ($(HAS_SERVER),true)
 
         @echo "                             Note: C6000 code gen tools are required"
 
endif
 
         @echo "    psp_examples    : Build Linux PSP Examples for $(PLATFORM)"
 
         @echo "    psp_examples_clean  : Clean Linux PSP Examples for $(PLATFORM)"
 
         @echo "    psp_examples_install: Install Linux PSP Examples to $(EXEC_DIR)"
 
         @echo
 
 
 
#==============================================================================
 
# Target for listing information about the DVSDK components.
 
#==============================================================================
 
info: check
 
         @LINUXKERNEL_INSTALL_DIR="$(LINUXKERNEL_INSTALL_DIR)" CODEGEN_INSTALL_DIR="$(CODEGEN_INSTALL_DIR)" GCC_PREFIX="$(MVTOOL_PREFIX)" XDC_INSTALL_DIR="$(XDC_INSTALL_DIR)" REPOSITORIES="$(REPOSITORIES)" $(DVSDK_INSTALL_DIR)/bin/info.sh
 
 
 
#==============================================================================
 
# Target for checking that the Rules.make file is set up properly.
 
#==============================================================================
 
check:
 
         @CHECKLIST="$(CHECKLIST)" $(DVSDK_INSTALL_DIR)/bin/check.sh
 
 
 
#==============================================================================
 
# Build the dvsdk demos for the configured platform. Also, an explicit cleanup
 
# target is defined.
 
#==============================================================================
 
demos:
 
         $(MAKE) -C $(DEMO_INSTALL_DIR) $(PLATFORM) DVSDK_INSTALL_DIR=$(DVSDK_INSTALL_DIR) XDC_INSTALL_DIR=$(XDC_INSTALL_DIR) CE_INSTALL_DIR=$(CE_INSTALL_DIR) FC_INSTALL_DIR=$(FC_INSTALL_DIR) CMEM_INSTALL_DIR=$(CMEM_INSTALL_DIR) CODEC_INSTALL_DIR=$(CODEC_INSTALL_DIR) XDAIS_INSTALL_DIR=$(XDAIS_INSTALL_DIR) LINK_INSTALL_DIR=$(LINK_INSTALL_DIR) DMAI_INSTALL_DIR=$(DMAI_INSTALL_DIR) MVTOOL_DIR=$(MVTOOL_DIR) CC=$(CSTOOL_PREFIX)gcc AR=$(CSTOOL_PREFIX)ar CROSS_COMPILE=$(MVTOOL_PREFIX) LINUXLIBS_INSTALL_DIR=$(LINUXLIBS_INSTALL_DIR) PLATFORM=$(PLATFORM)
 
 
 
demos_clean:
 
         $(MAKE) -C $(DEMO_INSTALL_DIR) clean DVSDK_INSTALL_DIR=$(DVSDK_INSTALL_DIR) XDC_INSTALL_DIR=$(XDC_INSTALL_DIR) CE_INSTALL_DIR=$(CE_INSTALL_DIR) FC_INSTALL_DIR=$(FC_INSTALL_DIR) CMEM_INSTALL_DIR=$(CMEM_INSTALL_DIR) CODEC_INSTALL_DIR=$(CODEC_INSTALL_DIR) XDAIS_INSTALL_DIR=$(XDAIS_INSTALL_DIR) LINK_INSTALL_DIR=$(LINK_INSTALL_DIR) DMAI_INSTALL_DIR=$(DMAI_INSTALL_DIR) MVTOOL_DIR=$(MVTOOL_DIR) CC=$(CSTOOL_PREFIX)gcc CROSS_COMPILE=$(MVTOOL_PREFIX) LINUXLIBS_INSTALL_DIR=$(LINUXLIBS_INSTALL_DIR) PLATFORM=$(PLATFORM)
 
 
 
#==============================================================================
 
# Build the Digital Video Test Bench for the configured platform. Also, an
 
# explicit cleanup target is defined.
 
#==============================================================================
 
dvtb:
 
         $(MAKE) -C $(DVTB_INSTALL_DIR) $(PLATFORM) CODECS=TSPA
 
         @echo
 
         @echo "dvtb can be found under $(DVTB_INSTALL_DIR)/packages/ti/sdo/dvtb/$(PLATFORM)/bin"
 
 
 
dvtb_clean:
 
         $(MAKE) -C $(DVTB_INSTALL_DIR) clean
 
 
 
dvtb_install:
 
         @cp -f $(DVTB_INSTALL_DIR)/packages/ti/sdo/dvtb/$(PLATFORM)/bin/dvtb-{r,d} $(EXEC_DIR)
 
 
 
#==============================================================================
 
# Build the Linux kernel. Also, an explicit cleanup target is defined.
 
#==============================================================================
 
#$(LINUXKERNEL_INSTALL_DIR)/.config:
 
config:
 
         $(MAKE) -C $(LINUXKERNEL_INSTALL_DIR) CROSS_COMPILE=$(MVTOOL_PREFIX) $(LINUXKERNEL_CONFIG)
 
 
 
#linux: $(LINUXKERNEL_INSTALL_DIR)/.config
 
#ifeq ($(MENUCONFIG),true) 
 
menuconfig:
 
         $(MAKE) -C $(LINUXKERNEL_INSTALL_DIR) CROSS_COMPILE=$(MVTOOL_PREFIX) menuconfig
 
#endif
 
linux:
 
         $(MAKE) -C $(LINUXKERNEL_INSTALL_DIR) CROSS_COMPILE=$(MVTOOL_PREFIX) uImage
 
         @echo
 
         @echo "Your kernel image can be found at $(LINUXKERNEL_INSTALL_DIR)/arch/arm/boot/uImage"
 
 
 
linux_clean:
 
         $(MAKE) -C $(LINUXKERNEL_INSTALL_DIR) mrproper
 
 
 
#==============================================================================
 
# Build the CE examples. Also, an explicit cleanup target is defined.
 
#==============================================================================
 
ce_examples:
 
ifeq ($(HAS_SERVER),true)
 
         $(MAKE) -C $(CE_INSTALL_DIR)/examples/ti/sdo/ce/examples/servers DEVICES=$(subst 6467,6467T,$(subst dm,DM,$(PLATFORM))) CE_EXAMPLES_INSTALL_DIR=$(CE_INSTALL_DIR)/examples/ti/sdo/ce/examples GPPOS=LINUX_GCC CE_INSTALL_DIR=$(CE_INSTALL_DIR) BIOS_INSTALL_DIR=$(BIOS_INSTALL_DIR) XDC_INSTALL_DIR=$(XDC_INSTALL_DIR) CGTOOLS_V5T=$(MVTOOL_DIR) DSPLINK_INSTALL_DIR=$(LINK_INSTALL_DIR) CGTOOLS_C64P=$(CODEGEN_INSTALL_DIR) BIOSUTILS_INSTALL_DIR=$(BIOSUTILS_INSTALL_DIR) BIOS_INSTALL_DIR=$(BIOS_INSTALL_DIR)
 
endif
 
        $(MAKE) -C $(CE_INSTALL_DIR)/examples/ti/sdo/ce/examples/apps DEVICES=$(subst 6467,6467T,$(subst dm,DM,$(PLATFORM))) CE_EXAMPLES_INSTALL_DIR=$(CE_INSTALL_DIR)/examples/ti/sdo/ce/examples GPPOS=LINUX_GCC CE_INSTALL_DIR=$(CE_INSTALL_DIR) BIOS_INSTALL_DIR=$(BIOS_INSTALL_DIR) XDC_INSTALL_DIR=$(XDC_INSTALL_DIR) CGTOOLS_V5T=$(MVTOOL_DIR) DSPLINK_INSTALL_DIR=$(LINK_INSTALL_DIR) CGTOOLS_C64P=$(CODEGEN_INSTALL_DIR) BIOSUTILS_INSTALL_DIR=$(BIOSUTILS_INSTALL_DIR) BIOS_INSTALL_DIR=$(BIOS_INSTALL_DIR)
 
         @echo
 
         @echo "CE examples can be found under $(CE_INSTALL_DIR)/examples/ti/sdo/ce/examples"
 
 
 
ce_examples_clean:
 
ifeq ($(HAS_SERVER),true)
 
         $(MAKE) -C $(CE_INSTALL_DIR)/examples/ti/sdo/ce/examples/servers DEVICES=$(subst 6467,6467T,$(subst dm,DM,$(PLATFORM))) CE_EXAMPLES_INSTALL_DIR=$(CE_INSTALL_DIR)/examples/ti/sdo/ce/examples GPPOS=LINUX_GCC CE_INSTALL_DIR=$(CE_INSTALL_DIR) BIOS_INSTALL_DIR=$(BIOS_INSTALL_DIR) XDC_INSTALL_DIR=$(XDC_INSTALL_DIR) CGTOOLS_V5T=$(MVTOOL_DIR) DSPLINK_INSTALL_DIR=$(LINK_INSTALL_DIR) CGTOOLS_C64P=$(CODEGEN_INSTALL_DIR) BIOSUTILS_INSTALL_DIR=$(BIOSUTILS_INSTALL_DIR) BIOS_INSTALL_DIR=$(BIOS_INSTALL_DIR) clean
 
endif
 
        $(MAKE) -C $(CE_INSTALL_DIR)/examples/ti/sdo/ce/examples/apps DEVICES=$(subst 6467,6467T,$(subst dm,DM,$(PLATFORM))) CE_EXAMPLES_INSTALL_DIR=$(CE_INSTALL_DIR)/examples/ti/sdo/ce/examples CROSS_COMPILE=$(MVTOOL_PREFIX) GPPOS=LINUX_GCC CE_INSTALL_DIR=$(CE_INSTALL_DIR) BIOS_INSTALL_DIR=$(BIOS_INSTALL_DIR) XDC_INSTALL_DIR=$(XDC_INSTALL_DIR)  CGTOOLS_V5T=$(MVTOOL_DIR) DSPLINK_INSTALL_DIR=$(LINK_INSTALL_DIR) CGTOOLS_C64P=$(CODEGEN_INSTALL_DIR) BIOSUTILS_INSTALL_DIR=$(BIOSUTILS_INSTALL_DIR) BIOS_INSTALL_DIR=$(BIOS_INSTALL_DIR) clean
 
 
 
#==============================================================================
 
# Build the CMEM kernel module for the configured platform, and make sure the
 
# kernel_binaries directory is kept in sync. Also, an explicit cleanup target
 
# is defined.
 
#==============================================================================
 
cmem:
 
         $(MAKE) -C $(LINUXUTILS_INSTALL_DIR)/packages/ti/sdo/linuxutils/cmem/src/interface ../../lib/cmem.a470MV RULES_MAKE=$(DVSDK_INSTALL_DIR)/Rules.make
 
         $(MAKE) -C $(LINUXUTILS_INSTALL_DIR)/packages/ti/sdo/linuxutils/cmem/src/module RULES_MAKE=$(DVSDK_INSTALL_DIR)/Rules.make
 
         @mkdir -p $(DVSDK_INSTALL_DIR)/kernel_binaries/$(PLATFORM)
 
         @cp $(LINUXUTILS_INSTALL_DIR)/packages/ti/sdo/linuxutils/cmem/src/module/cmemk.ko $(DVSDK_INSTALL_DIR)/kernel_binaries/$(PLATFORM)/
 
         @echo
 
         @echo "cmemk.ko kernel module can be found under $(DVSDK_INSTALL_DIR)/kernel_binaries/$(PLATFORM)"
 
 
 
cmem_clean:
 
         $(MAKE) -C $(LINUXUTILS_INSTALL_DIR)/packages/ti/sdo/linuxutils/cmem/src/module clean RULES_MAKE=$(DVSDK_INSTALL_DIR)/Rules.make
 
         $(MAKE) -C $(LINUXUTILS_INSTALL_DIR)/packages/ti/sdo/linuxutils/cmem/src/interface clean RULES_MAKE=$(DVSDK_INSTALL_DIR)/Rules.make
 
 
 
#==============================================================================
 
# Build the *production* codec servers for the configured platform. Also, an
 
# explicit cleanup target is defined.
 
# Please note the following.
 
#     1. Before executing make codecs, execute make codecs_clean
 
#     2. Build DSPLINK for arm and dsp before building the codecs
 
#     3. Buld the Linux kernel before building the dsplink
 
#==============================================================================
 
codecs:
 
ifeq ($(HAS_SERVER),true)
 
         $(MAKE) -C $(CODEC_INSTALL_DIR) DVSDK_INSTALL_DIR=$(DVSDK_INSTALL_DIR) BIOS_INSTALL_DIR=$(BIOS_INSTALL_DIR) XDC_INSTALL_DIR=$(XDC_INSTALL_DIR) CE_INSTALL_DIR=$(CE_INSTALL_DIR) FC_INSTALL_DIR=$(FC_INSTALL_DIR) CMEM_INSTALL_DIR=$(LINUXUTILS_INSTALL_DIR) CODEC_INSTALL_DIR=$(CODEC_INSTALL_DIR) BIOSUTILS_INSTALL_DIR=$(BIOSUTILS_INSTALL_DIR) XDAIS_INSTALL_DIR=$(XDAIS_INSTALL_DIR) EDMA3_LLD_INSTALL_DIR=$(EDMA3_LLD_INSTALL_DIR) CODEGEN_INSTALL_DIR=$(CODEGEN_INSTALL_DIR) LINK_INSTALL_DIR=$(LINK_INSTALL_DIR) XDCARGS="prod"
 
endif
 
 
 
codecs_clean:
 
ifeq ($(HAS_SERVER),true)
 
         $(MAKE) -C $(CODEC_INSTALL_DIR) DVSDK_INSTALL_DIR=$(DVSDK_INSTALL_DIR) BIOS_INSTALL_DIR=$(BIOS_INSTALL_DIR) XDC_INSTALL_DIR=$(XDC_INSTALL_DIR) CE_INSTALL_DIR=$(CE_INSTALL_DIR) FC_INSTALL_DIR=$(FC_INSTALL_DIR) CMEM_INSTALL_DIR=$(LINUXUTILS_INSTALL_DIR) CODEC_INSTALL_DIR=$(CODEC_INSTALL_DIR) BIOSUTILS_INSTALL_DIR=$(BIOSUTILS_INSTALL_DIR) XDAIS_INSTALL_DIR=$(XDAIS_INSTALL_DIR) LINK_INSTALL_DIR=$(LINK_INSTALL_DIR) XDCARGS="prod" clean
 
endif
 
 
 
#==============================================================================
 
# Build the dmammapk kernel module (if the configured for the platform). Also,
 
# an explicit cleanup target is defined.
 
#==============================================================================
 
dmammapk:
 
ifneq ($(DMAMMAP_INSTALL_DIR),)
 
         $(MAKE) -C $(DMAMMAP_INSTALL_DIR) KERNEL_DIR=$(LINUXKERNEL_INSTALL_DIR)
 
         @mkdir -p $(DVSDK_INSTALL_DIR)/kernel_binaries/$(PLATFORM)
 
         @cp $(DMAMMAP_INSTALL_DIR)/*.ko $(DVSDK_INSTALL_DIR)/kernel_binaries/$(PLATFORM)/
 
         @echo
 
         @echo "dmammapk kernel module can be found under $(DVSDK_INSTALL_DIR)/kernel_binaries/$(PLATFORM)"
 
endif
 
 
 
dmammapk_clean:
 
ifneq ($(DMAMMAP_INSTALL_DIR),)
 
         $(MAKE) -C $(DMAMMAP_INSTALL_DIR) KERNEL_DIR=$(LINUXKERNEL_INSTALL_DIR) clean
 
endif
 
 
 
#==============================================================================
 
# Build the edma kernel module (if the configured platform is dm365). Also,
 
# an explicit cleanup target is defined.
 
#==============================================================================
 
edmak:
 
ifeq ($(HAS_EDMAK),true)
 
         $(MAKE) -C $(LINUXUTILS_INSTALL_DIR)/packages/ti/sdo/linuxutils/edma/src/module KERNEL_DIR=$(LINUXKERNEL_INSTALL_DIR)
 
         @mkdir -p $(DVSDK_INSTALL_DIR)/kernel_binaries/$(PLATFORM)
 
         @cp $(LINUXUTILS_INSTALL_DIR)/packages/ti/sdo/linuxutils/edma/src/module/edmak.ko $(DVSDK_INSTALL_DIR)/kernel_binaries/$(PLATFORM)/
 
         @echo
 
         @echo "edmak.ko kernel module can be found under $(DVSDK_INSTALL_DIR)/kernel_binaries/$(PLATFORM)"
 
endif
 
 
 
edmak_clean:
 
ifeq ($(HAS_EDMAK),true)
 
         $(MAKE) -C $(LINUXUTILS_INSTALL_DIR)/packages/ti/sdo/linuxutils/edma/src/module KERNEL_DIR=$(LINUXKERNEL_INSTALL_DIR) clean
 
endif
 
 
 
#==============================================================================
 
# Build the irq kernel module (if the configured platform is dm365). Also,
 
# an explicit cleanup target is defined.
 
#==============================================================================
 
irqk:
 
ifeq ($(HAS_IRQK),true)
 
         $(MAKE) -C $(LINUXUTILS_INSTALL_DIR)/packages/ti/sdo/linuxutils/irq/src/module KERNEL_DIR=$(LINUXKERNEL_INSTALL_DIR)
 
         @mkdir -p $(DVSDK_INSTALL_DIR)/kernel_binaries/$(PLATFORM)
 
         @cp $(LINUXUTILS_INSTALL_DIR)/packages/ti/sdo/linuxutils/irq/src/module/irqk.ko $(DVSDK_INSTALL_DIR)/kernel_binaries/$(PLATFORM)/
 
         @echo
 
         @echo "irqk.ko kernel module can be found under $(DVSDK_INSTALL_DIR)/kernel_binaries/$(PLATFORM)"
 
endif
 
 
 
irqk_clean:
 
ifeq ($(HAS_IRQK),true)
 
         $(MAKE) -C $(LINUXUTILS_INSTALL_DIR)/packages/ti/sdo/linuxutils/irq/src/module KERNEL_DIR=$(LINUXKERNEL_INSTALL_DIR) clean
 
endif
 
 
 
#==============================================================================
 
# Build the Davinci Multimedia Application Interface for the configured
 
# platform. Also, an explicit cleanup target is defined.
 
#==============================================================================
 
dmai:
 
         @$(MAKE) -C $(DMAI_INSTALL_DIR) PLATFORM=${DMAI_PLATFORM}
 
                            CE_INSTALL_DIR_${DMAI_PLATFORM}=$(CE_INSTALL_DIR)
 
                                     CODEC_INSTALL_DIR_${DMAI_PLATFORM}=$(CODEC_INSTALL_DIR)
 
                                     LINK_INSTALL_DIR_${DMAI_PLATFORM}=$(LINK_INSTALL_DIR)
 
                                     CMEM_INSTALL_DIR_${DMAI_PLATFORM}=$(CMEM_INSTALL_DIR)
 
                                     FC_INSTALL_DIR_${DMAI_PLATFORM}=$(FC_INSTALL_DIR)
 
                                     LPM_INSTALL_DIR_${DMAI_PLATFORM}=$(LPM_INSTALL_DIR)
 
                                     XDAIS_INSTALL_DIR_${DMAI_PLATFORM}=$(XDAIS_INSTALL_DIR)
 
                                     BIOS_INSTALL_DIR_${DMAI_PLATFORM}=$(BIOS_INSTALL_DIR)
 
                                     LINUXLIBS_INSTALL_DIR_${DMAI_PLATFORM}=$(LINUXLIBS_INSTALL_DIR)
 
                                     LINUXKERNEL_INSTALL_DIR_${DMAI_PLATFORM}=$(LINUXKERNEL_INSTALL_DIR)
 
                                      CROSS_COMPILE_${DMAI_PLATFORM}=$(CSTOOL_PREFIX)
 
                                     XDC_INSTALL_DIR_${DMAI_PLATFORM}=$(XDC_INSTALL_DIR)
 
                                     EXEC_DIR_${DMAI_PLATFORM}=$(EXEC_DIR) all
 
 
 
         @echo
 
         @echo "DMAI applications can be found under $(DMAI_INSTALL_DIR)/packages/ti/sdo/dmai/apps"
 
         @echo "To install them to $(EXEC_DIR)"
 
         @echo "Execute 'make dmai_install'"
 
 
 
dmai_clean:
 
         $(MAKE) -C $(DMAI_INSTALL_DIR) PLATFORM=${DMAI_PLATFORM}
 
                   XDC_INSTALL_DIR_${DMAI_PLATFORM}=$(XDC_INSTALL_DIR) clean
 
 
 
dmai_install:
 
         $(MAKE) -C $(DMAI_INSTALL_DIR) PLATFORM=${DMAI_PLATFORM} EXEC_DIR=$(EXEC_DIR) install
 
 
 
#==============================================================================
 
# Build DSP Link for the configured platform. Also, an explicit cleanup target
 
# is defined.
 
#==============================================================================
 
ifeq ($(HAS_DSPLINK),true)
 
dsplink:     dsplink_arm dsplink_dsp dsplink_samples
 
 
 
dsplink_dsp_genpackage:
 
         $(XDC_INSTALL_DIR)/xdc -C $(LINK_INSTALL_DIR)/dsplink/dsp clean
 
         $(XDC_INSTALL_DIR)/xdc -C $(LINK_INSTALL_DIR)/dsplink/dsp .interfaces
 
 
 
dsplink_gpp_genpackage:
 
         $(XDC_INSTALL_DIR)/xdc -C $(LINK_INSTALL_DIR)/dsplink/gpp clean
 
         $(XDC_INSTALL_DIR)/xdc -C $(LINK_INSTALL_DIR)/dsplink/gpp .interfaces
 
        
 
dsplink_cfg:
 
         DSPLINK=$(LINK_INSTALL_DIR)/dsplink perl $(LINK_INSTALL_DIR)/dsplink/config/bin/dsplinkcfg.pl $(DSPLINK_CONFIG)
 
 
 
dsplink_arm:    dsplink_cfg dsplink_gpp_genpackage
 
         DSPLINK=$(LINK_INSTALL_DIR)/dsplink $(XDC_INSTALL_DIR)/gmake -C $(LINK_INSTALL_DIR)/dsplink/gpp/src BASE_TOOLCHAIN=$(MVTOOL_DIR) BASE_BUILDOS=$(LINUXKERNEL_INSTALL_DIR) KERNEL_DIR=${LINUXKERNEL_INSTALL_DIR} TOOL_PATH=$(CSTOOL_DIR)/bin
 
         @mkdir -p $(DVSDK_INSTALL_DIR)/kernel_binaries/$(PLATFORM)
 
         @cp $(DSPLINK_MODULE) $(DVSDK_INSTALL_DIR)/kernel_binaries/$(PLATFORM)/
 
         @echo
 
         @echo "dsplinkk.ko kernel module can be found under $(DVSDK_INSTALL_DIR)/kernel_binaries/$(PLATFORM)"
 
 
 
dsplink_dsp:     dsplink_cfg dsplink_dsp_genpackage
 
         DSPLINK=$(LINK_INSTALL_DIR)/dsplink $(XDC_INSTALL_DIR)/gmake -C $(LINK_INSTALL_DIR)/dsplink/dsp/src BASE_SABIOS=$(BIOS_INSTALL_DIR) XDCTOOLS_DIR=$(XDC_INSTALL_DIR) BASE_CGTOOLS=$(CODEGEN_INSTALL_DIR)
 
 
 
dsplink_samples:
 
         DSPLINK=$(LINK_INSTALL_DIR)/dsplink $(XDC_INSTALL_DIR)/gmake -C $(LINK_INSTALL_DIR)/dsplink/gpp/src/samples BASE_TOOLCHAIN=$(MVTOOL_DIR) BASE_BUILDOS=$(LINUXKERNEL_INSTALL_DIR)
 
         DSPLINK=$(LINK_INSTALL_DIR)/dsplink $(XDC_INSTALL_DIR)/gmake -C $(LINK_INSTALL_DIR)/dsplink/dsp/src/samples BASE_SABIOS=$(BIOS_INSTALL_DIR) XDCTOOLS_DIR=$(XDC_INSTALL_DIR) BASE_CGTOOLS=$(CODEGEN_INSTALL_DIR)
 
else
 
dsplink:
 
endif
 
 
 
ifeq ($(HAS_DSPLINK),true)
 
dsplink_clean:
 
         DSPLINK=$(LINK_INSTALL_DIR)/dsplink $(XDC_INSTALL_DIR)/gmake -C $(LINK_INSTALL_DIR)/dsplink/gpp/src BASE_TOOLCHAIN=$(MVTOOL_DIR) BASE_BUILDOS=$(LINUXKERNEL_INSTALL_DIR) clean
 
         DSPLINK=$(LINK_INSTALL_DIR)/dsplink $(XDC_INSTALL_DIR)/gmake -C $(LINK_INSTALL_DIR)/dsplink/dsp/src BASE_SABIOS=$(BIOS_INSTALL_DIR) XDCTOOLS_DIR=$(XDC_INSTALL_DIR) BASE_CGTOOLS=$(CODEGEN_INSTALL_DIR) clean
 
         DSPLINK=$(LINK_INSTALL_DIR)/dsplink $(XDC_INSTALL_DIR)/gmake -C $(LINK_INSTALL_DIR)/dsplink/gpp/src/samples BASE_TOOLCHAIN=$(MVTOOL_DIR) BASE_BUILDOS=$(LINUXKERNEL_INSTALL_DIR) clean
 
         DSPLINK=$(LINK_INSTALL_DIR)/dsplink $(XDC_INSTALL_DIR)/gmake -C $(LINK_INSTALL_DIR)/dsplink/dsp/src/samples BASE_SABIOS=$(BIOS_INSTALL_DIR) XDCTOOLS_DIR=$(XDC_INSTALL_DIR) BASE_CGTOOLS=$(CODEGEN_INSTALL_DIR) clean
 
else
 
dsplink_clean:
 
endif
 
 
 
#==============================================================================
 
# Install the built binaries to the target file system.
 
#==============================================================================
 
install:
 
         @echo
 
         @echo Creating $(EXEC_DIR)
 
         @mkdir -p $(EXEC_DIR)
 
 
 
         @echo Copying kernel modules to target file system: $(EXEC_DIR)/
 
         @install -m 666 $(DVSDK_INSTALL_DIR)/kernel_binaries/$(PLATFORM)/* $(EXEC_DIR)/
 
 
 
         @echo Installing DVSDK demos..
 
         $(MAKE) -C $(DEMO_INSTALL_DIR)/$(PLATFORM) install EXEC_DIR=$(EXEC_DIR)
 
 
 
         @echo Copying examples..
 
         @cp -rpf examples/web $(EXEC_DIR)/
 
         @cp -p examples/dvevmdemo $(EXEC_DIR)/
 
 
 
ifeq ($(PLATFORM),dm6446)
 
         @echo Copying codec servers..
 
         @install -m 666 $(CODEC_INSTALL_DIR)/packages/ti/sdo/servers/encode/encodeCombo.x64P $(EXEC_DIR)/
 
         -@install -m 666 $(CODEC_INSTALL_DIR)/packages/ti/sdo/servers/encode/encodeCombo_e.x64P $(EXEC_DIR)/
 
         @install -m 666 $(CODEC_INSTALL_DIR)/packages/ti/sdo/servers/decode/decodeCombo.x64P $(EXEC_DIR)/
 
         -@install -m 666 $(CODEC_INSTALL_DIR)/packages/ti/sdo/servers/decode/decodeCombo_e.x64P $(EXEC_DIR)/
 
         @install -m 666 $(CODEC_INSTALL_DIR)/packages/ti/sdo/servers/loopback/loopbackCombo.x64P $(EXEC_DIR)/
 
         -@install -m 666 $(CODEC_INSTALL_DIR)/packages/ti/sdo/servers/loopback/loopbackCombo_e.x64P $(EXEC_DIR)/
 
         @echo Copying dsplinkk.ko
 
         @install -m 666 $(LINK_INSTALL_DIR)/dsplink/gpp/export/BIN/Linux/DAVINCI/RELEASE/dsplinkk.ko $(EXEC_DIR)/
 
endif
 
 
 
ifeq ($(PLATFORM),dm6467)
 
         @echo Copying codec servers..
 
         @install -m 666 $(CODEC_INSTALL_DIR)/packages/ti/sdo/server/cs/bin/cs.x64P $(EXEC_DIR)/
 
         @echo Copying mapdmaqhd..
 
         @install -m 777 $(DVSDK_INSTALL_DIR)/mapdmaq-hd/mapdmaq-hd $(EXEC_DIR)/
 
endif
 
 
 
ifeq ($(PLATFORM),dm355)
 
         @echo Copying mapdmaq..
 
         @install -m 777 $(DVSDK_INSTALL_DIR)/mapdmaq/mapdmaq $(EXEC_DIR)/
 
endif
 
 
 
#==============================================================================
 
# Build the Linux examples
 
#==============================================================================
 
psp_examples:
 
         $(MAKE) -C $(LINUXEXAMPLES_INSTALL_DIR) PLATFORM=$(PLATFORM) KERNEL_DIR=$(LINUXKERNEL_INSTALL_DIR) CROSS_COMPILE=$(MVTOOL_PREFIX) DEST=$(LINUXEXAMPLES_INSTALL_DIR) all install
 
         @echo
 
         @echo "PSP examples can be found under $(LINUXEXAMPLES_INSTALL_DIR)/$(PLATFORM)"
 
 
 
psp_examples_clean:
 
         $(MAKE) -C $(LINUXEXAMPLES_INSTALL_DIR) PLATFORM=$(PLATFORM) KERNEL_DIR=$(LINUXKERNEL_INSTALL_DIR) CROSS_COMPILE=$(MVTOOL_PREFIX) clean
 
 
 
psp_examples_install:
 
         $(MAKE) -C $(LINUXEXAMPLES_INSTALL_DIR) PLATFORM=$(PLATFORM) KERNEL_DIR=$(LINUXKERNEL_INSTALL_DIR) CROSS_COMPILE=$(MVTOOL_PREFIX) FINAL_DEST=$(EXEC_DIR) install
 
 
 
 
 
 
 
这两个文件修改完成了,我们的开发环境就可以说安装完成了。在接下来的工作中,我们需要编译自己的Uboot,Kennel,熟悉DVSDK,编写应用程序等开发工作,在以后的章节中进一步讲到。
 
休息一下,现在是广告时间,哈哈
 
深圳市俊竹科技有限公司提供Davinci 系列产品的方案和开发板,在这里展示一下我们的DM6467T开发板吧,分核心板和底板,你也可以只做自己的底板,买的我们的核心板,或者直接让我们来定制。