[OSX] Could Someone Do Me A Big Favour?

GEC: Discuss gaming, computers and electronics and venture into the bizarre world of STGODs.

Moderator: Thanas

Post Reply
User avatar
Stark
Emperor's Hand
Posts: 36169
Joined: 2002-07-03 09:56pm
Location: Brisbane, Australia

[OSX] Could Someone Do Me A Big Favour?

Post by Stark »

I need to get Ultrastar built on OSX, but I'm not very confident messing around with that sort of thing. I've even found instructions, but I figure it might be faster if I just ask someone who knows what they're doing to help me out.

The build 'instructions' are here, but I'm fairly certain I wouldn't get anywhere before lunchtime. :) I'm not even sure how stable the build is; I believe the port is 'in progress'. Can anyone help me out?
User avatar
Bounty
Emperor's Hand
Posts: 10767
Joined: 2005-01-20 08:33am
Location: Belgium

Post by Bounty »

It looks straightforward enough - Fink and Xcode come with installers, the rest seems to work pretty much like it does if you're compiling under Linux. Where exactly is the problem?

The main page says the port works "with some rough edges and issues". Have you checked the bug pages or the forum yet?
User avatar
Dave
Jedi Knight
Posts: 901
Joined: 2004-02-06 11:55pm
Location: Kansas City, MO

Post by Dave »

It's hard to help you overcome your fears if we don't know what you're scared of :)

Let's break it down, step by step.

Step 1.1: Install Xcode.

It looks like Xcode contains your compiler, debugger, and all the other good parts that are required for programing in C/C++. Just so you know.
You get it from your OSX disk or from apple.com
Just follow the instructions there.

Step 1.2: Install Fink
Download site for fink is here, pick the version of fink that corresponds with the type of processor you're running OSX on (PowerPC or Intel) and the version of OSX you are running (10.1 - 10.5 or 6 or whatever number they're at know.)
Again, follow the instructions.

Step 2.1: Create a folder
Where do you want to store all this crap? Make a folder for it.

Step 2.1a: Getting there in the terminal.
I suspect this is the start of the part that scares you.
Start the terminal.
Getting around in the terminal is not that hard, it simply requires knowledge of arcane secret formulations of letters, like cd and ls.
A crash course in what the basic commands mean is here.
In short, the commands cd (change directory), ls (list files/folders in this folder) and pwd (present working directory -- or, where am I?) will be your new friends. :P
Oh, yeah, commands are case sensitive, so cd Desktop is different than cd desktop. If you start going down into the wrong folder, cd .. (thats two periods) means go up one level.

Step 2.2: Getting the code.
Navigate, in the terminal, to the folder you wanted to store all the crap in.

Subversion is a method of tracking changes in files and folders. It is used a lot in programming to keep track of every little change that is made in programs. What we're going to do is use Subversion to download the latest copy of this program.

Like they said:

Code: Select all

svn co https://ultrastardx.svn.sourceforge.net/svnroot/ultrastardx/trunk ultrastardx

Handy tip: you can paste the code into the terminal, usually by right clicking and selecting "paste", or the key command is [shift]+[insert] for the terminal (I think)

Subversion will download the latest code and folders into the folder you execute it from.

Step 3.1: Build
Dive down into the folders it has downloaded (folder/Game/Code) using the cd command.

and build the program from source using these commands:

(Note that running these commands will probably throw a bunch of random messages up in the terminal (e.g. "warning: function your-mom not allowed") but should return you to the command prompt when done.)

Code: Select all

./autogen.sh
./ means, roughly, "run this program"
Here, autogen is a shell script, or a compilation of commands not dissimilar to the ones you have been running. This probably organizes the files before they are used (or its a handy little script to erase your entire computer, but I doubt that.)

Code: Select all

./configure
Wikipedia tells me this tweaks the source code so it runs best on your system.

Code: Select all

make macosx-app
This converts the source code (which humans can read) to machine code (for your computer to read). This can take a while. It took me 5 minutes or so to compile the source for the Marathon game.



That should get you started. Ask if you have any problems.
User avatar
Stark
Emperor's Hand
Posts: 36169
Joined: 2002-07-03 09:56pm
Location: Brisbane, Australia

Post by Stark »

Running ./configure fails out on 'no free pascal compiler', and doesn't create the macosx-app so I can't make it. I installed Xcode and fink fine.

So I installed FPC, and it fails out with 'syntax error near unexpected token 'libpng''. Huzzah? :lol:
User avatar
phongn
Rebel Leader
Posts: 18487
Joined: 2002-07-03 11:11pm

Post by phongn »

Is this what you tried, Stark?

As for the missing libpng, try this:

Code: Select all

fink install libpng3
User avatar
Stark
Emperor's Hand
Posts: 36169
Joined: 2002-07-03 09:56pm
Location: Brisbane, Australia

Post by Stark »

Yah, that got it past the fpc thing. Is the libpng3 part of the install I sould have selected, or is it optional only?

In other words, how bad exactly are the 'directions' that only mentions about half the actual requirements?

Still broken, anyway.
lol building software isn't irritating at all wrote:checking for libpng... ./configure: line 4230: syntax error near unexpected token `libpng,'
./configure: line 4230: ` PKG_CHECK_EXISTS(libpng,'
To me it looks like it might be a typo; is it worth pulling the code down again and trying from the top?
User avatar
phongn
Rebel Leader
Posts: 18487
Joined: 2002-07-03 11:11pm

Post by phongn »

Gargh, it looks like the configure script is broken; you might want to submit a bug report.
User avatar
Stark
Emperor's Hand
Posts: 36169
Joined: 2002-07-03 09:56pm
Location: Brisbane, Australia

Post by Stark »

phongn wrote:Gargh, it looks like the configure script is broken; you might want to submit a bug report.
If I were do so, what would I say?

This is why I hate building my own software; I have never, ever built anything successfully ever because I always give up somewhere in the installing the 50,000 dev packages required or troubleshooting the 'simple' scripts.

Now I need to find an available Windows laptop that can a) run ultrastar and b) has tv-out, which seems unlikey. Oh well. My quest for portable karaoke continues...

Thanks for you help, guys.
User avatar
phongn
Rebel Leader
Posts: 18487
Joined: 2002-07-03 11:11pm

Post by phongn »

Just tell them the error line.
User avatar
Pu-239
Sith Marauder
Posts: 4727
Joined: 2002-10-21 08:44am
Location: Fake Virginia

Post by Pu-239 »

In the meantime you can try downloading an olderl revision from SVN that might not have the bug.

ah.....the path to happiness is revision of dreams and not fulfillment... -SWPIGWANG
Sufficient Googling is indistinguishable from knowledge -somebody
Anything worth the cost of a missile, which can be located on the battlefield, will be shot at with missiles. If the US military is involved, then things, which are not worth the cost if a missile will also be shot at with missiles. -Sea Skimmer


George Bush makes freedom sound like a giant robot that breaks down a lot. -Darth Raptor
User avatar
Stark
Emperor's Hand
Posts: 36169
Joined: 2002-07-03 09:56pm
Location: Brisbane, Australia

Post by Stark »

Pu-239 wrote:In the meantime you can try downloading an olderl revision from SVN that might not have the bug.
How to do this? :(
User avatar
Pu-239
Sith Marauder
Posts: 4727
Joined: 2002-10-21 08:44am
Location: Fake Virginia

Post by Pu-239 »

Code: Select all

svn help
for help w/ svn

What I think you do is

Code: Select all

svn log
to see what changes are in the logfile if any and find one that seems to work. There's a lot of stuff, so do

Code: Select all

svn log|less
assuming `less` exists on MacOS (otherwise use more).


Then do

Code: Select all

svn update -r [number of good revision that was found in log]
If that doesn't work, try something a bit older. Might require dredging thorugh forums to find a good revision. I'd help you compile it, but I don't use OS X :P


It does look like they added more stuff yesterday, so ignoring all the above and doing

Code: Select all

svn update
might work.

The bug might also be a bashism, since the developers note they don't use OS X, so what you could try is change the first line of configure from "#! /bin/sh" to "#! /bin/bash". I have no idea what OS X uses for sh, but it's worth a try.

If all else fails, fix it yourself or install Linux or Windows on your OS X box :P

ah.....the path to happiness is revision of dreams and not fulfillment... -SWPIGWANG
Sufficient Googling is indistinguishable from knowledge -somebody
Anything worth the cost of a missile, which can be located on the battlefield, will be shot at with missiles. If the US military is involved, then things, which are not worth the cost if a missile will also be shot at with missiles. -Sea Skimmer


George Bush makes freedom sound like a giant robot that breaks down a lot. -Darth Raptor
User avatar
Durandal
Bile-Driven Hate Machine
Posts: 17927
Joined: 2002-07-03 06:26pm
Location: Silicon Valley, CA
Contact:

Post by Durandal »

There's no binary distribution through Fink?
Damien Sorresso

"Ever see what them computa bitchez do to numbas? It ain't natural. Numbas ain't supposed to be code, they supposed to quantify shit."
- The Onion
User avatar
Stark
Emperor's Hand
Posts: 36169
Joined: 2002-07-03 09:56pm
Location: Brisbane, Australia

Post by Stark »

Durandal wrote:There's no binary distribution through Fink?
The port is apparently still in progress - I think the guy doing it is trying to move away from the pascal-based windows version and make it a 'proper' Cocoa app.
Post Reply