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.

Codec

I want to bulid a new codec and I modified my codec in accordance with the model of vidde2_copy...There are some c files and assembly files in my codec . The C code will call the assembly code and they are saved separately..

i have check some information about it . It said that if you want to compiled  the DSP assembler or linear in the Linux environment  , you have to add this worlds

C64P.extensions[“.sa”] = {
suf: “.sa”, typ: “asm:-fl”
}

after 

var C64P = xdc.useModule(‘ti.targets.C64P’);  in the config.bld file and the file is in the  path $(CE_INSTALL_DIR)/examples....BUT when i open the config.bld file, I found it Written in accordance with the following format:

var C64P_rootdir;
//var C674_rootdir;
var V5T_rootdir;
var CC_V5T;
var ucarm9_rootdir;
var linux86_rootdir;
var wince_rootdir;
var wince_projectroot;
var devices;
var programs;
var gppos;

/* initialize local vars with those set in xdcpaths.mak (via XDCARGS) */
for (x = 0; x < arguments.length; x++) {
if (arguments[x].match(/^CGTOOLS_C64P=/)) {
C64P_rootdir = arguments[x].split("=")[1];
} else if(arguments[x].match(/^CGTOOLS_C674=/)) {
C674_rootdir = arguments[x].split("=")[1];
} else if(arguments[x].match(/^CGTOOLS_V5T=/)) {
V5T_rootdir = arguments[x].split("=")[1];
} else if(arguments[x].match(/^CC_V5T=/)) {
CC_V5T = arguments[x].split("=")[1];
/* } else if(arguments[x].match(/^CGTOOLS_UCARM9=/)) {
ucarm9_rootdir = arguments[x].split("=")[1];

} else if(arguments[x].match(/^CGTOOLS_LINUX86=/)) {
linux86_rootdir = arguments[x].split("=")[1];
*/
/*
} else if(arguments[x].match(/^WINCE_ROOTDIR=/)) {
wince_rootdir = arguments[x].split("=")[1];

} else if(arguments[x].match(/^WINCE_PROJECTROOT=/)) {
wince_projectroot = arguments[x].split("=")[1];
*/
} else if(arguments[x].match(/^DEVICES=/)) {
devices = arguments[x].split("=")[1];
} else if(arguments[x].match(/^PROGRAMS=/)) {
programs = arguments[x].split("=")[1];
} else if(arguments[x].match(/^GPPOS=/)) {
gppos = arguments[x].split("=")[1];
}
}

var os = environment["xdc.hostOS"];

/*
* ======== DSP target ========
*/
var remarks = " " +
// "-pdr " + // enable remarks
"-pden " + // enumerate remarks
// "-pds=880 " + // variable never referenced
// "-pds=552 " + // variable set but not used
// "-pds=238 " + // controlling expression is constant
// "-pds=681 " + // call cannot be inlined
// "-pds=452 " + // long long type is not standard
"-pds=195 " + // zero used for undefined preprocessing id (setjmp.h)
"";

/* supported targets we _might_ build for */
var GCArmv5T;
var C64P;
//var C674;
//var UCArm9;
//var WinCE;
//var Linux86;

/* Loading this 'capsule' initializes the targets we _will_ build for */
utils.loadCapsule('ti/sdo/ce/examples/buildutils/Platforms.xs');

/* now that we know which targets we're building for, finish their config */
if (C64P != undefined) {
C64P.rootDir = C64P_rootdir;
C64P.ccOpts.prefix += remarks;

Build.targets.$add(C64P);
}
/*
if (C674 != undefined) {
C674.rootDir = C674_rootdir;
C674.ccOpts.prefix += remarks;

Build.targets.$add(C674);
}

if (Linux86 != undefined) {
Linux86.rootDir = linux86_rootdir;
Linux86.lnkOpts.suffix = "-lpthread " + Linux86.lnkOpts.suffix;

Build.targets.$add(Linux86);
}
*/
/*
if (UCArm9 != undefined) {
UCArm9.rootDir = ucarm9_rootdir;
UCArm9.ccOpts.prefix += " -D_REENTRANT ";


UCArm9.lnkOpts.suffix = "-lpthread " + UCArm9.lnkOpts.suffix;

Build.targets.$add(UCArm9);
}
*/
if (GCArmv5T != undefined) {
GCArmv5T.rootDir = V5T_rootdir;
GCArmv5T.LONGNAME = CC_V5T;
GCArmv5T.ccOpts.prefix += " -Wall -fno-strict-aliasing ";
GCArmv5T.lnkOpts.suffix = GCArmv5T.lnkOpts.suffix.replace("-lstdc++", "");

/* add pthreads */
GCArmv5T.lnkOpts.suffix += " -lpthread ";

Build.targets.$add(GCArmv5T);
}
/*
if (WinCE != undefined) {
WinCE.rootDir = wince_rootdir;
WinCE.execExt = "_wince.exe";
WinCE.projectRoot = wince_projectroot;

Build.targets.$add(WinCE);
}
*/

/*
* ======== Pkg.attrs.profile ========
*/
Pkg.attrs.profile = "release";

SO i do not find the worlds var C64P = xdc.useModule(‘ti.targets.C64P’);   I've added these words

 C64P.extensions[“.sa”] = {
suf: “.sa”, typ: “asm:-fl”
}

after 

/* now that we know which targets we're building for, finish their config */
if (C64P != undefined) {
C64P.rootDir = C64P_rootdir;
C64P.ccOpts.prefix += remarks;

SO my config.bld file have become this:

/* now that we know which targets we're building for, finish their config */
if (C64P != undefined) {
C64P.rootDir = C64P_rootdir;
C64P.ccOpts.prefix += remarks;

C64P.extensions[“.sa”] = {

suf: “.sa”, typ: “asm:-fl”
}

BUT after this when i build it it have some errors .These errors are:

AVS_contract0_8.asm: Assembler messages:
AVS_contract0_8.asm:6: Error: junk at end of line, first unrecognized character is `='
AVS_contract0_8.asm:7: Error: unknown pseudo-op: `.asg'
AVS_contract0_8.asm:8: Error: unknown pseudo-op: `.asg'
AVS_contract0_8.asm:10: Error: junk at end of line, first unrecognized character is `='
AVS_contract0_8.asm:12: Error: unknown pseudo-op: `.asg'
AVS_contract0_8.asm:13: Error: unknown pseudo-op: `.asg'
AVS_contract0_8.asm:14: Error: unknown pseudo-op: `.asg'
AVS_contract0_8.asm:15: Error: unknown pseudo-op: `.asg'
AVS_contract0_8.asm:16: Error: unknown pseudo-op: `.asg'
AVS_contract0_8.asm:17: Error: unknown pseudo-op: `.asg'
AVS_contract0_8.asm:18: Error: unknown pseudo-op: `.asg'
AVS_contract0_8.asm:19: Error: unknown pseudo-op: `.asg'
AVS_contract0_8.asm:20: Error: unknown pseudo-op: `.asg'
AVS_contract0_8.asm:25: Error: unknown pseudo-op: `.asg'
AVS_contract0_8.asm:26: Error: unknown pseudo-op: `.asg'
AVS_contract0_8.asm:27: Error: unknown pseudo-op: `.asg'
AVS_contract0_8.asm:28: Error: unknown pseudo-op: `.asg'
AVS_contract0_8.asm:29: Error: unknown pseudo-op: `.asg'
AVS_contract0_8.asm:30: Error: unknown pseudo-op: `.asg'
AVS_contract0_8.asm:31: Error: unknown pseudo-op: `.asg'
AVS_contract0_8.asm:32: Error: unknown pseudo-op: `.asg'
AVS_contract0_8.asm:33: Error: unknown pseudo-op: `.asg'
AVS_contract0_8.asm:38: Error: junk at end of line, first unrecognized character is `*'
AVS_contract0_8.asm:39: Error: bad instruction `contract0_8(src,dst)'
AVS_contract0_8.asm:40: Error: junk at end of line, first unrecognized character is `*'
AVS_contract0_8.asm:41: Error: ARM register expected -- `add .L2X A_in,8,B_in'
AVS_contract0_8.asm:42: Error: junk at end of line, first unrecognized character is `|'
AVS_contract0_8.asm:45: Error: bad instruction `lddw .D1T1*A_in++[2],A_tmp1:A_tmp0'
AVS_contract0_8.asm:46: Error: junk at end of line, first unrecognized character is `|'
AVS_contract0_8.asm:47: Error: junk at end of line, first unrecognized character is `|'
AVS_contract0_8.asm:49: Error: bad instruction `lddw .D1T1*A_in++[2],A_tmp3:A_tmp2'
AVS_contract0_8.asm:50: Error: junk at end of line, first unrecognized character is `|'
AVS_contract0_8.asm:52: Error: bad instruction `lddw .D1T1*A_in++[2],A_tmp5:A_tmp4'
AVS_contract0_8.asm:53: Error: junk at end of line, first unrecognized character is `|'
AVS_contract0_8.asm:55: Error: bad instruction `lddw .D1T1*A_in++[2],A_tmp7:A_tmp6'
AVS_contract0_8.asm:56: Error: junk at end of line, first unrecognized character is `|'
AVS_contract0_8.asm:57: Error: junk at end of line, first unrecognized character is `|'
AVS_contract0_8.asm:61: Error: bad instruction `stdw .D1T1 A_tmp1:A_tmp0,*A_out++[2]'
AVS_contract0_8.asm:62: Error: junk at end of line, first unrecognized character is `|'
AVS_contract0_8.asm:64: Error: bad instruction `stdw .D1T1 A_tmp3:A_tmp2,*A_out++[2]'
AVS_contract0_8.asm:65: Error: junk at end of line, first unrecognized character is `|'
AVS_contract0_8.asm:67: Error: bad instruction `stdw .D1T1 A_tmp5:A_tmp4,*A_out++[2]'
AVS_contract0_8.asm:68: Error: junk at end of line, first unrecognized character is `|'
AVS_contract0_8.asm:70: Error: bad instruction `stdw .D1T1 A_tmp7:A_tmp6,*A_out'
AVS_contract0_8.asm:71: Error: junk at end of line, first unrecognized character is `|'
AVS_contract0_8.asm:73: Error: junk at end of line, first unrecognized character is `*'
AVS_contract0_8.asm:74: Error: junk at end of line, first unrecognized character is `*'
AVS_contract0_8.asm:75: Error: junk at end of line, first unrecognized character is `*'
AVS_contract0_8.asm:76: Error: junk at end of line, first unrecognized character is `*'
AVS_contract0_8.asm:77: Error: junk at end of line, first unrecognized character is `*'
AVS_contract0_8.asm:78: Error: junk at end of line, first unrecognized character is `*'

 It seems like these modifications don't work..

SO PLEASE TELL ME HOW SHUOLD I DO!!! Thank you very much!!!

By the way my DVSDK version is dvsdk_3_00_02_44 and my platform is omap3530 and i don't change the makefile file.