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.

XDC runtime error: can't find program 'app.xe66's linker command template file: 'null' along the path

Other Parts Discussed in Thread: MATHLIB

Hi,

I'm using CCS 5.3.0.00090 and have created a new project for a custom board targeting the C6655 device.  I've successfully created a custom RTSC package "SaturnV_C6655" and have been able to include/use it within XGCONF editor.

On the "System, Program - Generation Options" tab I've set the following...

Linker Command File Options:

Linker command file      null

Sections to exclude       null

Section content              null

Build Integration Options:

Generate IDE project files (checked)

Run command   undefined

My understanding is that if Program.LinkTemplate was null it will my "custom" package included.

I see the following line within the project's app.cfg file so I assume that this requirement is being met.

var Platform = xdc.useModule('SaturnV_C6655.Platform');

Additionally the path does contain the directory location containing the "custom" package "SaturnV_C6655"

C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/customRepository

Upon building the project I get the following XDC error within the CDT Build Console... (highlighted in BOLD below)

Why is this happening?

===========================================

**** Build of configuration Debug for project SaturnV ****

"C:\\sw-fwdsp\\Kilimanjaro\\MAIN\\ti64+\\toolset\\TI\\ccsv5\\utils\\bin\\gmake" -k all

'Building file: ../app.cfg'

'Invoking: XDCtools'

"C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/xdctools_3_24_05_48/xs" --xdcpath="C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/bios_6_34_02_18/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/edma3_lld_02_11_05_02/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/dsplib_c66x_3_1_0_0/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/imglib_c66x_3_1_1_0/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/mathlib_c66x_3_0_1_1/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/mcsdk_2_01_02_05/demos;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/pdk_C6657_1_1_2_5/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/uia_1_01_01_14/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/ipc_1_25_00_04/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/ccsv5/ccs_base;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/customRepository;" xdc.tools.configuro -o configPkg -t ti.targets.elf.C66 -p SaturnV_C6655 -r debug -c "C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/ccsv5/tools/compiler/c6000_7.4.1" --compileOptions "-g --optimize_with_debug" "../app.cfg"

making package.mak (because of package.bld) ...

generating interfaces for package configPkg (because package/package.xdc.inc is older than package.xdc) ...

configuring app.xe66 from package/cfg/app_pe66.cfg ...

js: "C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/xdctools_3_24_05_48/packages/xdc/cfg/Main.xs", line 46: XDC runtime error: can't find program 'app.xe66's linker command template file: 'null' along the path C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/bios_6_34_02_18/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/edma3_lld_02_11_05_02/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/dsplib_c66x_3_1_0_0/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/imglib_c66x_3_1_1_0/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/mathlib_c66x_3_0_1_1/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/mcsdk_2_01_02_05/demos;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/pdk_C6657_1_1_2_5/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/uia_1_01_01_14/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/ipc_1_25_00_04/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/ccsv5/ccs_base;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/customRepository;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/xdctools_3_24_05_48/packages;..;

gmake.exe: *** [package/cfg/app_pe66.xdl] Error 1

gmake.exe: *** Deleting file `package/cfg/app_pe66.xdl'

gmake.exe: *** [package/cfg/app_pe66.xdl] Deleting file `package/cfg/app_pe66.h'

gmake.exe: *** [package/cfg/app_pe66.xdl] Deleting file `package/cfg/app_pe66.c'

js: "C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/xdctools_3_24_05_48/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.

**** Build Finished ****

 

 

  • Additionally, if I issue a secondary project build the above error no longer happens, but rather other build errors happen due to the Program.global.XXXX for static mailboxes, queues, etc. are *not* being defined when compiling project source files.

    I am confident that this secondary problem is rooted in the original XDC error posted earlier.

    How do I fix my project to resolve the XDC error to autogenerate the needed compiler and linker input files?

    At the moment I am stuck.

    I would greatly appreciate any help to remedy this issue.

    Thanks in advance,

    -George

  • Another piece of information is that both "Platform" and "Program" entries within the XGCONF Outline view have a RED dot whereas all the other entries are BLUE

    The "Platform" say DO NOT MODIFY, but upon inspecting its Basic/CPU I see that dataMemory and stackMemory are not pointing to the correct memory segment DDR3_CODE as was configured within the "custom" platform.  The codeMemory is correctly pointing to DDR3_CODE.  Another observation is the L2Mode shows 0k and not the 512K that it's supposed to be.

    Other changes made to the "custom" platform do get detected by the XGCONF editor, but the above are still incorrect.

    Why aren't all the "custom" package platform settings correctly detected by XGCONF?

    Maybe this is a related issue to my XDC tools generation problem.

    -George

  • George,
    the linker script template and the build platform are related but they are not the same thing. If you have a linker script template that you want to use, you should set Program.linkTemplate to point to that file. If you want the build platform to set Program.linkTemplate, there is no need to set Program.linkTemplate to "null" because it is "null" already. However, it should still work if you set it to "null". What really happens if you try to set it explicitly to "null" is that XGCONF tries to set it to the string "null" instead of the value null. If you check your config script you'll probably see the line:
    Program.linkTemplate = "null";
    To fix it, either remove the line completely, and any other previous line that sets linkTemplate or just remove the quotes:
    Program.linkTemplate = null;
    That's a bug in XGCONF and I'll file a bug report to track it.
    Edit: the filed bug is https://bugs.eclipse.org/bugs/show_bug.cgi?id=407602.

    Also, you can't change the build platform in your config script. You already set up your platform to SaturnV_C6655, you can see it from the configuro command line. Please remove the line that invokes useModule on "SatrunV_C6655" from your cfg script and try building again. I am guessing you used the Platform Wizard to create your custom platform. You can use it to view your platform just to be sure that the settings still show up correctly in the platform. Use Tools->RTSC Tools->Platform->Edit/View to open your platform.

    Let me know what happens after you fix these two lines from the script.

  • Sasha,

    After using XDCscript Editor...

    Removed quotes around "null" from... Program.linkTemplate = "null"; to... Program.linkTemplate = null;

    Still failed, but differently...

    **** Build of configuration Debug for project SaturnV ****

    "C:\\sw-fwdsp\\Kilimanjaro\\MAIN\\ti64+\\toolset\\TI\\ccsv5\\utils\\bin\\gmake" -k all 'Building file: ../app.cfg' 'Invoking: XDCtools' "C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/xdctools_3_24_05_48/xs" --xdcpath="C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/bios_6_34_02_18/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/edma3_lld_02_11_05_02/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/dsplib_c66x_3_1_0_0/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/imglib_c66x_3_1_1_0/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/mathlib_c66x_3_0_1_1/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/mcsdk_2_01_02_05/demos;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/pdk_C6657_1_1_2_5/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/uia_1_01_01_14/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/ipc_1_25_00_04/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/ccsv5/ccs_base;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/customRepository;" xdc.tools.configuro -o configPkg -t ti.targets.elf.C66 -p SaturnV_C6655 -r debug -c "C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/ccsv5/tools/compiler/c6000_7.4.1" --compileOptions "-g --optimize_with_debug" "../app.cfg" making package.mak (because of package.bld) ... generating interfaces for package configPkg (because package/package.xdc.inc is older than package.xdc) ... configuring app.xe66 from package/cfg/app_pe66.cfg ... js: "C:\sw-fwdsp\Kilimanjaro\MAIN\ti64+\toolset\TI\xdctools_3_24_05_48\packages\ti\targets\elf\linkcmd.xdt#101(eval)", line 1: xdc.services.global.XDCException: xdc.FILE_NOT_FOUND: can't locate file 'null' along the path: C:\sw-fwdsp\Kilimanjaro\MAIN\ti64+\toolset\TI\xdctools_3_24_05_48\packages\ti\targets\elf;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/bios_6_34_02_18/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/edma3_lld_02_11_05_02/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/dsplib_c66x_3_1_0_0/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/imglib_c66x_3_1_1_0/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/mathlib_c66x_3_0_1_1/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/mcsdk_2_01_02_05/demos;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/pdk_C6657_1_1_2_5/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/uia_1_01_01_14/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/ipc_1_25_00_04/packages;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/ccsv5/ccs_base;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/customRepository;C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/xdctools_3_24_05_48/packages;..; gmake.exe: *** [package/cfg/app_pe66.xdl] Error 1 gmake.exe: *** Deleting file `package/cfg/app_pe66.xdl' gmake.exe: *** [package/cfg/app_pe66.xdl] Deleting file `package/cfg/app_pe66.h' gmake.exe: *** [package/cfg/app_pe66.xdl] Deleting file `package/cfg/app_pe66.c' js: "C:/sw-fwdsp/Kilimanjaro/MAIN/ti64+/toolset/TI/xdctools_3_24_05_48/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.

    **** Build Finished ****

    I then removed quotes around "null" from... Program.sectionsTemplate = "null"; to... Program.sectionsTemplate = null;

    NOW THIS IS FIXED!!!  The quotes present in the .cfg file visable within XDCscript Editor but not XGCONF was indeed the problem.

    I also removed the useModule for the "custom" platform as you recommended and things are much happier now.  This was an attempt on my part to see if that fixed things.

    I still have an issue wherein the compiler is *not* resolving XGCONF statically created Program.global identifiers such as named Heaps, LoggerBufs, Mailboxes, Queues, Semaphores, and Tasks.  How can I fix this?

    If you can answer that here I'd appreciate it or I will re-post this question in this or another forum as you recommend.

    Thanks,

    -George

  • If you have attached objects to Program.global, you have to include <xdc/cfg/global.h> in your C file. You may need to clean and then rebuild.

    Also, please post the complete output from the console window so I can see the errors.

  • Sasha,

    Adding the <xdc/cfg/global.h> to my source C files remedied the compiler unresolved references to the statically created global entities being created by XGCONF.

    Thanks,

    -George