The time has come to move to gcc 3.2.2!
The time has come to move to gcc 3.2.2!
After extensive work and long hours of looking at irx files and other such tedious things the latest (beta) toolchain produces working and valid IRX files. Pixel sent me many messages on irc trying to get my attention when he had figured out the simple fix. :)
I've tested stuff from ps2lib, ps2drv, libhdd, and ps2link. Built fresh from cvs (some with a minor makefile tweaking) everything seems to work just as it should - flawlessly. I haven't found anything that doesn't work... yet.
This is where you come in. Run the autobuild script at the link below (or patch and build manually) to get a working beta toolchain. Run it through all the tests you can and report any problems you have. The more you can bring to our attention now means the less bugs you have to deal with later.
Hopefully this means the day of marking all this as 'stable' is near.
Get toolchain-beta.sh now from: http://www.oopo.net/consoledev
I've tested stuff from ps2lib, ps2drv, libhdd, and ps2link. Built fresh from cvs (some with a minor makefile tweaking) everything seems to work just as it should - flawlessly. I haven't found anything that doesn't work... yet.
This is where you come in. Run the autobuild script at the link below (or patch and build manually) to get a working beta toolchain. Run it through all the tests you can and report any problems you have. The more you can bring to our attention now means the less bugs you have to deal with later.
Hopefully this means the day of marking all this as 'stable' is near.
Get toolchain-beta.sh now from: http://www.oopo.net/consoledev
Well, good news and bad news: the good news is that toolchain-beta.sh seems to build everything correctly. It makes the cross-compilers, ps2client, and then the ps2sdk; the bad news is it then seems to delete /usr/local/ps2dev/ps2sdk when it's done. As a result, you have no sdk when it's done. I thought originally that it was failing because the ps2sdk directory wasn't there to begin with, so I made that dir. When it was done running, the directory had been removed.
Another problem I ran into the first time - one of the first things it does is try to log into the cvs. I typed in the password wrong, so it wasn't logged in. It went ahead and continued on anyway, but failed when it tried to fetch ps2client. So I had to go through the cross-compile phase all over again. The login should either fail immediately, or retry the login.
That's all I've run into so far. In case it makes a difference, I'm running Fedora Core 2 i386 version. It's a clean installation I just set up.
Another problem I ran into the first time - one of the first things it does is try to log into the cvs. I typed in the password wrong, so it wasn't logged in. It went ahead and continued on anyway, but failed when it tried to fetch ps2client. So I had to go through the cross-compile phase all over again. The login should either fail immediately, or retry the login.
That's all I've run into so far. In case it makes a difference, I'm running Fedora Core 2 i386 version. It's a clean installation I just set up.
Deleting the ps2sdk directory? Are you running the script in /usr/local/ps2dev? If so, try running it in a different directory. The script used to build everything in /tmp/ps2dev, but I had some problems with machines doing weird things with /tmp, so now it uses the current directory instead.
As for the cvs login problem... I'll get on it.
As for the cvs login problem... I'll get on it.
Found the problem. At the start, you export some vars:
export PS2DEV="/usr/local/ps2dev"
export PS2SDK="$PS2DEV/ps2sdk"
Then at the very end of the script, you do:
## Clean up ps2sdk.
rm -Rf $PS2SDK
So you delete the ps2sdk at the end. What did you mean to do there? Or maybe you got carried away with cleaning up... it seems that all the ps2sdk stuff needs to be left. Any cleanup would be done before building a new one, which you do for the source before checking out ps2sdk. Maybe the above line was meant to be at the beginning of the ps2sdk section too.
export PS2DEV="/usr/local/ps2dev"
export PS2SDK="$PS2DEV/ps2sdk"
Then at the very end of the script, you do:
## Clean up ps2sdk.
rm -Rf $PS2SDK
So you delete the ps2sdk at the end. What did you mean to do there? Or maybe you got carried away with cleaning up... it seems that all the ps2sdk stuff needs to be left. Any cleanup would be done before building a new one, which you do for the source before checking out ps2sdk. Maybe the above line was meant to be at the beginning of the ps2sdk section too.
:D
Thought it might be something like that. Great job on the script by the way. Really makes it simple to setup the tools for *ix people. Since I just switched over comletely to Fedora Core for XP, it was rather helpful and at the right time. Maybe now I can finish a couple PS2 projects I was working on.
Thought it might be something like that. Great job on the script by the way. Really makes it simple to setup the tools for *ix people. Since I just switched over comletely to Fedora Core for XP, it was rather helpful and at the right time. Maybe now I can finish a couple PS2 projects I was working on.
Wouldn't it make sense to do everything inside a build directory, or using ps2sdk-build instead of ps2sdk to help avoid accidental deletion?ooPo wrote:Oh! Oops.
Change that to:
rm -Rf ps2sdk
Also change the ps2client line to:
rm -Rf ps2client
That way it'll delete the ps2sdk source directory instead of the release directory. :) I got carried away with the other three packages being stored in environment variables.
Shoot Pixels Not People!
Makeshift Development
Makeshift Development
Sure, but when checked out of cvs it makes a 'ps2sdk' directory. This sits in your build directory temporarily, which is the same directory the script is run from. This is completely separate from $PS2SDK, which is located in '/usr/local/ps2dev/ps2sdk'.
Two directories, one for building and one for using. Don't delete the wrong one. :)
Two directories, one for building and one for using. Don't delete the wrong one. :)
Then why not have everything in build, i.e. ./build/ps2sdk ./build/ps2client, and just do a rm -Rf build so that if some idiot (me) runs the script from inside /usr/local/ps2dev/ it doesn't screw things up ;)ooPo wrote:Sure, but when checked out of cvs it makes a 'ps2sdk' directory. This sits in your build directory temporarily, which is the same directory the script is run from. This is completely separate from $PS2SDK, which is located in '/usr/local/ps2dev/ps2sdk'.
Two directories, one for building and one for using. Don't delete the wrong one. :)
Code: Select all
mkdir build
cd build
blah
blah
rest of script here
blah
blah
cd ..
rm -Rf build
Shoot Pixels Not People!
Makeshift Development
Makeshift Development
My appolgizes. I forgot about your "Good ideas not wanted" policy.
BLAME CANADA!
BLAME CANADA!
Shoot Pixels Not People!
Makeshift Development
Makeshift Development