I have a basic project setup in CCSv6 that consists ot just two files: dskstart32.c and dsk6713.cmd. The C language file has the main() function. I setup my project as usually, including the C6000 CSL library headers as well as the DSK6713 BSL library headers using the "-i" option. I link explicitly to the dsk6713bsl32.lib and csl6713.lib files using the "-l" option. I also define a symbol -DCHIP_6713.
Because this is also older technology, I am using the v7.4.8 compiler with the legacy COFF format.
If I just compile the C language file dskstart32.c, I get no errors or issues, and it generates dskstart32.obj in the Debug folder. The compiler output is below:
**** Build of configuration Debug for project CH2_1 **** "C:\\ti\\ccsv6\\utils\\bin\\gmake" -k dskstart32.obj 'Building file: ../dskstart32.c' 'Invoking: C6000 Compiler' "C:/ti/ccsv6/tools/compiler/c6000_7.4.8/bin/cl6x" -mv6710 --abi=coffabi -g --include_path="C:/ti/book/Software/c6713dsk/dsk6713bsl32/include" --include_path="C:/ti/C6xCSL/include" --include_path="C:/ti/ccsv6/tools/compiler/c6000_7.4.8/include" --define=CHIP_6713 --diag_warning=225 --diag_wrap=off --display_error_number --opt_for_speed=5 --preproc_with_compile --preproc_dependency="dskstart32.pp" "../dskstart32.c" 'Finished building: ../dskstart32.c' ' ' **** Build Finished ****
That looked good to me! So I proceeded to try to build the whole project, running the linker to get an output file. When I run the entire build process, I get the following error #6001 stating the tools cannot find the dskstart32.obj file.
**** Build of configuration Debug for project CH2_1 **** "C:\\ti\\ccsv6\\utils\\bin\\gmake" -k all 'Building target: dskstart32.out' 'Invoking: C6000 Linker' "C:/ti/ccsv6/tools/compiler/c6000_7.4.8/bin/cl6x" -mv6710 --abi=coffabi -g --define=CHIP_6713 --diag_warning=225 --diag_wrap=off --display_error_number --opt_for_speed=5 -z -m"dskstart32.map" -i"C:/ti/ccsv6/tools/compiler/c6000_7.4.8/lib" -i"C:/ti/ccsv6/tools/compiler/c6000_7.4.8/include" --reread_libs --warn_sections --diag_wrap=off --display_error_number --xml_link_info="CH2_1_linkInfo.xml" --rom_model -o "dskstart32.out" "./dskstart32.obj" "../dsk6713.cmd" -l"C:\ti\book\Software\c6713dsk\dsk6713bsl32\lib\dsk6713bsl32.lib" -l"C:\ti\C6xCSL\lib_3x\csl6713.lib" -l"libc.a" ".\ccsObjs.opt", line 1: fatal error #6001: cannot open file "./dskstart32.obj": No error >> Compilation failure gmake: *** [dskstart32.out] Error 1 gmake: Target `all' not remade because of errors. **** Build Finished ****
It looks like from the above linker command that CCS is trying to run the linker out of the Debug folder, but since it cannot find the dskstart32.obj file, my suspicion is that the tool is not being run from the Debug folder, but perhaps the top lever folder of the project. Is there a way to confirm this with CCS? Does anything else look suspicious in the above linker output?