View Full Version : Wanted: Tivo 'C' compiler for Mandrake 9

10-23-2002, 03:31 PM
When I get my Xbox hacked - Mandrake Linux can be installed on a free (unused) part of the hard drive. So im looking to find a cross compiler that will run under Mandrake Linux 9 and produce Tivo binares.

Anyone ih here writing code for Tivos (in C) have one? Source code for one? Willing to cross compile one for me?

10-23-2002, 07:36 PM
dtype created a cross compiler for x86 linux systems. check alt.org for details.

10-24-2002, 09:34 AM
Originally posted by mrblack51
dtype created a cross compiler for x86 linux systems. check alt.org for details.

Several of the typical Unix utils have been released for the Tivo in binary. Whats the 'standard' Tivo development enviroment look like? (Guessing its a unix box with a C compiler)

I'll check for dtypes compiler, thanks.

11-03-2002, 12:44 PM
A *standard* delopemnt systems looks like my laptop :). Ok it looks like my desktop too for that matter. Its just gcc with cross compiler options. Add into that some libs and voila you can now make MSB elf binaries for a ppc on a LSB i386 box.

There are a few things that may get you "stuck" when you try to port over code to a Tivo. Most natable of those are it contains no real user file system (ie everything is root) and it has a severy hacked network implimentaiton (thinkgs like resolv dont work right).

When dtype put together the cross compiler he included the bintools so you could port the binary code. There is a libray archiver there as well so you can use shared libs. Baisicly it is all you would need to compile a program (and it helps if they use gnu automake).

Simply download the two files (ftp://ftp.alt.org/pub/tivo/tivodev/) and unbzip/tar them to your i386 linux box.
There are some examples and even a kernel to play with. Soon you will be compiling everything you had ever dreamed of for the Tivo :)

As a note, and not to distract from what dtype did, these are simply a cross compiler gcc implimentaiton all put into a nice package. There are many HOWTOs online decicated to just this. However it is nice to have it all compact (as adversed to my /usr/local/bin/gcc-tivo binaries).

11-04-2002, 02:50 PM
As I await the finishing items for my mandrake9 project Im going to look at the link you provided me and get the compiler working (on a i386 box). Because my development system is not an i386 box there will be some additional work needed. [dream mode]Who knows it may just be option flags for the compiler? [/dream mode]

Thanks for the information.

11-04-2002, 03:15 PM
Since Mandrake has only released 9.0 for Intel I would like to know what platform you have? For that matter a copy of the distro as well (I have a Sparc box that could use an upgrade). I will guess you have a Sparc because had you a PPC you wouldnt need to cross compile :)

If you are thinking your i586 (or whatever Intel chip you use) isn't an i386 its a VERY common misconception. The i386 refers to the whole family of the Intel chips from the 80386 to the current ones (Itanium excluded). It's the legacy of a CISC implementation. All the newer chips give you is some added instructions, used by very few notable programs. So i386 refers to the architecture, not the cpu itself.

11-05-2002, 12:22 AM
Originally posted by rc3105
the tivo cross compiler that digitail air posted/referenced a while back should run under mandrake on an xbox. it works fine even under a 75 meg fat16 based zipslack micro-install

Is the link that Torg posted the digitail air cross compiler?

Has anyone tried Cygwin - its suposed to be a version of the gnu compiler that runs under windows but produces linux executables.

11-05-2002, 11:34 AM
I've download all the files and my mod chip is a day out. Have a vacation coming up and that thing called work that always gets in the way :) . However my goal is to have Mandrake running on the XBox in a week. Then its time to do some Tivo work ;)

Thanks for all the help so far, im sure there will be more needed.

11-05-2002, 12:52 PM
Actualy all of the gnu gcc compilers, cygwin included do nothing more then make ELF binaries for whatever platform you need. In the case of Cygwin it is not as simply as repagaging the ELF but it uses the same process to turn the object code into a memory relcatable binary object (what you and I refer to as a program).

All you need is a compiler (gcc isn't the only one) that has flags for the differnt output types. You also need the libraries to do this. Technicaly this process is linking not compiling, but it is commnly used interchangably.

That is to say you can have your Xbox make binaires for your AIX system. It can even make 64 bit binaries (given it has the proper link code) from a 32 bit system.

11-06-2002, 07:58 AM
How a compiler and linker work are not new to me. Im an old C programmer who learned from K&R in the days before before C++ and visual languages existed. My interests changed and I made a shift away from writing code for a living. However since there are a few things I want to do with my Tivo and UTV its time to get back into it. Using a Intel/PC based linux system would have been easy but since I dont have one the next best solution was to use an XBox running Mandrake. Besides when im not writing code the kids can play games or watch DVD's.

Thanks for the feedback, this is turning into a good thread (for me anyway ;)).