CCES: .DXE is not built when using crosscore.headlesstools and LDR as artifact

Hi all,
I'm using CCES 2.9.2.

I'm facing the issue that .DXE is not built when using crosscore.headlesstools and LDR as artifact. It works fine, when using CCES GUI IDE, but fails with command line tools.

I'm using example project: Walkthrough (Version 7) - Embedded C (ADSP-BF609)

After configuring Loader as build artifact I'm calling console command:

"C:\Analog Devices\CrossCore Embedded Studio 2.9.2\Eclipse\ccesc" -nosplash -consoleLog -application com.analog.crosscore.headlesstools -data Path_to_workspace -project "Path_to_project\Walkthrough (Version 7) - Embedded C (ADSP-BF609)" -cleanBuild Debug

Compilation pass OK, but after that as a result I'm getting:

.
.
.
'Finished building: ../.metadata/.plugins/org.eclipse.cdt.make.core/specs.cpp'
' '
'Invoking: CrossCore Blackfin Loader'
elfloader -proc ADSP-BF609 -si-revision any -b SPI -f hex -width 8 -bcode 6 -o "v7.ldr" "v7.dxe"
[Error ld0095]: Unable to open file: v7.dxe.
make: *** [v7.ldr] Error -1

22:59:27 Build Finished (took 6s.669ms)


I see that in auto-generated makefile there is only one target (loader), instead of two (dxe + loader).

Do you know how to fix it (apart from manually adding second target in makefile)?
  • +1
    •  Analog Employees 
    on Apr 1, 2021 2:21 PM 13 days ago

    Hi,

    Apologies for any inconvenience caused.

    It is a Known issue that, there is an error in the .cproject file in several examples.The project behaves normally most of the time, but if the target artifact is changed to "Loader File", the project will fail to build properly when using the headless builder.

    Below is the workaround for this issue:

    1. Open the “.cproject” of the example project in workspace using an editor. There will be entries for the Debug configuration as follows(please refer screenshot cproject_issue.JPG).

    <toolChain id="blackfin.toolchain.debug.166862178" name="CrossCore Blackfin Toolchain" superClass="blackfin.toolchain.debug">

    The entry in bold is incorrect – it should be “blackfin.toolchain”. Additionally, a “targetTool” entry should be present, but might be missing. If the build artifact is a loader file, then this should have the value “blackfin.toolchain.loader" and if the build artifact is an executable file then it should have the value “blackfin.toolchain.linker”. Any other entries on this line should be left unchanged.

    Below is the updated versions of the line given above for a loader target:
    <toolChain id="blackfin.toolchain.debug.166862178" name="CrossCore Blackfin Toolchain" superClass="blackfin.toolchain" targetTool="blackfin.toolchain.loader">

    2.Please change the above line in the .cproject file of the example project, then save and close the file (please refer screenshot cproject_updated.JPG).

    3.Then you can use the same command and build the project successfully using headlesstools(command line) to get a loader file (please refer screenshot loader_created.jpg).

    Below is the command which we followed:
    ccesc.exe -nosplash -consoleLog -application com.analog.crosscore.headlesstools -data C:\Users\xxx\cces\2.9.4 -project "C:\Users\xxx\cces\2.9.4\examples\crosscore_2.9.4.0\Walkthrough (Version 7) - Embedded C (ADSP-BF609)" -cleanBuild Debug

    Best Regards,
    Santhakumari.K

    3681.Screenshots.zip

  • Hi,
    Thanks for hint.  I confirm, that this workaround works for me...