Skip to main content

questions about SDK

6 replies [Last post]
yelin
Offline
Joined: 2010-06-30
Points: 0

Hi,
I'm now trying to port some code (somewhat similar to OCAP stack + mpe/mpeos) from PowerOs to linux. I read the VID-OCAP-PG.pdf (porting guide) and don't understand "Installing the SDK" part (page 60 in the pdf file).

The code I downloaded from this open source website does not have a SDK under $OCAPROOT/tools, only some generic packages under generic. Can someone explain to me what the SDK is used for?

Also porting guide says that they used JAVA2 SDK 1.3+1.4, but I saw neither 1.3 or 1.4 was used in the opensource code. It seems that later versions of java (e.g. 1.6) is used. Does that mean I can only install 1.6 instead of 1.3 and 1.4?

Message was edited by: yelin

Message was edited by: yelin

Reply viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
yelin
Offline
Joined: 2010-06-30
Points: 0

Another question about porting guide and some specific ocap-ri code:
I saw data type "ui32" is used in many places in mpeos layer code, e.g.
https://community.cablelabs.com/svn/OCAPRI/tags/RI_I1_1_3_REL_B/ri/ODLSr...

Also it is mentioned twice in the porting guide (I know it is out-of-date...)
I'm not sure where type "ui32" is defined. Could anyone please tell me the related header file? I need it to compile my current code.

Thanks very much.

greg80303
Offline
Joined: 2008-07-03
Points: 0

The MPEOS Linux port that we use was originally taken from a port of the stack to a linux-based set-top-box. The ui32 type that you refer to was a type private to that port and is not currently used. The functions at the bottom of mpeos_mem.c are all surrounded by the conditional compilation macro:

[code]
#ifdef DEBUG_MEM_TRACK
[/code]

which is not defined and thus is never compiled in. Some time in the future, we will probabaly go in and clean out all that old, unused code.

G

Message was edited by: greg80303

greg80303
Offline
Joined: 2008-07-03
Points: 0

If you are trying to port the OCAP stack to your native OS, you must implement all of the APIs defined in "ri/ODLSrc/OCAP-1.0/mpe/os/include". Unfortunately, the porting guide that you are referring to is WAY out of date and not super helpful in documenting the porting process. The javadoc/doxygen comments above each API in the header files are your best/only documentation at this time.

As far as the JDK, you must have at least a JDK1.4 installed on your system to compile the Java portions of the stack, but 1.5 and 1.6 will work just fine.

G

dhooley
Offline
Joined: 2008-04-23
Points: 0

Repeating Greg's point, we realize that it would be very helpful to have an updated version of the Porting Guide to answer questions such as yours. Unfortunately there is no project resource available currently to perform such an update, and no immediate plans to do so.

yelin
Offline
Joined: 2010-06-30
Points: 0

OK, thanks for your reminder.
If I change something under $OCAPROOT, and I want a new build, do I have to rerun "cd $PLATFORMROOT && make clean purge build" again? (I guess no, but I'm not sure.)

greg80303
Offline
Joined: 2008-07-03
Points: 0

No, if you change something under $OCAPROOT, you only have to run "ant" under $OCAPROOT.