This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Building encode demo in dvsdk 3.10 for the DM355

I am trying to build the encode demo in v3.10 of the dvsdk. I am using Montavista's GCC 4.2.0 compiler. Here is my Rules.make file:

# Define target platform.
PLATFORM=dm355

# The installation directory of the DVSDK.
DVSDK_INSTALL_DIR=/opt/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

# The directory that points to your kernel source directory.
LINUXKERNEL_INSTALL_DIR=/lsp/kernel_flex_v2_rc1/trunk

# Where temporary Linux headers and libs are installed.
LINUXLIBS_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/../linuxlibs-2009.11-armv5te

# Where Linux examples are installed.
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/montavista/pro/devkit/arm/v5t_le
CSTOOL_PREFIX=arm_v5t_le-

MVTOOL_DIR=$(CSTOOL_DIR)
MVTOOL_PREFIX=$(CSTOOL_PREFIX)

# Where to copy the resulting executables
EXEC_DIR=$(HOME)/install/$(PLATFORM)

 

When I run make in the /opt/dvsdk_3_10_00_19/dvsdk_demos_3_10_00_16/dm355/encode directory, I get the following error message:

[nbutts@eslinux encode]$ make

======== Building encode ========
Configuring application using encode.cfg

making package.mak (because of package.bld) ...
js: "./package.bld", line 62: Error: template generation of 'compiler.opt' failed: Error: /opt/montavista/pro/devkit/arm/v5t_le/nullgcc cannot be found. Ensure that rootDir for the GCArmv5T target is set correctly in ./config.bld
gmake: *** Deleting file `package.mak'
making package.mak (because of package.bld) ...
js: "./package.bld", line 62: Error: template generation of 'compiler.opt' failed: Error: /opt/montavista/pro/devkit/arm/v5t_le/nullgcc cannot be found. Ensure that rootDir for the GCArmv5T target is set correctly in ./config.bld
gmake: *** Deleting file `package.mak'
gmake: *** No rule to make target `.configuro'.  Stop.
Warning: directory "/opt/dvsdk_3_10_00_19/dsplink_linux_1_64/packages" on package path does not exist
js: "/opt/dvsdk_3_10_00_19/xdctools_3_16_01_27/packages/xdc/tools/Cmdr.xs", line 51: Error: xdc.tools.configuro: configuration failed due to earlier errors (status = 2); 'linker.cmd' deleted.
make: *** [encode_config/compiler.opt] Error 1

It looks like it is getting the wrong compiler. But I can't find what file this is located in. Has anyone come across this?

  • Hello,

    DVSDK 3.10 Makefile's and everything else is validated using CS compiler. In other words, DVSDK 3.10 does not support MV compiler.  Please check the release note, it recommend to use CS 2009q1 compiler.

    Thanks

    Brijesh

  • At this point, the compiler is not being invoked. It is a bunch of Javascript that is running. I've been told by TI that I need to move to the v3.10 SDK to improve the performance of the MPEG4 codec. But to do that I, apparently, need to switch compilers, update to a newer kernel, and through away 2 years of work. That seems a bit counterproductive.

  • I tried compile the encode demo with the CS compiler. I got the same error:


    ======== Building encode ========
    Configuring application using encode.cfg

    making package.mak (because of package.bld) ...
    js: "./package.bld", line 62: Error: template generation of 'compiler.opt' failed: Error: /opt/arm-2009q1/nullgcc cannot be found. Ensure that rootDir for the GCArmv5T target is set correctly in ./config.bld
    gmake: *** Deleting file `package.mak'
    making package.mak (because of package.bld) ...
    js: "./package.bld", line 62: Error: template generation of 'compiler.opt' failed: Error: /opt/arm-2009q1/nullgcc cannot be found. Ensure that rootDir for the GCArmv5T target is set correctly in ./config.bld
    gmake: *** Deleting file `package.mak'
    gmake: *** No rule to make target `.configuro'.  Stop.
    Warning: directory "/home/nlbutts/dvsdk/dvsdk_3_10_00_19/dsplink_linux_1_64/packages" on package path does not exist
    js: "/home/nlbutts/dvsdk/dvsdk_3_10_00_19/xdctools_3_16_01_27/packages/xdc/tools/Cmdr.xs", line 51: Error: xdc.tools.configuro: configuration failed due to earlier errors (status = 2); 'linker.cmd' deleted.
    make: *** [encode_config/compiler.opt] Error 1

    I also had to add the following line to the Makefile:

    include ../../../Rules.make

    Otherwise it wouldn't attempt to compile because none of the paths were defined.

  • Hi Nick,

    Could you try to run 'make demos_clean' followed by 'make demos' from the top level directory of the dvsdk (DVSDK_INSTALL_DIR). Looking at the Makefile for the encode demo in DVSDK 3.10 I think it may not support users to run 'make' in the subdirectories. Building from the top-level seems to work for me.

    Best regards,

    Vincent

     

  • Here is what I get when I try make demos_clean followed by make demos:

     

    nlbutts@nlbutts-desktop:~/dvsdk/dvsdk_3_10_00_19$ make demos_clean
    make -C /home/nlbutts/dvsdk/dvsdk_3_10_00_19/dvsdk_demos_3_10_00_16 clean DVSDK_INSTALL_DIR=/home/nlbutts/dvsdk/dvsdk_3_10_00_19 XDC_INSTALL_DIR=/home/nlbutts/dvsdk/dvsdk_3_10_00_19/xdctools_3_16_01_27 CE_INSTALL_DIR=/home/nlbutts/dvsdk/dvsdk_3_10_00_19/codec_engine_2_25_05_16 FC_INSTALL_DIR=/home/nlbutts/dvsdk/dvsdk_3_10_00_19/framework_components_2_25_02_06 CMEM_INSTALL_DIR=/home/nlbutts/dvsdk/dvsdk_3_10_00_19/linuxutils_2_25_04_10 CODEC_INSTALL_DIR=/home/nlbutts/dvsdk/dvsdk_3_10_00_19/dm355_codecs_03_10_00_02 XDAIS_INSTALL_DIR=/home/nlbutts/dvsdk/dvsdk_3_10_00_19/xdais_6_25_02_11 LINK_INSTALL_DIR=/home/nlbutts/dvsdk/dvsdk_3_10_00_19/dsplink_linux_1_64 DMAI_INSTALL_DIR=/home/nlbutts/dvsdk/dvsdk_3_10_00_19/dmai_2_10_00_12 MVTOOL_DIR=/opt/arm-2009q1 CC=/opt/arm-2009q1/bin/arm-none-linux-gnueabi-gcc CROSS_COMPILE=/opt/arm-2009q1/bin/arm-none-linux-gnueabi- LINUXLIBS_INSTALL_DIR=/home/nlbutts/dvsdk/dvsdk_3_10_00_19/../linuxlibs-2009.11-armv5te PLATFORM=dm355
    make[1]: Entering directory `/home/nlbutts/dvsdk/dvsdk_3_10_00_19/dvsdk_demos_3_10_00_16'
    Cleaning all in subdirectory dm355...
    Removing generated files..
    Removing generated files..
    Removing generated files..
    Removing generated files..
    Removing generated files..
    make[1]: Leaving directory `/home/nlbutts/dvsdk/dvsdk_3_10_00_19/dvsdk_demos_3_10_00_16'
    nlbutts@nlbutts-desktop:~/dvsdk/dvsdk_3_10_00_19$ make demos
    make -C /home/nlbutts/dvsdk/dvsdk_3_10_00_19/dvsdk_demos_3_10_00_16 dm355 DVSDK_INSTALL_DIR=/home/nlbutts/dvsdk/dvsdk_3_10_00_19 XDC_INSTALL_DIR=/home/nlbutts/dvsdk/dvsdk_3_10_00_19/xdctools_3_16_01_27 CE_INSTALL_DIR=/home/nlbutts/dvsdk/dvsdk_3_10_00_19/codec_engine_2_25_05_16 FC_INSTALL_DIR=/home/nlbutts/dvsdk/dvsdk_3_10_00_19/framework_components_2_25_02_06 CMEM_INSTALL_DIR=/home/nlbutts/dvsdk/dvsdk_3_10_00_19/linuxutils_2_25_04_10 CODEC_INSTALL_DIR=/home/nlbutts/dvsdk/dvsdk_3_10_00_19/dm355_codecs_03_10_00_02 XDAIS_INSTALL_DIR=/home/nlbutts/dvsdk/dvsdk_3_10_00_19/xdais_6_25_02_11 LINK_INSTALL_DIR=/home/nlbutts/dvsdk/dvsdk_3_10_00_19/dsplink_linux_1_64 DMAI_INSTALL_DIR=/home/nlbutts/dvsdk/dvsdk_3_10_00_19/dmai_2_10_00_12 MVTOOL_DIR=/opt/arm-2009q1 CC=/opt/arm-2009q1/bin/arm-none-linux-gnueabi-gcc AR=/opt/arm-2009q1/bin/arm-none-linux-gnueabi-ar CROSS_COMPILE=/opt/arm-2009q1/bin/arm-none-linux-gnueabi- LINUXLIBS_INSTALL_DIR=/home/nlbutts/dvsdk/dvsdk_3_10_00_19/../linuxlibs-2009.11-armv5te PLATFORM=dm355
    make[1]: Entering directory `/home/nlbutts/dvsdk/dvsdk_3_10_00_19/dvsdk_demos_3_10_00_16'
    Making SimpleWidget for dm355...
    Compiling Button_dm355.o470MV from Button.c..
    Compiling Convert_dm355.o470MV from Convert.c..
    Compiling Font_dm355.o470MV from Font.c..
    Font.c:42:22: error: ft2build.h: No such file or directory
    Font.c:43:10: error: #include expects "FILENAME" or <FILENAME>
    Font.c:44:10: error: #include expects "FILENAME" or <FILENAME>
    Font.c: In function 'Font_create':
    Font.c:56: warning: implicit declaration of function 'calloc'
    Font.c:56: warning: incompatible implicit declaration of built-in function 'calloc'
    Font.c:63: warning: implicit declaration of function 'FT_Init_FreeType'
    Font.c:63: error: 'FT_Library' undeclared (first use in this function)
    Font.c:63: error: (Each undeclared identifier is reported only once
    Font.c:63: error: for each function it appears in.)
    Font.c:63: error: expected expression before ')' token
    Font.c:65: warning: implicit declaration of function 'free'
    Font.c:65: warning: incompatible implicit declaration of built-in function 'free'
    Font.c:69: warning: implicit declaration of function 'FT_New_Face'
    Font.c:69: error: expected expression before 'void'
    Font.c:69: error: expected ')' before 'hFont'
    Font.c:72: warning: incompatible implicit declaration of built-in function 'free'
    Font.c:76: warning: implicit declaration of function 'FT_Select_Charmap'
    Font.c:76: error: 'FT_Face' undeclared (first use in this function)
    Font.c:76: error: expected ')' before 'hFont'
    Font.c:77: error: 'FT_ENCODING_UNICODE' undeclared (first use in this function)
    Font.c:78: warning: incompatible implicit declaration of built-in function 'free'
    Font.c: In function 'Font_delete':
    Font.c:88: warning: incompatible implicit declaration of built-in function 'free'
    make[2]: *** [Font_dm355.o470MV] Error 1
    make[1]: *** [dm355.build] Error 2
    make[1]: Leaving directory `/home/nlbutts/dvsdk/dvsdk_3_10_00_19/dvsdk_demos_3_10_00_16'
    make: *** [demos] Error 2
    nlbutts@nlbutts-desktop:~/dvsdk/dvsdk_3_10_00_19$

  • Hi Nick,

    Make sure you are following all the steps in the "Installing software components" section in the Getting Started Guide (http://processors.wiki.ti.com/index.php/GSG:_DVEVM_Software_Setup_for_DM3xx_Platforms#Installing_the_Software). Looks to me the build is not finding the contents of the linuxlibs and/or linux-davinci tar.gz files.

    Best regards,

    Vincent

  • Nick Butts said:

    js: "./package.bld", line 62: Error: template generation of 'compiler.opt' failed: Error: /opt/montavista/pro/devkit/arm/v5t_le/nullgcc cannot be found. Ensure that rootDir for the GCArmv5T target is set correctly in ./config.bld

    gmake: *** Deleting file `package.mak'
    making package.mak (because of package.bld) ...
    js: "./package.bld", line 62: Error: template generation of 'compiler.opt' failed: Error: /opt/montavista/pro/devkit/arm/v5t_le/nullgcc cannot be found. Ensure that rootDir for the GCArmv5T target is set correctly in ./config.bld
    gmake: *** Deleting file `package.mak'
    gmake: *** No rule to make target `.configuro'.  Stop.
    Warning: directory "/opt/dvsdk_3_10_00_19/dsplink_linux_1_64/packages" on package path does not exist
    js: "/opt/dvsdk_3_10_00_19/xdctools_3_16_01_27/packages/xdc/tools/Cmdr.xs", line 51: Error: xdc.tools.configuro: configuration failed due to earlier errors (status = 2); 'linker.cmd' deleted.
    make: *** [encode_config/compiler.opt] Error 1

    It looks like it is getting the wrong compiler. But I can't find what file this is located in. Has anyone come across this?

    You need to set the env variable CROSS_COMPILE.

    Check out my post in this thread.  You may need to add "bin" as well depending on the MV dir structure.

    http://e2e.ti.com/support/embedded/f/354/p/54672/232572.aspx#232572

    John A