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.

CCSv4.2.4 How do you change/add ar6x commands in IDE?

Hi

When I go to Build Properties -> C/C++ Build -> Tool Settings tab -> C6000 Archiver -> All options, it is greyed out and I can't change any of the options. Currently it has "r" in the field. I'd like to add "t" or whatever are the available options. Where can I modify the ar6x options?

One other thing I noticed is that the lib gets bigger every time I rebuild. It basically doubles in size 500 KB, then 1000 kB, then 1500 kB. Its like its appending new files yet I see its using the "r" option

'Invoking: Archiver'
"C:/Program Files/Texas Instruments/ccsv4/tools/compiler/C6000 Code Generation Tools 7.2.6/bin/ar6x" r "DirectIO_lib_1_1_0_sono_v0.lib" "./obj/BRU_systemEnumerate.obj" "./obj/BRU_switchLut.obj" "./obj/BRU_procElem.obj" "./obj/COM_genBits.obj" "./obj/COM_err_dat.obj" "./obj/COM_errHandler.obj" "./obj/COM_err.obj" "./obj/COM_callbacks_dat.obj" "./obj/COM_callbacks.obj" "./obj/COM_bench_dat.obj" "./obj/DIO_streamingReq.obj" "./obj/DIO_maintenanceReq.obj" "./obj/DIO_lsuQueue_dat.obj" "./obj/DIO_lsuQueue.obj" "./obj/DIO_idmaLsuSetup.obj" "./obj/DIO_hwi.obj" "./obj/DIO_dbellSignal.obj" "./obj/DIO_dataReq.obj" "./obj/RIO_release.obj" "./obj/RIO_init_dat.obj" "./obj/RIO_init.obj" "../lib/DirectIO_lib_1_1_0_sono_v0.lib"
  ==>  new archive 'DirectIO_lib_1_1_0_sono_v0.lib'
  ==>  building archive 'DirectIO_lib_1_1_0_sono_v0.lib'
'Finished building target: DirectIO_lib_1_1_0_sono_v0.lib'

Cheers

  • Eddie,

    I guess I don't see a way to replace or easily add options using the GUI directly, but instead you could use one or multiple options files that replace the archiver command entirely.

    In this case I would copy the command above to a text editor and replace the "r" with specific commands you desire. For example:

    archiver.opt said:

    -asv "DirectIO_lib_1_1_0_sono_v0.lib" "./obj/BRU_systemEnumerate.obj" "./obj/BRU_switchLut.obj" "./obj/BRU_procElem.obj"
    "./obj/COM_genBits.obj" "./obj/COM_err_dat.obj" "./obj/COM_errHandler.obj" "./obj/COM_err.obj" "./obj/COM_callbacks_dat.obj"
    "./obj/COM_callbacks.obj" "./obj/COM_bench_dat.obj" "./obj/DIO_streamingReq.obj" "./obj/DIO_maintenanceReq.obj"
    "./obj/DIO_lsuQueue_dat.obj" "./obj/DIO_lsuQueue.obj" "./obj/DIO_idmaLsuSetup.obj" "./obj/DIO_hwi.obj"
    "./obj/DIO_dbellSignal.obj" "./obj/DIO_dataReq.obj" "./obj/RIO_release.obj" "./obj/RIO_init_dat.obj"
    "./obj/RIO_init.obj" "../lib/DirectIO_lib_1_1_0_sono_v0.lib"


    Keep in mind that this will only work for the a or r commands, as the t, d and x require the library to already exist - if the library exists and is current, CCS will not rebuild it and therefore the build will not run the archiver. In this case I would add a post-build step that runs the archiver with these options:

    Post-build step said:

    ${CG_TOOL_ROOT}/bin/ar6x -t ${project_name}.lib

    Although it is not a straightforward approach, you can at least create multiple Build Configurations that use different archiver options.

    Regarding the ever-increasing size of the archiver, I really couldn't verify that in my workspace, but I will need to do some more testing. 

    Hope this helps,

    Rafael