ee-gcc & iop-gcc, whats different about them

Discuss the development of software, tools, libraries and anything else that helps make ps2dev happen.

Moderators: cheriff, Herben

Post Reply
mountainstorm
Posts: 21
Joined: Wed Apr 07, 2004 2:59 am

ee-gcc & iop-gcc, whats different about them

Post by mountainstorm »

Im using Mac OS X 10.3. Now XCode includes GCC v3.3 so as Im downloading ee-gcc and iop-gcc Ive got to wondering... whats different.

Perhaps the more accurate question is 'can I get away without re-compiling gcc?'

As an aside, has anybody else developed using XCode on OS X ?

MountainStorm
mrbrown
Site Admin
Posts: 1537
Joined: Sat Jan 17, 2004 11:24 am

Post by mrbrown »

Becuase the IOP and EE are seperate processors, because their ABI's are wildly different (the EE is a 64-bit CPU, the IOP is 32-bit), and because the EE supports CPU instructions and coprocessors that don't exist on the IOP, creating a single GCC backend to target both CPUs isn't feasible at this time. The best we could do is write a seperate frontend to both of these compilers, but you'd still have to build both compilers, sorry.
pixel
Posts: 791
Joined: Fri Jan 30, 2004 11:43 pm

Post by pixel »

"Targets".

The ps2 special gcc compilers have built-in targets for the playstation 2, that you can't find in any other gcc version. More over: each gcc is targetted by the compilation for a specific system. That means you could build thousands of gccs with different compilation configuration parameters which will all act in a different way. Thus, you could get a win32-i386 compiler, a linux-i386 compiler, a Solaris-Sparc compiler, a PS2-EE compiler, a linux-strongarm compiler, out of all the same source tree. And each of them would *only* produce code for the system they are targetted (more or less).

So, you can't use your built-in gcc-3.3 to produce PS2 code.

Sorry, you have a compilation overhead in front of you now.
pixel: A mischievous magical spirit associated with screen displays. The computer industry has frequently borrowed from mythology. Witness the sprites in computer graphics, the demons in artificial intelligence and the trolls in the marketing department.
mountainstorm
Posts: 21
Joined: Wed Apr 07, 2004 2:59 am

Building toolchain on Mac OS X

Post by mountainstorm »

Now I look at it, its obvious. I thought that the standard compile of GCC would have everything in it. But now I think of how many different variations there are, its not that surprising.

So now Im trying to compile it. Ive got the gnu-ee-binutils-gcc.1.1.tar.gz file from http://ps2dev.sourceforge.net/ and trying to configure it with the following command line.

./configure --target=mips64r5900-sf-elf --host=powerpc-apple-macos

it trundles away for a while and then tells me

Configuration powerpc-apple-macos not supported
Configure in /Users/crawley/ps2dev/gnu-ee-binutils-gcc/gcc failed, exiting.

Am I missing something, or does this source not support OS X.

Any help will be very grateful.

MountainStorm
ooPo
Site Admin
Posts: 2023
Joined: Sat Jan 17, 2004 9:56 am
Location: Canada
Contact:

Post by ooPo »

Use my handy autobuild script found at:

http://www.oopo.net/consoledev

It will download, patch and compile the source code for you. You may need to get a copy of wget to support the autodownloading, but its simple to grab and install if you've dealt with any GNU software in the past. Its located at:

ftp://ftp.gnu.org/pub/gnu/wget

Unfortunately, building iop-gcc (2.8.1) will fail because of libtool problems under osx. Perhaps someone more experienced with gcc could take a poke at it. There's a new version of iop-gcc (3.2.2) in the works but it has too many problems to be useful at the moment.

Still, you'll be able to compile and run EE programs with the working ee-gcc. Most people don't need IOP support anyway. :)
pixel
Posts: 791
Joined: Fri Jan 30, 2004 11:43 pm

Post by pixel »

ooPo wrote:Unfortunately, building iop-gcc (2.8.1) will fail because of libtool problems under osx. Perhaps someone more experienced with gcc could take a poke at it.
Just give me a shell :-P
pixel: A mischievous magical spirit associated with screen displays. The computer industry has frequently borrowed from mythology. Witness the sprites in computer graphics, the demons in artificial intelligence and the trolls in the marketing department.
mountainstorm
Posts: 21
Joined: Wed Apr 07, 2004 2:59 am

Post by mountainstorm »

Cheers very much, I got the latest 'beta' bintools compiling but unfortunately it fell over and I cant be bothered to look into why.

So Im taking your advice and using your shell script to download and compile everything. Im going to go off to bed and i hope :) when I awake it will all be compiled (excluding the IOP).

You might like to know I had to mod the script to get wget using passive FTP (im behind a NAT).

Cheers

MountainStorm
ooPo
Site Admin
Posts: 2023
Joined: Sat Jan 17, 2004 9:56 am
Location: Canada
Contact:

Post by ooPo »

I'm also behind a NAT. No problems here. :)

Pixel: Maybe this weekend sometime when I get my ibook back.
pixel
Posts: 791
Joined: Fri Jan 30, 2004 11:43 pm

Post by pixel »

ooPo wrote:I'm also behind a NAT. No problems here. :)
It means either your wget knows how to retry in passive mode, either your nat gateway knows how to translate FTP PORT commands.

And for the iBook, yay! :-P

I could do it using the compilation farm on sourceforge, but it's a real pain in the ass to use them...
pixel: A mischievous magical spirit associated with screen displays. The computer industry has frequently borrowed from mythology. Witness the sprites in computer graphics, the demons in artificial intelligence and the trolls in the marketing department.
Post Reply