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.

Building with NDK

Other Parts Discussed in Thread: SYSBIOS, LM3S6965

Hello,

I'm trying to incorporate NDK (2.22.0.06) into my SYS/BIOS (6.34.2.18), XDC (3.24.3.33) project.

I followed the instructions in the NDK users guide (section 1.6), added NDK Core Stack to my project, and made sure that "Global Network Settings" is checked in the overview, config file below.

var

Defaults = xdc.useModule('xdc.runtime.Defaults');

var Diags = xdc.useModule('xdc.runtime.Diags');

var

Error = xdc.useModule('xdc.runtime.Error');

var

Log = xdc.useModule('xdc.runtime.Log');

var

LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');

var

Main = xdc.useModule('xdc.runtime.Main');

var

Memory = xdc.useModule('xdc.runtime.Memory')

var

SysMin = xdc.useModule('xdc.runtime.SysMin');

var

System = xdc.useModule('xdc.runtime.System');

var

Text = xdc.useModule('xdc.runtime.Text');

var

BIOS = xdc.useModule('ti.sysbios.BIOS');

var

Hwi = xdc.useModule('ti.sysbios.hal.Hwi');

var

Task = xdc.useModule('ti.sysbios.knl.Task');

var

Global = xdc.useModule('ti.ndk.config.Global');

/*

* Program.argSize sets the size of the .args section.

* The examples don't use command line args so argSize is set to 0.

*/

Program.argSize = 0x0;

/*

* Uncomment this line to globally disable Asserts.

* All modules inherit the default from the 'Defaults' module. You

* can override these defaults on a per-module basis using Module.common$.

* Disabling Asserts will save code space and improve runtime performance.

Defaults.common$.diags_ASSERT = Diags.ALWAYS_OFF;

*/

/*

* Uncomment this line to keep module names from being loaded on the target.

* The module name strings are placed in the .const section. Setting this

* parameter to false will save space in the .const section. Error and

* Assert messages will contain an "unknown module" prefix instead

* of the actual module name.

*/

Defaults.common$.namedModule =

false;

/*

* Minimize exit handler array in System. The System module includes

* an array of functions that are registered with System_atexit() to be

* called by System_exit().

*/

System.maxAtexitHandlers = 4;

/*

* Uncomment this line to disable the Error print function.

* We lose error information when this is disabled since the errors are

* not printed. Disabling the raiseHook will save some code space if

* your app is not using System_printf() since the Error_print() function

* calls System_printf().

Error.raiseHook = null;

*/

/*

* Uncomment this line to keep Error, Assert, and Log strings from being

* loaded on the target. These strings are placed in the .const section.

* Setting this parameter to false will save space in the .const section.

* Error, Assert and Log message will print raw ids and args instead of

* a formatted message.

*/

Text.isLoaded =

false;

/*

* Uncomment this line to disable the output of characters by SysMin

* when the program exits. SysMin writes characters to a circular buffer.

* This buffer can be viewed using the SysMin Output view in ROV.

*/

SysMin.flushAtExit =

false;

/*

* The BIOS module will create the default heap for the system.

* Specify the size of this default heap.

*/

BIOS.heapSize = 0x0;

/* System stack size (used by ISRs and Swis) */

Program.stack = 0x400;

/* Circular buffer size for System_printf() */

SysMin.bufSize = 128;

/*

* Create and install logger for the whole system

*/

var

loggerBufParams = new LoggerBuf.Params();

loggerBufParams.numEntries = 4;

var

logger0 = LoggerBuf.create(loggerBufParams);

Defaults.common$.logger = logger0;

Main.common$.diags_INFO = Diags.ALWAYS_ON;

System.SupportProxy = SysMin;

/*

* Build a custom BIOS library. The custom library will be smaller than the

* pre-built "instrumented" (default) and "non-instrumented" libraries.

*

* The BIOS.logsEnabled parameter specifies whether the Logging is enabled

* within BIOS for this custom build. These logs are used by the RTA and

* UIA analysis tools.

*

* The BIOS.assertsEnabled parameter specifies whether BIOS code will

* include Assert() checks. Setting this parameter to 'false' will generate

* smaller and faster code, but having asserts enabled is recommended for

* early development as the Assert() checks will catch lots of programming

* errors (invalid parameters, etc.)

*/

BIOS.libType = BIOS.LibType_Custom;

BIOS.logsEnabled =

false;

BIOS.assertsEnabled =

true;

/*

* Create a task. The 'taskFxn' function can be found in main.c.

*/

var

task0Params = new Task.Params();

var

task0 = Task.create("&taskFxn", task0Params);

Global.IPv6 =

false;

Now, when I try to compile, I receive the following error;

undefined       first referenced                                               

symbol in file

---------       ----------------                                                 

NIMUDeviceTable C:\ti\ndk_2_22_00_06\packages\ti\ndk\stack\lib\stk.aem3<nimu.oem3>

error #10234-D: unresolved symbols remain

error #10010: errors encountered during linking; "RTOS_TCP.out" not built

I followed all the directions in section 1.6.2 of the manual, and still nothing.

thanks,