Hi, i have a g.729 lib whose name is g729abenc_tii.l64P. I know it's a DSP side lib. But i link it with my Codec Engine's server, i get a error message with "undefined symbol G729ABENC_TII_IG729ABENC". So i write a simple test code to check whether the .l64P is ok.
my test code is:
#include <xdc/runtime/Diags.h> #include <ti/sdo/ce/CERuntime.h> extern IALG_Fxns G729ABENC_TII_IG729ABENC; int main(int argc, char *argv[]) { IALG_Fxns *fun = &G729ABENC_TII_IG729ABENC; if (fun) printf ("Don't optimize\n"); return 0; }
compile it:
# cl6x -c -qq -pdsw225 -mv6740 --abi=elfabi -eo.oe674 -ea.se674 -mi10 -mo -pden -pds=195 -D_DEBUG_=1 \
-Dxdc_target_name__=C674 -Dxdc_target_types__=ti/targets/elf/std.h -Dxdc_bld__profile_debug -Dxdc_bld__vers_1_0_7_2_0_10232 \
--symdebug:dwarf -I/usr/local/ezsdk/codec-engine_3_21_00_02/packages -I/usr/local/ezsdk/xdais_7_20_00_06/packages \
-I/usr/local/ezsdk/xdctools_3_20_05_69_eng/packages -I/usr/local/ezsdk/cgt6x_7_2_0/include g729.c
it's ok, but when i link with g729abenc_tii.l64P.
# lnk6x -w -q -u _c_int00 -q -o g729.xe674 g729.oe674 --abi=elfabi -c -l /usr/local/ezsdk/cgt6x_7_2_0/lib/rts6740_elf.lib \
--compress_dwarf -l g729abenc_tii.l64P
i got a error with "undefined symbol G729ABENC_TII_IG729ABENC":
warning: creating ".stack" section with default size of 0x400; use the -stack option to change the default size warning: creating ".sysmem" section with default size of 0x400; use the -heap option to change the default size undefined first referenced symbol in file --------- ---------------- G729ABENC_TII_IG729ABENC g729.oe674 error: unresolved symbols remain error: errors encountered during linking; "g729.xe674" not built
i did find the G729ABENC_TII_IG729ABENC symbols in g729abenc_tii.l64P, as below code show:
# nm6x /usr/local/ezsdk/codec-engine_3_21_00_02/packages/ti/sdo/ce/g729abenc/lib/g729abenc_tii.l64P \
| grep G729ABENC_TII_IG729ABENC 00000000 B _G729ABENC_TII_IG729ABENC
so i think maybe the .l64P i got is error, or the CGT can't work with this .l64P. am i right?
btw: i use those tools to build the app
- OS: Ubuntu 10.10
- Linux kernel: Linux 2.6.35-30-generic
- Installed SDK version: ezsdk_c6a816x-evm_5_00_00_56_setuplinux
- CGT version: 7.2.0
i Appreciate your feedback.
mathslinux.