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.

Cannot find .obj files during linking

I have created a project in CCS v3.3. I have given the path in the build options for the .obj files to be kept in the $(Proj_dir)\Debug folder.....

When i am building the project i can see the .obj files in the folder mentioned above. But when it comes to the linking stage it says it cannot find those .obj files... can any one help me in getting over this errors.

And i have a library file with an extension (.a55). In the build options, in linker\ libraries tab i have included the path of the lib file in search path and the name of the file in Incl. Libraries. But it still doesnt include the library file in the project. I dont understand why even after giving the right path and file name it doesnt include the file in the library.

Please help me debugging these errors.

 

Regards,

Dinesh Davuluru

Signalogic

 

Attaching the errors for your reference.

 

<Linking>
"D:\\Dinesh Davuluru\\ADT Software code\\T38 FAX RELAY\\FAX\\systems\\relay\\c5500\\filerelay\\FileRelay.cmd", line 27: error:
   cannot find file "buflog.obj"
"D:\\Dinesh Davuluru\\ADT Software code\\T38 FAX RELAY\\FAX\\systems\\relay\\c5500\\filerelay\\FileRelay.cmd", line 51: error:
   cannot find file "buflog.obj"
"D:\\Dinesh Davuluru\\ADT Software code\\T38 FAX RELAY\\FAX\\systems\\relay\\c5500\\filerelay\\FileRelay.cmd", line 73: error:
   cannot find file "faxmem.obj"

  • Can you attach your "FileRelay.cmd" file?

  • SECTIONS
    {
        ISR_vectors:       > VECS       
        .cinit:       > PSRAM0
        .text:       > PSRAM1
        isrs:           > PSRAM0
        .switch:       > PSRAM0
     
        .const:       > DSRAM0
        .stack:       > DSRAM0|DSRAM1
        .sysstack:     > DSRAM0|DSRAM1
        .sysmem:       > DSRAM0|DSRAM1
        .data:       > DSRAM0|DSRAM1
        .bss:           > DSRAM0|DSRAM1
       BufLog:
          {
          buflog.obj (.bss)
          }        > DSRAM1        
       btext:      > PSRAM0      

       vtext:      > PSRAM0|PSRAM1
          {
          common.obj (.text)
    /*      apsk.obj (.text)
          aeq.obj (.text)
          interp.obj (.text)*/
          filter.obj (.text)
          gendet.obj (.text)
          modemif.obj (.text)
          tcm.obj (.text)
          v29.obj (.text)
          t38.obj (.text)
          v27.obj (.text)
          v17.obj (.text)
          relay.obj (.text)
          sequence.obj (.text)
          fsk.obj (.text)
          bufmgr.obj (.text)
          rxtx.obj (.text)
          hdlc.obj (.text)
          buflog.obj (.text)
          v21.obj (.text)
          packdata.obj (.text)
          netif.obj (.text)
          t30.obj (.text)
          div.obj (.text)
          bitrev.obj (.text)
          }
       vcoefs:
          {
    /*      vcoefs.obj (.const)              
          tcm.obj (.const)                 
          v29.obj (.const)                 
          v27.obj (.const)                 
          v17.obj (.const)*/
          t30.obj (.const)                 
          modemif.obj (.const)             
          t38.obj (.const)                 
          } > DSRAM0|PSRAM0
          
       vdata:
          {
          faxmem.obj (.bss)
          }        > DSRAM0

        dumper:       > DSRAM1   
    }          

     

     

    except for buflog.obj, faxmem.obj every other .obj file is in the  (.a55) library file.

  • In your *.cmd file where buflog.obj and faxmem.obj is referenced, prepend the path (you can use a relative path from the *.cmd file)

    ex:

       BufLog:
          {
          .\Debug\buflog.obj (.bss)
          }        > DSRAM1  

  • Dear Ki-Soo,

     

    Thank you for your reply.... that worked.... it is able to find those obj's now...

    There are some more .obj files which are supposed to be in the library file... When adding (lib.a55) as a library CCS doesnt detect it as a library.

    So the linker is giving errors that says cannot find .obj files (which are supposed to be library).

    Vtext:

    {    bitrev.obj (.text)
           bufmgr.obj (.text)
          common.obj (.text)

    } > PSRAM0|PSRAM1

     

    errors:

    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 32: error:
       cannot find file "bitrev.obj"
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 34: error:
       cannot find file "bufmgr.obj"
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 35: error:
       cannot find file "common.obj"

  • Can you post your build message output? And attach your *pjt file?

    Thanks

    ki

  • Dear Ki-Soo,

    I am attaching the build log and .pjt file.

    ---------------------------  Filerelay.pjt - Debug  ---------------------------
    [buflog.c] "C:\CCStudio_v3.3\C5500\cgtools\bin\cl55" -g -@"../optfiles/FileRelay.opt" -pdsw225 -fr"../Debug" -i"../include/" -d"_DEBUG" -d"DSK5510" -d"__TMS320C55X__" -@"../Debug.lkf" "buflog.c"
    
    [faxmem.c] "C:\CCStudio_v3.3\C5500\cgtools\bin\cl55" -g -@"../optfiles/FileRelay.opt" -pdsw225 -fr"../Debug" -i"../include/" -d"_DEBUG" -d"DSK5510" -d"__TMS320C55X__" -@"../Debug.lkf" "faxmem.c"
    
    [FileRelay.c] "C:\CCStudio_v3.3\C5500\cgtools\bin\cl55" -g -@"../optfiles/FileRelay.opt" -pdsw225 -fr"../Debug" -i"../include/" -d"_DEBUG" -d"DSK5510" -d"__TMS320C55X__" -@"../Debug.lkf" "FileRelay.c"
    
    [target.c] "C:\CCStudio_v3.3\C5500\cgtools\bin\cl55" -g -@"../optfiles/FileRelay.opt" -pdsw225 -fr"../Debug" -i"../include/" -d"_DEBUG" -d"DSK5510" -d"__TMS320C55X__" -@"../Debug.lkf" "target.c"
    
    [Linking...] "C:\CCStudio_v3.3\C5500\cgtools\bin\cl55" -@"Debug.lkf"
    <Linking>
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 32: error: 
       cannot find file "bitrev.obj"
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 34: error: 
       cannot find file "bufmgr.obj"
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 35: error: 
       cannot find file "common.obj"
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 36: error: 
       cannot find file "div.obj"
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 37: error: 
       cannot find file "fsk.obj"
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 38: error: 
       cannot find file "gendet.obj"
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 39: error: 
       cannot find file "hdlc.obj"
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 40: error: 
       cannot find file "modemif.obj"
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 41: error: 
       cannot find file "netif.obj"
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 42: error: 
       cannot find file "packdata.obj"
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 43: error: 
       cannot find file "relay.obj"
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 44: error: 
       cannot find file "rxtx.obj"
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 45: error: 
       cannot find file "sequence.obj"
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 46: error: 
       cannot find file "t30.obj"
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 47: error: 
       cannot find file "t38.obj"
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 48: error: 
       cannot find file "tcm.obj"
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 49: error: 
       cannot find file "v17.obj"
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 50: error: 
       cannot find file "v21.obj"
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 51: error: 
       cannot find file "v27.obj"
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 52: error: 
       cannot find file "v29.obj"
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 56: error: 
       cannot find file "modemif.obj"
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 57: error: 
       cannot find file "t30.obj"
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 58: error: 
       cannot find file "t38.obj"
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 32: warning: 
       no matching section
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 34: warning: 
       no matching section
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 35: warning: 
       no matching section
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 36: warning: 
       no matching section
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 37: warning: 
       no matching section
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 38: warning: 
       no matching section
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 39: warning: 
       no matching section
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 40: warning: 
       no matching section
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 41: warning: 
       no matching section
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 42: warning: 
       no matching section
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 43: warning: 
       no matching section
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 44: warning: 
       no matching section
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 45: warning: 
       no matching section
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 46: warning: 
       no matching section
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 47: warning: 
       no matching section
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 48: warning: 
       no matching section
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 49: warning: 
       no matching section
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 50: warning: 
       no matching section
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 51: warning: 
       no matching section
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 52: warning: 
       no matching section
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 56: warning: 
       no matching section
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 57: warning: 
       no matching section
    "D:\\dinesh_davuluru\\ADT_SOFTWARE\\T38_FAX_RELAY\\Source\\FaxRelay2.cmd", line 58: warning: 
       no matching section
    warning: creating output section ".cio" without a SECTIONS specification
    warning: creating output section "DFTcoef" without a SECTIONS specification
    warning: creating output section "vectors" without a SECTIONS specification
    warning: creating ".stack" section with default size of 0x3e8; use the -stack
       option to change the default size
    warning: creating ".sysmem" section with default size of 0x7d0; use the -heap
       option to change the default size
    warning: creating ".sysstack" section with default size of 0x3e8; use the
       -sysstack option to change the default size
    error: errors encountered during linking; "./Debug/Filerelay.out" not built
    
    >> Compilation failure
    
    Build Complete,
      24 Errors, 29 Warnings, 0 Remarks.
    

    Regards,

    Dinesh Davuluru

     

    the .pjt file

    ; Code Composer Project File, Version 2.0 (do not modify or remove this line)

    [Project Settings]
    ProjectDir="D:\dinesh_davuluru\SOFTWARE\T38_FAX_RELAY\"
    ProjectType=Executable
    CPUFamily=TMS320C55XX
    Tool="Compiler"
    Tool="CustomBuilder"
    Tool="DspBiosBuilder"
    Tool="Linker"
    Config="Debug"
    Config="Release"

    [Source Files]
    Source="Source\buflog.c"
    Source="Source\faxmem.c"
    Source="Source\FileRelay.c"
    Source="Source\target.c"
    Source="Source\dsk5510.cmd"
    Source="Source\FileRelay.cmd"

    ["Compiler" Settings: "Debug"]
    Options=-g -@"..\optfiles\FileRelay.opt" -pdsw225 -fr"..\Debug" -i"..\include\" -d"_DEBUG" -d"DSK5510" -d"__TMS320C55X__"

    ["Compiler" Settings: "Release"]
    Options=-pdsw225 -o2 -fr"$(Proj_dir)\Release"

    ["Linker" Settings: "Debug"]
    Options=-c -m".\Debug\Filerelay.map" -o".\Debug\Filerelay.out" -w -x -i".\library" -l"libmesi.a55"

    ["Linker" Settings: "Release"]
    Options=-c -m".\Release\Filerelay.map" -o".\Release\Filerelay.out" -w -x

    ["Source\dsk5510.cmd" Settings: "Debug"]
    LinkOrder=1

    ["Source\dsk5510.cmd" Settings: "Release"]
    LinkOrder=1

    ["Source\FileRelay.cmd" Settings: "Debug"]
    LinkOrder=1

    ["Source\FileRelay.cmd" Settings: "Release"]
    LinkOrder=1

     

     

  • Dinesh Davuluru said:
    So the linker is giving errors that says cannot find .obj files (which are supposed to be library).

    I think this is the case. CCS is looking for the *.obj file specified in the cmd file but they do not exist (since they are part of the library file). But the linker is looking for the obj files itself and not in the library. There is probably a way to specify in the cmd file that an obj is part of a library and you'll need to tweak the cmd file accordingly but I'm not sure how to do this. You may want to ask this question in the Compiler forum.

  • Dear Ki-Soo,

    Thank you for the help. We have tried this libmesi.a55 <filter.obj> (.text) and it worked.

    Thank you for your time and help.

     

    Regards,

    Dinesh Davuluru