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.

problem in building syslink samples with CCS

Other Parts Discussed in Thread: OMAP3530, DM3730

hello 

with reference to 

Creating CCS Project for SysLink samples

http://processors.wiki.ti.com/index.php/Creating_CCS_Project_for_SysLink_samples

i was trying to build messageQ example in CCS 5.3 for DSP. but i am facing building issues which is as follows

.................................

C:\ti\ccsv5\utils\bin\gmake -k all
'Building file: ../MessageQ_ti81xx_dsp.cfg'
'Invoking: XDCtools'
"C:/ti/xdctools_3_23_03_53/xs" --xdcpath="C:/ti/bios_6_33_05_46/packages;C:/ti/syslink_2_10_08_35/packages;C:/ti/ccsv5/ccs_base;" xdc.tools.configuro -o configPkg -t ti.targets.elf.C674 -p ti.syslink.samples.rtos.platforms.ti814x.dsp -r debug -c "C:/ti/ccsv5/tools/compiler/c6000_7.3.4" --cfgArgs "{dmTimerFreq: 32768}" --compileOptions "-g --optimize_with_debug" "../MessageQ_ti81xx_dsp.cfg"
making package.mak (because of package.bld) ...
generating interfaces for package configPkg (because package/package.xdc.inc is older than package.xdc) ...
configuring MessageQ_ti81xx_dsp.xe674 from package/cfg/MessageQ_ti81xx_dsp_pe674.cfg ...
js: "C:/ti/workspace/messageQ_DSP_new/MessageQ_ti81xx_dsp.cfg", line 89: xdc.services.global.XDCException: xdc.PACKAGE_NOT_FOUND: can't locate the package 'ti.sdo.utils' along the path: 'C:/ti/bios_6_33_05_46/packages;C:/ti/syslink_2_10_08_35/packages;C:/ti/ccsv5/ccs_base;C:/ti/xdctools_3_23_03_53/packages;..;'. Ensure that the package path is set correctly.
"./package/cfg/MessageQ_ti81xx_dsp_pe674.cfg", line 200
"./package/cfg/MessageQ_ti81xx_dsp_pe674.cfg", line 279
"./package/cfg/MessageQ_ti81xx_dsp_pe674.cfg", line 187
gmake.exe: *** [package/cfg/MessageQ_ti81xx_dsp_pe674.xdl] Error 1
js: "C:/ti/xdctools_3_23_03_53/packages/xdc/tools/Cmdr.xs", line 51: Error: xdc.tools.configuro: configuration failed due to earlier errors (status = 2); 'linker.cmd' deleted.
gmake: Target `all' not remade because of errors.

........................................................................................

and in Error window it shows

can't locate package ti.sdo.utils. i have already installes syslink_2_10_08_35.

what can be done?

  • Renu,

    The ti.sdo.utils package is part of IPC which I don't see along your path. Can I see a screenshot of your RTSC configuration settings page. You can right-click on your project -> properites-> General-> RTSC to see what repositories your pulling into your project.

    Let me know if this helps.

    Moses

  • You need to select "Inter-processor Communication" and hit "OK" . Do a "Rebuild All" then.

    Todd

  • hello,

    I've successfully built messageQ example for TI814X  processor.

    But i've to built it for OMAP 3530 for that my queries are:

    Based on the content in <syslink_install_dir>/packages/ti/syslink/samples/rtos/messageQ/package.bld 

              i) Properties->Build->C6000 Compiler->Predefined Symbols.

                i've selected DSYSLINK_PLATFORM_OMAP3530. is it correct?

         

               ii) Properties->Build->XDCtools->Advanced Options->Configuration Script Arguments. what should          be  dmTimerFreq value as it not defined in products.mak file?

              iii) Properties -> General -> RTSC -> Products and Repositories -> what to set in platform section?

                

       

    • Renu,

      Re: i) Predefine Symbols

      The macro name does not contain the initial 'D' character. That was the '-D' compiler option. The name should just be 'SYSLINK_PLATFORM_OMAP3530'.

      Re: ii) dmTimerFreq

      I don't think you need to set dmTimerFreq for OMAP3530. Just leave it out.

      Re: iii) Platform selection

      The SysLink samples were deprecated, we replaced them with new examples which are much easier to build. You should base your work on the new examples. Look in the examples repository.

      SysLink_2_10_08_35/examples/archive/ti_platforms_evm3530_linux

      Use the ex02_messageq.zip example. Copy the ex02_messageq/config.bld file into your CCS project. This file defines a platform instance for the OMAP3530 EVM. Update your project build properties to use this new file.

      Project Properties > Show advanced settings (lower left corner)
      CCS Build > XDCtools > Advanced Options
      Build configuration file (-b): config.bld

      Now set your platform to use the platform instance defined in the config.bld file.

      Project Properties
      CCS General > RTSC (tab)
      Platform: ti.platforms.evm3530:dsp

      Don't forget the ':dsp' part. That defines the instance object.

      ~Ramsey

    • hello,

      I've followed Solution of Mr. Ramsey and copied Config.bld from " ex02_messageq" and pasted to my  CCS project. 

      And updated my project accordingly.Snapshot is as below:

      but Platform option of "ti.platforms.evm3530:dsp"was not there. what may be the problem

    • Renu,

      Sorry, I should have given better instructions. When you click on the platform menu, it will display a list of platforms found along the package path, but it will not look into your config.bld file. Select ti.platforms.evm3530. Then click inside the text box and type in ':dsp'.

      This text box is both a menu and a textfield. You can type into it for custom platform names.

      ~Ramsey

    • hello 

      ':dsp' is added and project is built. Now this time error is

      C:\ti\ccsv5\utils\bin\gmake -k all
      'Building file: ../MessageQ_omap3530_dsp.cfg'
      'Invoking: XDCtools'
      "C:/ti/xdctools_3_23_03_53/xs" --xdcpath="C:/ti/bios_6_33_05_46/packages;C:/ti/syslink_2_10_08_35/packages;C:/ti/ipc_1_24_03_32/packages;C:/ti/ccsv5/ccs_base;" xdc.tools.configuro -o configPkg -t ti.targets.elf.C64P -p ti.platforms.evm3530:dsp -r debug -b "C:/ti/workspace/MSGQ_DM3730/config.bld" -c "C:/ti/ccsv5/tools/compiler/c6000_7.3.4" --compileOptions "-g --optimize_with_debug" "../MessageQ_omap3530_dsp.cfg"
      making package.mak (because of package.bld) ...
      generating interfaces for package configPkg (because package/package.xdc.inc is older than package.xdc) ...
      configuring MessageQ_omap3530_dsp.xe64P from package/cfg/MessageQ_omap3530_dsp_pe64P.cfg ...
      js: "C:/ti/workspace/MSGQ_DM3730/SysLinkSamples_common.cfg.xs", line 91: TypeError: Cannot read property "base" from undefined
      "C:/ti/workspace/MSGQ_DM3730/MessageApp_common.cfg.xs", line 62
      "C:/ti/workspace/MSGQ_DM3730/MessageQ_omap3530_dsp.cfg", line 60
      "./package/cfg/MessageQ_omap3530_dsp_pe64P.cfg", line 238
      "./package/cfg/MessageQ_omap3530_dsp_pe64P.cfg", line 317
      "./package/cfg/MessageQ_omap3530_dsp_pe64P.cfg", line 225
      gmake.exe: *** [package/cfg/MessageQ_omap3530_dsp_pe64P.xdl] Error 1
      js: "C:/ti/xdctools_3_23_03_53/packages/xdc/tools/Cmdr.xs", line 51: Error: xdc.tools.configuro: configuration failed due to earlier errors (status = 2); 'linker.cmd' deleted.
      gmake: Target `all' not remade because of errors.

    • Renu,

      It looks like you imported the config.bld file from the ex02_messageq example into your messageq sample project. The two are not compatible. My intention was for you to abandon the messaageq sample and start over with the ex02_messageq example. The SysLink samples are depricated and not supported.

      I've attached two projects which I created in CCS from the ex02_messageq example. You need both projects. The dsp project builds the actual executable. The shared project just contains common files (like config.bld).

      omap3530_messageq_dsp - CCS Project, build the executable
      omap3530_messageq_shared - Eclipse Project, just contains files, does not build anything

      Here are some project settings to highlight for you. These all apply to the dsp project.

      1. Display advanced project settings. I always turn on this feature.

      Project Properties
      Show advanced settings (look in the lower left corner of the dialog)

      2. Build ELF executable. We don't use COFF anymore.

      Project Properties
      General > Main (tab)
      Advanced Settings > Output format: eabi (ELF)

      3. Setup the RTSC package path. For SysLink, you just add the repository because it is not a product.

      Project Properties
      General > RTSC (tab)
      XDCtools version: 3.25.5.94 (I have a slightly newer version)
      IPC 1.24.3.32
      SYS/BIOS 6.35.4.50
      Other Repositories: C:\Products\syslink_2_10_08_35\packages

      Target: ti.targets.elf.c64P
      Platform: ti.platforms.evm3530:dsp

      Look on the 'Order' tab to see how I ordered the repositories.

      4. Setup the build configuration file (config.bld).

      Project Properties
      Build > XDCtools > Advanced Options
      Build configuration file (-b): "${workspace_loc}/omap3530_messageq_shared/config.bld"

      5. Compiler include path.

      Project Properties
      Build > C6000 Compiler > Include Options
      "${workspace_loc}"

      I'm wondering why you want to convert the examples to CCS Projects? It is not necessary to have a CCS project to debug the executable. You can build the examples using the makefiles which ship with the product. Then you simply load symbols in CCS and attach to the DSP after it is loaded by the HOST.

      ~Ramsey

      omap3530_messageq.zip
    • hello

      with above mentioned setting I was able to build DSP side code in CCS.

      On GPP or ARM side i was building MessageQ example on INTEGRITY RTOS. But there is no provoision of loading  DSP executable from ARM  in ex02_messageq as it was in earlier Message Q example(SlaveLoader_Starup).

      My query is:: what is minimum piece of code required for loading DSP executable From ARM(OMAP3530) side??

       

    • The ex02_messageQ example have been created to illustrate how to create and build a stand-alone application.  Newer version of SysLink only contain examples(nto samples).  The new examples don't call directly into the SlaveLoader but do use the SlaveLoader external binary to load the application.  Take a look at the run.sh script in your ex02_messageq directory.

      The "install" goal for ex02_message, should copy the slaveloader binary and application binaries unto your device's filesystem.

      Take a look at the SysLink Install Guide  for info on how to build and run the examples.