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.

Undefined reference to [codec_name]_IVIDENC and [codec_name]_IDMA3 When building module test in Appro Framework

Hello,

I have got an XDAIS codec engine built using the XDC tools for the DM368.  It has two structures defined in the main .c file:

IVIDENC_Fxns [codec_name]_IVIDENC = { // Module_vendor_interface

{IALGFXNS},

[codec_name]_process,

[codec_name]K_control,

};

and

IDMA3_Fxns [codec_name]_IDMA3 = { // Module_vendor_interface

&[codec_name]_IALG, // IALG functions

[codec_name]_dmaChangeChannels, // ChangeChannels

[codec_name]_dmaGetChannelCnt, // GetChannelCnt

[codec_name]_dmaGetChannels, // GetChannels

[codec_name]_dmaInit // Initialize logical channels

};

and it builds fine into a package.

 

I then include this into the av_server.cfg in the Appro framework and perform a full build and i get the following error

make[2]: Entering directory `/home/user/work/svn/appro/ipnc/av_capture/application/test/moduletest'

moduletest: Linking to .out

/opt/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le/bin/arm_v5t_le-gcc -lpthread -lpng -fPIC -lasound -o/home/user/work/svn/appro/ipnc/av_capture/build/../bin//moduletest.out /home/user/work/svn/appro/ipnc/av_capture/build/lib//moduletest.a /home/user/work/svn/appro/ipnc/av_capture/build/lib//alg.a /home/user/work/svn/appro/ipnc/av_capture/build/lib//drv.a /home/user/work/svn/appro/ipnc/av_capture/build/lib//alg.a /home/user/work/svn/appro/ipnc/av_capture/build/lib//image_tune.a /home/user/work/svn/appro/ipnc/av_capture/build/lib//osa.a /home/user/work/svn/appro/ipnc/av_capture/build/lib//csl.a /home/user/work/svn/appro/dvsdk_2_10_01_18/linuxutils_2_24_03/packages/ti/sdo/linuxutils/cmem/lib/cmem.a470MV /home/user/work/svn/appro/ipnc/av_capture/build/../framework/alg/lib/alg_facetrack_ti.a /home/user/work/svn/appro/ipnc/av_capture/build/../framework/alg/src/alg_config/linker.cmd  /home/user/work/svn/appro/ipnc/av_capture/build/../framework/alg/lib/alg_vstab_ti.a /home/user/work/svn/appro/ipnc/av_capture/build/../framework/alg/lib/alg_gbce_ti.a /home/user/work/svn/appro/ipnc/av_capture/build/../framework/alg/lib/alg_osd_ti.a /home/user/work/svn/appro/ipnc/av_capture/build/../framework/alg/lib/fr_ti/alg_fr_ti.a /home/user/work/svn/appro/ipnc/av_capture/build/../framework/alg/lib/fr_ti/libeOkaoFr.a /home/user/work/svn/appro/ipnc/av_capture/build/../framework/alg/lib/fr_ti/libeOkaoPt.a /home/user/work/svn/appro/ipnc/av_capture/build/../framework/alg/lib/fr_ti/libeOkaoCo.a /home/user/work/svn/appro/ipnc/av_capture/build/../framework/alg/src/aewb_ti/lib/libti_awb.a  /home/user/work/svn/appro/ipnc/av_capture/build/../framework/alg/src/aewb_ap/lib/Appro_2a_lib.a /home/user/work/svn/appro/ipnc/av_capture/build/../framework/alg/src/aewb_ap/lib/Appro_aew_control.a /home/user/work/svn/appro/dvsdk_2_10_01_18/dm365mm/lib/libdm365mm.a

/home/user/work/svn/appro/ipnc/av_capture/framework/alg/src/alg_config/package/cfg/alg_server_x470MV.o470MV:(.data.rel+0x1a4): undefined reference to `[codec_name]_IVIDENC'

/home/user/work/svn/appro/ipnc/av_capture/framework/alg/src/alg_config/package/cfg/alg_server_x470MV.o470MV:(.data.rel+0x1a8): undefined reference to `[codec_name]_IDMA3'

collect2: ld returned 1 exit status

make[2]: *** [exe] Error 1

make[2]: Leaving directory `/home/user/work/svn/appro/ipnc/av_capture/application/test/moduletest'

I don't understand when the reference is undefined.  Is it a problem with:

  • The Codec Engine build?
  • The AV Server Build?
  • The module test build?