The Ur-Quan Masters Home Page Welcome, Guest. Please login or register.
Did you miss your activation email?
December 07, 2024, 01:41:59 pm
Home Help Search Login Register
News: Celebrating 30 years of Star Control 2 - The Ur-Quan Masters

+  The Ur-Quan Masters Discussion Forum
|-+  The Ur-Quan Masters Re-Release
| |-+  Technical Issues (Moderator: Death 999)
| | |-+  Mac OS X Update
« previous next »
Pages: [1] 2 Print
Author Topic: Mac OS X Update  (Read 4917 times)
fwiffo42
Zebranky food
*
Offline Offline

Posts: 10


I love YaBB 1G - SP1!


View Profile
Mac OS X Update
« on: January 11, 2003, 12:16:29 am »

Just a quick update on my Mac OS X experience.  I've gotten the source code into a Project for project builder and have gotten it to compile with SDL and OpenGL support.  The OpenGL still doesn't look right, perhaps I'll double check to make sure I have the latest source code from CVS.  No support for Ogg yet because of the version of SDL mixer.  I didn't bother linking in any of the vorbis libraries because of this.  Right now it compiles and produces a .app with all of the content integrated.  There is no way to add command line options except at compile time.  I don't have anywhere to host this because of the size of the integrated content.

-fwiffo
Logged
Nic.
Guest


Email
Re: Mac OS X Update
« Reply #1 on: January 11, 2003, 12:44:22 am »

Neat.  Is that the only way to create an .app, or is it possible (or should I say PROBABLE) roll one "by hand"??

As for the SDL_mixer woes, you should really consider linking it against the OpenAL framework; most of the cool features (like the oscilloscope) only work with OpenAL.

Mind you, the OpenAL framework installer for OSX is broken, and I run out of core trying to compile it from sources, but if you've got enough determination, you can get it installed. (pax is your friend)
Logged
riclewis
Guest


Email
Where we're at
« Reply #2 on: January 11, 2003, 01:39:23 am »

Hey, it's great to see all this progress being made on OSX.  I just had a couple of quick questions:

 Does the straight CVS code build under OSX yet, or does it still require some twiddling of the build environment?  

 If there are modifications that must be made to get uqm to build, what are those modifications?  Are they such that you could post a series of instructions, or a brief how-to?

 I have the appropriate SDL libraries installed (built from code), but I could just a quickly install them via fink if that's more compatible.  Great work guys...

 Ric
Logged
Irresponsible Cptn. Tylor
Guest


Email
Re: Mac OS X Update
« Reply #3 on: January 11, 2003, 02:52:53 am »

If people need space to host mac compilations of UQM, they are welcome to use the public folder of my idisk.  I needed to keep my itools email address for buisness purposes, and thus had to sign up for .mac, so I have 100mb of idisk space sitting there unused.  My .mac user name is mattness, and I have set my public folder to read/write accessable.
Logged
Nic.
Guest


Email
Re: Where we're at
« Reply #4 on: January 11, 2003, 01:07:39 pm »

Quote
Does the straight CVS code build under OSX yet, or does it still require some twiddling of the build environment?

It still requires ALOT of twiddling; although I'm guessing that is only if you are using OSX 10.1.x (like me).  I don't have access to the box I built it on right now, but here's what I remember:
  • The "." built-in command on OSX only sources stuff that is in your $PATH, which is not a common thing to all UNIX flavours (although I believe NetBSD is like this, too) so put "." in your $PATH before even ATTEMPTING to begin.

  • The build scripts as currently written do not do things "The OSX Way" at all.  For instance, to link in an OpenGL library, other UNIX-ish platforms say something like "gcc -lGL", OSX says "gcc -framework OpenGL"  Oh, and the default pathnames for where files live are not Fink-friendly.  Much editing of build scripts is required to make them look in the right places and in the right manner for everything.  Someone probably ought offer the dev guys a patch for this stuff, preferably someone who took the time to alter their build scripts "correctly" and not in a sloppy fashion, like I did. Smiley

  • The build scripts as currently written do not detect SDL, SDL_image, or possibly SDL_mixer (I cannot confirm the last one as I use OpenAL)  due to the SDL library containing its own main() function; OSX's gcc HATES that, and throws warnings and/or errors when it sees it; which causes the build scripts to detect an error when in reality everything is fine.  To get around this, I wound up creating a small if/else in the test program creation part of the build scripts, the "normal" one and a "new" one that #included SDL.h and had a main() function that matched SDL's prototype.  Then I added a new shell variable called $OSX_SDL_KLUDGE, and set it to 1 when the "new" test program was needed.  If anyone came up with a more "elegant" solution for this quandry, please post it.

  • The OpenAL Framework Installer as downloaded from openal.org doesn't work.  It loads the Installer program, but nothing ever runs, and it never actually gets installed.  Attempting to build OpenAL from CVS sources in ProjectBuilder ran me out of memory on a 256MB iBook (with a fair amount of swap(  To get OpenAL installed, I went into the .pkg directory for the installer, and un-PAX'ed the archive file inside of it, and then hand-copied everything to /System/Library/Frameworks/OpenAL.framework/  (I tried installing it to ~/Library/Frameworks first, but that never worked.  Installing it into /System worked immediately)  This got the build scripts to recognize that OpenAL was present, but all of the builds failed until I symlinked the Headers/ directory from that framework into /usr/include/

  • The gcc included on the development tools doesn't do "gcc -MM" as is expected by the build scripts, so I had to throw an extra 3-line Perl script in there as well (I would've just used sed, but since I was replacing a UNIX pathname, the slashes got mixed up with the patterns, and it all just got icky.  Perl is much smarter about such things)

  • Joystick support will SEGV on startup.  #ifdef 0 it away or delete it before you build.  Real men use keyboards anyways Smiley

  • Some of the #ifndef(WIN32) clauses in the source should also include OSX as well, but they don't.  You'll find them soon enough, let the build errors be your guide.  Wink
I wish I could be of more help here, but this should get you ~80% of the way there.  Maybe.
« Last Edit: January 11, 2003, 01:37:12 pm by Nic. » Logged
Peter Berger
Guest


Email
Re: Mac OS X Update
« Reply #5 on: January 12, 2003, 05:47:09 pm »

Fwiffo,

When I tried to create a project and link it against the SDL frameworks, I encountered problems at link time -- basically, PB decided it was an objective C app and refused to link.  How did you get around this?  (or did you link against the SDL libs instead of the frameworks?)
Logged
fwiffo42
Zebranky food
*
Offline Offline

Posts: 10


I love YaBB 1G - SP1!


View Profile
Re: Mac OS X Update
« Reply #6 on: January 13, 2003, 12:43:27 am »

Curious, I never had a problem linking against the frameworks.  I simply created a new project, and imported the source, frameworks and content.  I did a little fiddling to get the content where I wanted it, but other than that it worked fine.  I could send you my project directory if you are really interested.  I must admit, I'm rather new to project builder and just sort of made it up as I went along.

-Fwiffo
Logged
peterb
Zebranky food
*
Offline Offline

Posts: 5


I love YaBB 1G - SP1!


View Profile
Re: Mac OS X Update
« Reply #7 on: January 14, 2003, 01:21:59 am »

If you could send me your ProjectBuilder file, that would be FABULOUS.  starcon@tgr.com. (the .pbproj file)

-peter
Logged
Irresponsible Capt. Tylor
Guest


Email
Re: Mac OS X Update
« Reply #8 on: January 30, 2003, 01:42:14 am »

Did anyone ever get a compiled executable/app workin that will run without needing the SDL libraries?  I could never get them properly installed and running, but would like to help test.
Logged
Death 999
Global Moderator
Enlightened
*****
Offline Offline

Gender: Male
Posts: 3874


We did. You did. Yes we can. No.


View Profile
Re: Mac OS X Update
« Reply #9 on: January 30, 2003, 02:05:02 am »

I had no trouble with the SDL libraries.

Download fink, install it.

go to the command line, type

fink -list
to get the list of packages.
There will be some of them that begin "SDL"
then type
fink (name of package)
for each of them.

btw, I could never successfully fink the vorbis-tools package, but when things failed it didn't have anything to do with that.
Logged
Irresponsible Capt Tylor
Guest


Email
Re: Mac OS X Update
« Reply #10 on: January 31, 2003, 12:40:30 am »

I did that death, but I was getting a black screen and cel layer errors, and somebody told me that the versions of SDL installed by fink were too old, that I needed newer versions found at www.libsdl.org.  The files at www.libsdl.org were nothing like those installed by fink, and didn't seem to do anything.
Logged
Nic.
Guest


Email
Re: Mac OS X Update
« Reply #11 on: January 31, 2003, 06:49:14 am »

Hear hear!

If anyone creates a functional UQM.app for OSX, I hereby offer to host the file for all to download as an "unofficial" release.  Send me a private message on this forum and we can work out the particulars.

Thanks,
Logged
Black Monk
Guest


Email
Re: Mac OS X Update
« Reply #12 on: January 31, 2003, 07:04:01 pm »

Some info from a Mac game programmer re: sound on the Mac.  Has a blurb about OpenAL that might be interesting to some people.

http://bbs.xlr8yourmac.com/ubb/Forum25/HTML/000235.html

"The Mac OpenAL implementation is not in good shape - there are a number of bugs and obviously-missing optimizations in the code you pull off of CVS. OpenAL itself is on its deathbed and seems to be lacking a maintaining body. I haven't found a way to submit patches for it, and it doesn't look to me like it's going to go anywhere. There are 3 ports of OpenAL: Mac, Linux and Win32. Incredibly, they don't really share any code. They're all implemented fairly different, so it's a maintenance nightmare. IT really requires a strong presence to keep development going on each of those 3 platforms. This is a big shame, since it has the most potential."

---

I only mention this because I saw some reference to OpenAL above and thought this might help some people working on the OS X port.
Logged
Nic.
Guest


Email
Re: Mac OS X Update
« Reply #13 on: February 01, 2003, 07:46:15 am »

Quote
If anyone creates a functional UQM.app for OSX, I hereby offer to host the file for all to download as an "unofficial" release.

As promised, here's a .app for OSX:

http://www.submedia.net/uqm/

Enjoy, all.  Make sure to read the OSX HOWTO posted elsewhere in this forum.
« Last Edit: February 01, 2003, 07:46:48 am by Nic. » Logged
Death 999
Global Moderator
Enlightened
*****
Offline Offline

Gender: Male
Posts: 3874


We did. You did. Yes we can. No.


View Profile
Re: Mac OS X Update
« Reply #14 on: February 02, 2003, 02:35:53 am »

Ok, it works!

Incidentally, Nic., you're one of the few people to ever write a web page that made iCab smile.
Logged
Pages: [1] 2 Print 
« previous next »
Jump to:  


Login with username, password and session length

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines Valid XHTML 1.0! Valid CSS!