I use XDC for builds and have different options used - one common set and another per module basis. In case when I have extra include libraries, the final linker command has libraries at different positions (as compiled by xdc).
For examples, the following one does give compilation errors and I do not understand why. Even if I tried this command on CMD window, I get compilation errors for the function in dsplib.
c:\tools\c7xx\cgen7_2_04\c6000\cgtools/bin/lnk6x -q -u _c_int00 -fs package/cfg/./. -I C:\PROGRA~2\TEXASI~1\dsplib_c66x_3_0_0_8\packages -l ../lib/dsplib.ae66 -q -o TestPRACHreceiver.xe66 package/cfg/TestPRACHreceiver_pe66.oe66 package/cfg/TestPRACHreceiver/unittest/prachReceiver_test.oe66 package/cfg/TestPRACHreceiver/unittest/cycle_measure.oe66 package/cfg/TestPRACHreceiver/unittestCplxMac/CplxMac_ref.oe66 package/cfg/TestPRACHreceiver/unittest/touch.oe66 package/cfg/TestPRACHreceiver_pe66.xdl --abi=eabi -c -m package/cfg//TestPRACHreceiver.xe66.map -l c:\tools\c7xx\cgen7_2_04\c6000\cgtools/lib/rts6600_elf.lib
when I try the following on the CMD window, it works fine. The only change I did is to pull the extra lines to end.
c:\tools\c7xx\cgen7_2_04\c6000\cgtools/bin/lnk6x -q -u _c_int00 -fs package/cfg/./. -q -o TestPRACHreceiver.xe66 package/cfg/TestPRACHreceiver_pe66.oe66 package/cfg/TestPRACHreceiver/unittest/prachReceiver_test.oe66 package/cfg/TestPRACHreceiver/unittest/cycle_measure.oe66 package/cfg/TestPRACHreceiver/unittestCplxMac/CplxMac_ref.oe66 package/cfg/TestPRACHreceiver/unittest/touch.oe66 package/cfg/TestPRACHreceiver_pe66.xdl --abi=eabi -c -m package/cfg//TestPRACHreceiver.xe66.map -l c:\tools\c7xx\cgen7_2_04\c6000\cgtools/lib/rts6600_elf.lib -I C:\PROGRA~2\TEXASI~1\dsplib_c66x_3_0_0_8\packages -l ../lib/dsplib.ae66
In the next experiment, I moved the rts to the front and kept my dsplib at the end. I get link errors for RTS functions.
c:\tools\c7xx\cgen7_2_04\c6000\cgtools/bin/lnk6x -q -u _c_int00 -fs package/cfg/./. -l c:\tools\c7xx\cgen7_2_04\c6000\cgtools/lib/rts6600_elf.lib -q -o TestPRACHreceiver.xe66 package/cfg/TestPRACHreceiver_pe66.oe66 package/cfg/TestPRACHreceiver/unittest/prachReceiver_test.oe66 package/cfg/TestPRACHreceiver/unittest/cycle_measure.oe66 package/cfg/TestPRACHreceiver/unittestCplxMac/CplxMac_ref.oe66 package/cfg/TestPRACHreceiver/unittest/touch.oe66 package/cfg/TestPRACHreceiver_pe66.xdl --abi=eabi -c -m package/cfg//TestPRACHreceiver.xe66.map -I C:\PROGRA~2\TEXASI~1\dsplib_c66x_3_0_0_8\packages -l ../lib/dsplib.ae66
Can someone help me understand the issue?
I was told by another coleague to use -x or --reread_libs in the linker option. With that I do not see linker issue.