Dear All,
I am trying to develop my application using the TVP5158 video driver from the Udworks DVRRDK1.1. The goal is to exploit the video capture driver in my code.
When I compile, however the linker does not locate the JPEG encode
functions even if I think I put in the .cfg files all the necessary
files. Below the linker error, the cfg and the cmd. I
would kindly ask you if you have some suggestion to overcome this problem.
The missing function should ne included in the IMGENC1 package but are not linked.
Thank you
for your help.
Linking vdctf from codecs.o dvCPU.o main.o periodic_1.o speech.o
udpserver.o vcapture.o vdctfwriter.o video.o demosrc/ctrl.o
demosrc/uibuttons.o demosrc/ui.o vdctf_config/linker.cmd
/home/user/workspace/dvr11/av_
capture/build/lib/mcvip_test.a
/home/user/workspace/dvr11/av_capture/build/lib/mcvip.a
/home/user/workspace/dvr11/av_capture/build/lib/alg.a
/home/user/workspace/dvr11/av_capture/build/lib/drv.a
/home/user/workspace/dvr11/av_capture/build/lib/image_tune.a
/home/user/workspace/dvr11/av_capture/build/lib/osa.a
/home/user/workspace/dvr11/av_capture/build/lib/csl.a
/home/user/workspace/dvr11/av_capture/framework/alg/lib/alg_vstab.a..
/home/user/workspace/dvr11/av_capture/build/lib/alg.a(alg_jpgEnc.o): In
function `ALG_jpgEncDelete':
alg_jpgEnc.c:(.text+0x1c): undefined reference to `IMGENC1_delete'
/home/user/workspace/dvr11/av_capture/build/lib/alg.a(alg_jpgEnc.o): In
function `ALG_jpgEncRun':
alg_jpgEnc.c:(.text+0x148): undefined reference to `IMGENC1_process'
/home/user/workspace/dvr11/av_capture/build/lib/alg.a(alg_jpgEnc.o): In
function `ALG_jpgEncSetQvalue':
alg_jpgEnc.c:(.text+0x23c): undefined reference to `IMGENC1_control'
alg_jpgEnc.c:(.text+0x25c): undefined reference to `IMGENC1_control'
/home/user/workspace/dvr11/av_capture/build/lib/alg.a(alg_jpgEnc.o): In
function `ALG_jpgEncCreate':
alg_jpgEnc.c:(.text+0x42c): undefined reference to `IMGENC1_create'
collect2: ld returned 1 exit status
/* this file was generated by linkcmd.xdt from the gnu.targets package */
/* function aliases */
/* input libraries */
INPUT(
"/home/user/workspace/vdctf/vdctf_config/package/cfg/vdctf_x470MV.o470MV"
"/home/user/dvsdk_2_10_01_18/dvsdk_demos_2_10_00_17/packages/ti/sdo/simplewidget/lib/simplewidget_dm365.a470MV"
"/home/user/dvsdk_2_10_01_18/dmai_1_21_00_10/packages/ti/sdo/dmai/lib/dmai_linux_dm365.a470MV"
"/home/user/dvsdk_2_10_01_18/codec_engine_2_24/packages/ti/sdo/ce/image1/lib/release/imgdec1.av5T"
"/home/user/dvsdk_2_10_01_18/codec_engine_2_24/packages/ti/sdo/ce/image1/lib/release/imgenc1.av5T"
"/home/user/dvsdk_2_10_01_18/codec_engine_2_24/packages/ti/sdo/ce/image/lib/release/image.av5T"
"/home/user/dvsdk_2_10_01_18/codec_engine_2_24/packages/ti/sdo/ce/video2/lib/release/viddec2.av5T"
"/home/user/dvsdk_2_10_01_18/codec_engine_2_24/packages/ti/sdo/ce/video1/lib/release/viddec1.av5T"
"/home/user/dvsdk_2_10_01_18/codec_engine_2_24/packages/ti/sdo/ce/video1/lib/release/videnc1.av5T"
"/home/user/dvsdk_2_10_01_18/codec_engine_2_24/packages/ti/sdo/ce/video/lib/release/video.av5T"
"/home/user/dvsdk_2_10_01_18/codec_engine_2_24/packages/ti/sdo/ce/audio1/lib/release/auddec1.av5T"
"/home/user/dvsdk_2_10_01_18/codec_engine_2_24/packages/ti/sdo/ce/audio1/lib/release/audenc1.av5T"
"/home/user/dvsdk_2_10_01_18/codec_engine_2_24/packages/ti/sdo/ce/audio/lib/release/audio.av5T"
"/home/user/dvsdk_2_10_01_18/codec_engine_2_24/packages/ti/sdo/ce/speech1/lib/release/sphdec1.av5T"
"/home/user/dvsdk_2_10_01_18/codec_engine_2_24/packages/ti/sdo/ce/speech1/lib/release/sphenc1.av5T"
"/home/user/dvsdk_2_10_01_18/codec_engine_2_24/packages/ti/sdo/ce/speech/lib/release/speech.av5T"
"/home/user/dvsdk_2_10_01_18/codec_engine_2_24/packages/ti/sdo/ce/lib/release/ce.av5T"
"/home/user/dvsdk_2_10_01_18/codec_engine_2_24/packages/ti/sdo/ce/ipc/linux/lib/release/ipc_linux.av5T"
"/home/user/dvsdk_2_10_01_18/codec_engine_2_24/packages/ti/sdo/ce/alg/lib/release/Algorithm_noOS.av5T"
"/home/user/dvsdk_2_10_01_18/codec_engine_2_24/packages/ti/sdo/ce/alg/lib/release/alg.av5T"
"/home/user/dvsdk_2_10_01_18/codec_engine_2_24/packages/ti/sdo/ce/osal/linux/lib/release/osal_linux_470.av5T"
"/home/user/dvsdk_2_10_01_18/codec_engine_2_24/packages/ti/sdo/ce/node/lib/release/node.av5T"
"/home/user/dvsdk_2_10_01_18/codec_engine_2_24/packages/ti/sdo/ce/utils/xdm/lib/release/XdmUtils.av5T"
"/home/user/dvsdk_2_10_01_18/framework_components_2_24/packages/ti/sdo/fc/ires/edma3chan/lib/release/edma3Chan.a470MV"
"/home/user/dvsdk_2_10_01_18/framework_components_2_24/packages/ti/sdo/fc/edma3/lib/release/edma3.a470MV"
"/home/user/dvsdk_2_10_01_18/framework_components_2_24/packages/ti/sdo/fc/rman/lib/release/rman.a470MV"
"/home/user/dvsdk_2_10_01_18/framework_components_2_24/packages/ti/sdo/fc/ires/nullresource/lib/release/nullres.a470MV"
"/home/user/dvsdk_2_10_01_18/dm365_codecs_01_00_06/packages/ti/sdo/codecs/jpegdec/lib/libjpgdec.a"
"/home/user/dvsdk_2_10_01_18/dm365_codecs_01_00_06/packages/ti/sdo/codecs/jpegdec/lib/libimx.a"
"/home/user/dvsdk_2_10_01_18/dm365_codecs_01_00_06/packages/ti/sdo/codecs/jpegenc/lib/libjpgenc.a"
"/home/user/dvsdk_2_10_01_18/dm365_codecs_01_00_06/packages/ti/sdo/codecs/jpegenc/lib/libimx.a"
"/home/user/dvsdk_2_10_01_18/dm365_codecs_01_00_06/packages/ti/sdo/codecs/h264enc/lib/h264venc_ti_arm926.a"
"/home/user/dvsdk_2_10_01_18/dm365_codecs_01_00_06/packages/ti/sdo/codecs/h264enc/lib/dma_ti_dm365.a"
"/home/user/dvsdk_2_10_01_18/dm365_codecs_01_00_06/packages/ti/sdo/codecs/mpeg4enc/lib/libmp4enc.a"
"/home/user/dvsdk_2_10_01_18/framework_components_2_24/packages/ti/sdo/fc/ires/addrspace/lib/release/addrspace.a470MV"
"/home/user/dvsdk_2_10_01_18/framework_components_2_24/packages/ti/sdo/fc/hdvicpsync/lib/release/hdvicpsync.a470MV"
"/home/user/dvsdk_2_10_01_18/framework_components_2_24/packages/ti/sdo/fc/vicpsync/lib/release/vicpsync.a470MV"
"/home/user/dvsdk_2_10_01_18/framework_components_2_24/packages/ti/sdo/fc/ires/vicp/lib/release/vicp.a470MV"
"/home/user/dvsdk_2_10_01_18/framework_components_2_24/packages/ti/sdo/fc/ires/hdvicp/lib/release/hdvicp.a470MV"
"/home/user/dvsdk_2_10_01_18/framework_components_2_24/packages/ti/sdo/fc/acpy3/lib/release/acpy3.a470MV"
"/home/user/dvsdk_2_10_01_18/framework_components_2_24/packages/ti/sdo/fc/dman3/lib/release/dman3Cfg.a470MV"
"/home/user/dvsdk_2_10_01_18/framework_components_2_24/packages/ti/sdo/fc/utils/lib/release/rmm.a470MV"
"/home/user/dvsdk_2_10_01_18/framework_components_2_24/packages/ti/sdo/fc/utils/lib/release/smgr.a470MV"
"/home/user/dvsdk_2_10_01_18/framework_components_2_24/packages/ti/sdo/fc/utils/lib/release/rmmp.a470MV"
"/home/user/dvsdk_2_10_01_18/framework_components_2_24/packages/ti/sdo/fc/utils/lib/release/smgrmp.a470MV"
"/home/user/dvsdk_2_10_01_18/framework_components_2_24/packages/ti/sdo/fc/utils/lib/release/shm.a470MV"
"/home/user/dvsdk_2_10_01_18/framework_components_2_24/packages/ti/sdo/utils/trace/lib/release/gt.a470MV"
"/home/user/dvsdk_2_10_01_18/framework_components_2_24/packages/ti/sdo/fc/memutils/lib/release/memutils.a470MV"
"/home/user/dvsdk_2_10_01_18/codec_engine_2_24/packages/ti/sdo/ce/bioslog/lib/release/bioslog.av5T"
"/home/user/dvsdk_2_10_01_18/codec_engine_2_24/examples/ti/xdais/dm/examples/g711/lib/g711.av5T"
"/home/user/dvsdk_2_10_01_18/linuxutils_2_24_02/packages/ti/sdo/linuxutils/cmem/lib/cmem.a470MV"
"/home/user/dvsdk_2_10_01_18/linuxutils_2_24_02/packages/ti/sdo/linuxutils/edma/lib/edma.a470MV"
"/home/user/dvsdk_2_10_01_18/linuxutils_2_24_02/packages/ti/sdo/linuxutils/vicp/lib/vicp.a470MV"
"/home/user/dvsdk_2_10_01_18/xdctools_3_15_01_59/packages/gnu/targets/rts470MV/lib/gnu.targets.rts470MV.a470MV"
)
/* ============================================================================
* Copyright (c) Texas Instruments Incorporated 2009
*
* Use of this software is controlled by the terms and conditions found in the
* license agreement under which this software has been supplied or provided.
* ============================================================================
*/
/* Load support for the Codec Engine OSAL */
var osalGlobal = xdc.useModule('ti.sdo.ce.osal.Global');
osalGlobal.runtimeEnv = osalGlobal.LINUX;
/* Load support for the 'Davinci Multimedia Application Interface' module */
var DMAI = xdc.loadPackage('ti.sdo.dmai');
/* Load support for SimpleWidget */
var SW = xdc.loadPackage('ti.sdo.simplewidget');
environment['xdc.cfg.check.fatal'] = 'false';
var RMAN = xdc.useModule('ti.sdo.fc.rman.RMAN');
RMAN.useDSKT2 = false;
RMAN.persistentAllocFxn = "__ALG_allocMemory";
RMAN.persistentFreeFxn = "__ALG_freeMemory";
RMAN.semCreateFxn = "Sem_create";
RMAN.semDeleteFxn = "Sem_delete";
RMAN.semPendFxn = "Sem_pend";
RMAN.semPostFxn = "Sem_post";
RMAN.tableSize = 10;
var EDMA3 = xdc.useModule('ti.sdo.fc.edma3.Settings');
var vicp = xdc.useModule('ti.sdo.linuxutils.vicp.VICP');
var HDVICP = xdc.useModule('ti.sdo.fc.ires.hdvicp.HDVICP');
var VICP = xdc.useModule('ti.sdo.fc.ires.vicp.VICP2');
var VICPSYNC = xdc.useModule('ti.sdo.fc.vicpsync.VICPSYNC');
var HDVICPSYNC = xdc.useModule('ti.sdo.fc.hdvicpsync.HDVICPSYNC');
var VICP = xdc.useModule('ti.sdo.fc.memutils.MEMUTILS');
DDRSPACE = xdc.useModule('ti.sdo.fc.ires.addrspace.ADDRSPACE');
var EDMA3CHAN = xdc.useModule('ti.sdo.fc.ires.edma3chan.EDMA3CHAN');
var LSP = xdc.useModule('ti.sdo.linuxutils.edma.EDMA');
var CMEM = xdc.useModule('ti.sdo.linuxutils.cmem.CMEM');
var ALG_MEM = xdc.useModule('ti.sdo.ce.alg.Settings');
ALG_MEM.useHeap = true;
xdc.loadPackage("ti.sdo.ce.video2");
xdc.loadPackage("ti.sdo.fc.hdvicpsync");
xdc.loadPackage("ti.sdo.ce.image1");
/*
* ======== Engine Configuration ========
*/
var MPEG4ENC = xdc.useModule('ti.sdo.codecs.mpeg4enc.ce.MPEG4ENC');
var H264ENC = xdc.useModule('ti.sdo.codecs.h264enc.ce.H264ENC');
var G711ENC = xdc.useModule('ti.sdo.ce.examples.codecs.g711.G711ENC');
var JPEGENC = xdc.useModule('ti.sdo.codecs.jpegenc.ce.JPEGENC');
var JPEGDEC = xdc.useModule('ti.sdo.codecs.jpegdec.ce.JPEGDEC');
var LogServer = xdc.useModule('ti.sdo.ce.bioslog.LogServer');
var IMGMOD = xdc.useModule('ti.sdo.ce.ICodec');
var Engine = xdc.useModule('ti.sdo.ce.Engine');
var myEngine = Engine.create("encode", [
{name: "mpeg4enc", mod: MPEG4ENC, local: true, groupId: 1},
{name: "h264enc", mod: H264ENC, local: true, groupId: 1},
{name: "g711enc", mod: G711ENC, local: true},
{name: "jpegenc", mod: JPEGENC, local: true, groupId: 1},
{name: "jpegdec", mod: JPEGDEC, local: true, groupId: 1},
]);
algSettings = xdc.useModule('ti.sdo.ce.alg.Settings');
algSettings.useCache = true;
// era commentato
//xdc.loadPackage('ti.sdo.fc.ires.vicp').profile = "debug_trace";
//xdc.loadPackage('ti.sdo.fc.ires.edma3chan').profile = "debug_trace";
//xdc.loadPackage('ti.sdo.fc.rman').profile = "debug_trace";
//xdc.loadPackage('ti.sdo.fc.edma3').profile = "debug_trace";
//EDMA3CHAN.trace = true;
//EDMA3CHAN.debug = true;
// fine era commentato
Program.main = null;