Anyone offering precompiled binaries of latest (or recent) s

NOTICE: This forum is archived as read only.
Please use the Github Discussions at https://github.com/exult/exult/discussions
Forum rules
NOTICE: This forum is archived as read only.
Please use the Github Discussions at https://github.com/exult/exult/discussions
marzo
Site Admin
Posts: 1925
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by marzo »

Hm. At least now it proceeded until linking, where it failed to find libX11. A suggestion from Google would be to install the X11 SDK (the developer files); it seems that they aren't installed by default.
------
Marzo Sette Torres Junior
aka Geometrodynamic Dragon
[url=http://www.catb.org/~esr/faqs/smart-questions.html]How To Ask Questions The Smart Way[/url]
Dominus
Site Admin
Posts: 5656
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by Dominus »

Last night, Marzo and Willem spent a lot of time with me on IRC to investigate and solve some of the Exult problems on OS X.
Thanks to them the result is that Exult and Exult Studio do work together and that Exult now also compiles with OpenGL support.

Some notes about the Exult Studio support:
- you need the X11 SDK installed from the OS X install disks
- ./configure needs the switches "--enable-exult-studio --enable-macosx-studio-support"
- Exult compiled with the OS X Studio supports needs to be started with X11 as SDL Video driver, so a "export SDL_VIDEODRIVER=x11" needs to be set before you start it. Otherwise it will just crash and burn (maybe the source can be changed to do that automatically when you use those configure options)
- Exult Studio normally gets compiled in /mapedit, you need to have that in the path somewhere so that when Exult goes into mape-edit-mode it can start Exult Studio

Issues that remain and probably need someone fluent in OS X development (since the way we did it last night was working but slowly since Marzo and Willem suggested things to do and I had to compile and report back to them):
- static compilation
- CoreMIDI support
- app bundle for both Exult and Exult Studio in a way that they work without setting the path...
--
Read the documentation and the FAQ! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!
MeddlingMonk
Posts: 237
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by MeddlingMonk »

Some notes about the Exult Studio support:
- you need the X11 SDK installed from the OS X install disks
A small point about this: The X11 SDK package is part of Xcode. If you've never upgraded Xcode, go ahead and install the X11 SDK from the install disk to be sure you have it. But anyone who as upgraded Xcode should not. If a person has upgraded Xcode and checked all the boxes when doing so, they will have the X11 SDK installed; if not, then install from the disk image rather that the install disk (just in case there might be a version conflict).
Jolyon

Re: Anyone offering precompiled binaries of latest (or recen

Post by Jolyon »

I get the following when compiling with Studio support:

Making all in mapedit
g++ -DHAVE_CONFIG_H -I. -I.. -I./../headers -I./.. -I./../shapes -I./../imagewin -I./../conf -I./../gamemgr -I./../files -I./../server -I./../usecode -DXTHREADS -I/opt/local/include/libglade-2.0 -I/opt/local/include/gtk-2.0 -I/opt/local/include/libxml2 -I/opt/local/lib/gtk-2.0/include -I/opt/local/include/atk-1.0 -I/opt/local/include/cairo -I/opt/local/include/pango-1.0 -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include -I/opt/local/include/pixman-1 -I/opt/local/include/freetype2 -I/opt/local/include/libpng12 -I/usr/X11/include -DMACOSX -O2 -Wno-long-long -DEXULT_DATADIR=\"data\" -MT shapelst.o -MD -MP -MF .deps/shapelst.Tpo -c -o shapelst.o shapelst.cc
shapelst.cc: In member function ‘time_t Shape_chooser::export_png(const char*, Image_buffer8&, int, int)’:
shapelst.cc:802: error: ‘Export_png8’ was not declared in this scope
shapelst.cc: In function ‘void Import_png(const char*, Shape_file_info*, unsigned char*, int, int)’:
shapelst.cc:1119: error: ‘Import_png8’ was not declared in this scope
shapelst.cc: In function ‘void Import_png_tiles(const char*, Shape_file_info*, unsigned char*, int, int, bool)’:
shapelst.cc:1187: error: ‘Import_png8’ was not declared in this scope
shapelst.cc: In member function ‘void Shape_chooser::import_all_pngs(char*, int)’:
shapelst.cc:1404: error: ‘Import_png8’ was not declared in this scope
make[2]: *** [shapelst.o] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

This has always been a problem on whatever Mac I'm trying to build it on. Libpng is installed from MacPorts. :(
Dominus
Site Admin
Posts: 5656
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by Dominus »

hmm, that part of the compilation looks like this on my system:

g++ -DHAVE_CONFIG_H -I. -I. -I.. -I./../headers -I./.. -I./../shapes -I./../imagewin -I./../conf -I./../gamemgr -I./../files -I./../server -I./../usecode -I/sw/include/libglade-2.0 -I/sw/include/gtk-2.0 -I/sw/include/libxml2 -I/sw/include -I/sw/lib/gtk-2.0/include -I/sw/include/atk-1.0 -I/sw/include/cairo -I/sw/include/pango-1.0 -I/sw/include/glib-2.0 -I/sw/lib/glib-2.0/include -I/sw/include/pixman-1 -I/sw/include/freetype2 -I/sw/include/libpng12 -I/usr/X11R6/include -I/usr/X11/include -DMACOSX -O2 -Wno-long-long -I/sw/include -DEXULT_DATADIR=\"data\" -MT shapelst.o -MD -MP -MF ".deps/shapelst.Tpo" -c -o shapelst.o shapelst.cc; \

Except for that your libs are in /opt/local instead of /sw/ (which I guess is a difference between Fink and MacPorts), I can only see that on my system /usr/x11R6/include is used as well as /usr/X11/include

Maybe the others have some ideas what is going wrong there. Are you on intel or ppc?

(more and more often I wish, we had a forum with more features and subforums, so I could split this thread)
--
Read the documentation and the FAQ! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!
Jolyon

Re: Anyone offering precompiled binaries of latest (or recen

Post by Jolyon »

I'm on Intel, but I also had this problem on my old PPC iMac.

I made the modifications to configure.ac, but get another error now (which will have to wait until I get back from work).
Jolyon

Re: Anyone offering precompiled binaries of latest (or recen

Post by Jolyon »

Ah. I'd messed up editing configure.ac. Deleting it and checking it out again seems to have fixed that issue.
Dominus
Site Admin
Posts: 5656
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by Dominus »

- Exult compiled with the OS X Studio supports needs to be started with X11 as SDL Video driver, so a "export SDL_VIDEODRIVER=x11" needs to be set before you start it. Otherwise it will just crash and burn (maybe the source can be changed to do that automatically when you use those configure options)
Marzo "fixed" that, so you don't have to set it manually but Exult will do so for you automatically :)
Thanks
--
Read the documentation and the FAQ! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!
Jolyon

Re: Anyone offering precompiled binaries of latest (or recen

Post by Jolyon »

Hrmm... Now it can't find -lX11.

ar cru .libs/libu7file.a Flat.o Flex.o Table.o IFF.o U7file.o U7fileman.o U7obj.o utils.o listfiles.o crc.o msgfile.o
ranlib: file: .libs/libu7file.a(U7file.o) has no symbols
ranlib .libs/libu7file.a
ranlib: file: .libs/libu7file.a(U7file.o) has no symbols
creating libu7file.la
(cd .libs && rm -f libu7file.la && ln -s ../libu7file.la libu7file.la)
g++ -DHAVE_CONFIG_H -I. -I.. -I./.. -I./../headers -I/opt/local/include/SDL -D_GNU_SOURCE=1 -D_THREAD_SAFE -DMACOSX -DXWIN -O2 -Wno-long-long -MT rwregress.o -MD -MP -MF .deps/rwregress.Tpo -c -o rwregress.o rwregress.cc
mv -f .deps/rwregress.Tpo .deps/rwregress.Po
/bin/sh ../libtool --tag=CXX --mode=link g++ -o rwregress rwregress.o libu7file.la -framework AudioUnit -framework CoreMIDI -lX11
g++ -o rwregress rwregress.o -framework AudioUnit -framework CoreMIDI -Wl,-bind_at_load ./.libs/libu7file.a -lX11
ld: library not found for -lX11
collect2: ld returned 1 exit status
make[3]: *** [rwregress] Error 1
make[2]: *** [all-recursive] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

Which is weird, because I definitely have the X11 SDK installed.
Dominus
Site Admin
Posts: 5656
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by Dominus »

back to topic :)
I *think* if someone would wade through how scummvm makes a static version for their "make bundle" it should be possible to make it happen for Exult as well.
But I get headaches just looking at it.
In the scummvm svn all this happens in ports.mk (with some paths set in config.mk)...
--
Read the documentation and the FAQ! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!
Dominus
Site Admin
Posts: 5656
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by Dominus »

Marzo fixed a crash when selecting conversion MT32 on OS X (theoretically on all OS' but the others are more forgiving).
Also with much help from Marzo and Willem, I commited a patch to the patch tracker that enables CoreMIDI on OS X.
CoreMIDI is needed if you want Exult to play its music on a real Roland MT32 hooked up to the Mac.

Edit: oh, and before I forget, with SDL 1.2.14 Exult now has problems switching to fullscreen. This also happens on Windows for some...
--
Read the documentation and the FAQ! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!
monotremata
Posts: 246
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by monotremata »

Ok bumping this thread with some OS X notes...
I dont have Studio installed or any need to so this is just concentrating on folks building regular old Exult on OS X..
Also, due to my old dual G4, Im also back on 10.4 since 10.5's fancy gui drags my Mac into the dirt even with a QE enabled video card hehe.
I just got my environment back up and started to build yesterdays svn source.


Basically the steps are:

1. Install Fink
2. Install SDL and SDL Mixer (I used the latest source, and then just read Marzo's note about 1.2.14 above)
3. Install Libtool 1.5
4. Install Automake
5. Install Bison

Then everything should go just as planned. As long as someone else has Fink setup the same way, you SHOULD be able to send someone your .app and have it work. Although in the long run this isnt really feasible if we get a bunch of non unix geeks trying to run it..

Some notes I encountered tonight..

SDL and SDL Mixer can be installed either via Fink or direct from source from the SDL website.. I initially had them installed by hand where they lived in the /usr/bin directory.. If you leave SDL installed here (I think thats where it lives) you can skip the Install Automake step in the list above.. For some reason with SDL in its 'default' unix location, Automake works just fine.. If you install it with Fink, you have to install Automake with Fink as well. No clue why but theres notes on that below..

Previously because of Apple renaming libtool to glibtool (and glibtoolize) you used to just be able to either make a symlink from glibtoolize to llibtoolize, or you could simply change the line at the end of autogen.sh from libtoolize -- force -- copy to glibtoolize --force --copy..
Neither one works anymore, at least on 10.4 over here. You will now get an error that libtool cant open /usr/share/libtool cause theres no folder there. No symlinks or modifying the filename in autogen.sh helped.
So this is where I finally had to give in tonight and install Fink.
So installed libtool 1.5 with Fink..

Ok now autogen finished without any errors and it finally told me I can configure..

After this, trying to compile gives you a parsing error I noticed comes from Bison.. So I used fink to install Bison 2.0..

Now configure ran just fine, and I actually finished a compile and was ready to make the app bundle.. I noticed my SDL stuff was pointing to /usr/bin (or wherever it lives) so I decided 'hey lets uninstall this and do it with Fink to keep everything together'.. So I make uninstalled mine and the latest SDL and SDL mixer were installed via Fink now.

Ok re-ran autogen.sh and recieved a BUNCH of errors all with the prefixes AM_ at the beginning. It told me I could run configure but it died really quickly with the same types of AM_ messages.. Took a wild guess and thought 'Hmm AM_ huh I wonder if I need a newer Automake'...

This is when I found my old Word document with my instructions I made about a year or two ago.. I noticed in my Fink instructions I DID write to install Automake 1.10. Just did that (although for some reason I just noticed I installed 1.9) and everything is FINALLY compiling now and Im almost ready to make the app and test it out.

Im not sure what made Automake break when I moved SDL from its regular Unix location to the /sw directory but who knows.. Apple's Unix layer hasnt always worked like Unix is SUPPOSED to so sometimes stuff you read and learn about doesnt work when you try it on a Mac.
It works fine once you install everything you need to in Fink though.

If someone wants to test it out let me know. You will need to install Fink and then SDL and SDL Mixer but it SHOULD in theory run fine after that.
If you like I can remove it, and rebuild it with SDL in its normal place so you can try it that way...

I have some command line flags someone posted up in my last thread on this so I think Im going to stop this make process and add those and see if I can make the bundle UB, cause as it is mine will only run on a PowerPC..
Morbius Dragon
-==(UDIC)==-
Since 1992!
monotremata
Posts: 246
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by monotremata »

Ok holy crap a breakthrough (sort of)..

Wandering around google (and googling Make Universal binaries from command line) I found this:
http://developer.apple.com/mac/library/ ... n2137.html

I passed the following command when I ran configure:
env CFLAGS="-O -g -isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch i386 -arch ppc" \ LDFLAGS="-arch i386 -arch ppc" ./configure --disable-dependency-tracking


Configure seemed to run fine, but now SDL stops dead on the version check and configure tells me it cant run the sdl-config program and I might have moved it??
Opening up config.log it appears that I will have to recompile SDL and SDL Mixer to be universal as well. The configure script craps out and said something about the cputype i386 not matching (Im guessing because I have a PowerPC so its trying to run a PPC compiled SDL-config as an i386 CPU?)...

The error states: "(path to ld): warning /sw/lib/libSDLmain.a archive's cputype (18, architecture ppc) does not match cputype (7) for specified -arch flag: i386 (cant load from it)"

And another error right below it exactly the same but dealing with libSDL.dylib instead of libSDLmain.a.

I was going to run it and bypass the SDL test program but when I decided to open config.log up I noticed this is related to the CPU type..


So perhaps I can recompile SDL as a UB library and this will finally work cross platform! Of course youll still run into the dynamic library problem but hey UB might be possible finally...

Does anyone know how I can force Fink to build them this way?? Someplace I can add that same configure string to Fink???
I just added each one (CFLAGS and LDFLAGS) as environment variables in Fink Commander so hopefully this works.. Off to remove my SDL and recompile!
Morbius Dragon
-==(UDIC)==-
Since 1992!
monotremata
Posts: 246
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by monotremata »

Back again.. Compiling SDL with the CFLAGS string doesnt work.
I did it with the source and did a normal by hand compile..

It craps on the configure script with the message:
"lipo: cant figure out the architecture type of: /var/tmp//cc6brG8p.out"

I know lipo is used to combine the two architectures together into one bundle and it SHOULD work but it doesnt. Perhaps we could use the SDL Frameworks which should be UB but theres no way to make exult build using them that I know of. I even tried in XCode a year ago but I just dont know enough about the code to make it build off the Frameworks instead of the regular unix type app.
Morbius Dragon
-==(UDIC)==-
Since 1992!
Dominus
Site Admin
Posts: 5656
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by Dominus »

On OS X 10.6 I found a (kind of) simple way to make a static version of Exult SVN. It's still very hacky but with the way Apple prevents static compiles this was the only working way I found for now.

Steps for building a static Exult without Exult Studio support (for now, I'll look into this as well):
- download and install the frameworks for both SDL and SDL_mixer from their sites, keep the dmg files you downloaded, you will need them again
- the usual steps it takes to build as writtne in README.MacOSX
- after configure edit the makefile and replace the line
SDL_LIBS = -L/opt/local/lib -lSDLmain -lSDL -Wl,-framework,Cocoa -lSDL_mixer
with
SDL_LIBS = -L/opt/local/lib /opt/local/lib/libSDLmain.a -Wl,-framework,SDL -Wl,-framework,OpenGL -Wl,-framework,Cocoa -Wl,-framework,ApplicationServices -Wl,-framework,Carbon -Wl,-framework,AudioToolbox -Wl,-framework,AudioUnit -Wl,-framework,IOKit,-framework,SDL_mixer -Wl

and the line
ZLIB_LIBS = -lz
with
ZLIB_LIBS = /opt/local/lib/libz.a

- run make, then make bundle
- open the exult.app bundle (right click and chose "show package content")
- in exult.app/contents make a new folder called Frameworks
- copy the framework.SDL and framework.SDL_mixer from the framework images you downloaded into that folder (exult.app/contents/Frameworks)

One last step: from the app bundle copy the /data folder (exult.app/contents/resources) and its contents to the folder where the exult.app is (or after first run of exult.app point exult.cfg to where exult can find the data folder). The reason is that Exult doesn't read the data folder from the app bundle (yet, hopefully).

This worked for me and I tested it on another Snow Leopard machine that had no SDL or SDL_mixer stuff installed.
Tomorrow I'll try to run Leopard on VMWare and hopefully I can then make a snapshot for all Intel users (perhaps even for non-Intel, we'll see).
--
Read the documentation and the FAQ! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!
MeddlingMonk
Posts: 237
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by MeddlingMonk »

It's been quite a while since I played with MacPorts, which you're obviously using, but I think I remember that some or many libraries and packages came in PPC or Intel or Universal versions. Fink doesn't. I have to wonder, then, whether MacPorts would make building a universal binary more possible; and of course how much more work would need to go into it because even I can see that way more than just having libraries in different architectures is bound to be needed. Good luck.
Dominus
Site Admin
Posts: 5656
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by Dominus »

yes, sorry, I should have mentioned that I use MacPorts for those that don't see it right away by the /opt/local usage :)
Indeed you can have MacPorts built everything universal by adding +universal when you build a port (e.g. "sudo port install libsdl +universal").
On OS X 10.5 this will result in builts that are both i386 and ppc, on OS X 10.6 this will result in builts that are both 32bit and 64bit. So to build Exult for intel and ppc, I need to do this on 10.5 instead of 10.6... (annoying)

I found a way to avoid using the frameworks after having my thinking set straight by wjp...
You need to build sdl_mixer with the ./configure settings
--disable-music-mp3-shared --disable-music-ogg-shared --disable-music-flac-shared
Then you can static link to sdl, sdl_mixer and sdl_mixer's dependencies. In my case the SDL_LIBS line looks like this:
SDL_LIBS = -L/opt/local/lib /opt/local/lib/libSDLmain.a /opt/local/lib/libSDL.a -Wl,-framework,OpenGL -Wl,-framework,Cocoa -Wl,-framework,ApplicationServices -Wl,-framework,Carbon -Wl,-framework,AudioToolbox -Wl,-framework,AudioUnit -Wl,-framework,IOKit,/opt/local/lib/libSDL_mixer.a,/opt/local/lib/libvorbis.a,/opt/local/lib/libvorbisfile.a,/opt/local/lib/libogg.a,/opt/local/lib/libFLAC.a,/opt/local/lib/libsmpeg.a
--
Read the documentation and the FAQ! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!
MeddlingMonk
Posts: 237
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by MeddlingMonk »

OK, so clearly Fink is no good for building universal binaries of Exult. Too bad about 10.6 not doing PPC, but it makes sense considering 10.6 is Intel only. It had to happen sooner or later.
Dominus
Site Admin
Posts: 5656
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by Dominus »

I think it's the difference between Fink and MacPorts, AFAIK Fink mainly offers precompiled packages but MacPorts does not offer such packages at all, when you "install" in MacPorts you compile. So maybe that's why it is easier to do in MacPorts. I don't know for sure.

To complete the instructions to make a universal static package of Exult:
- I had to use a 10.5 machine (or a VM of 10.5)
- I had to use the framework way I described above since the PPC build of Exult would not accept the universal static lib of smpeg which is needed for SDL_Mixer
- first I compiled Exult normally (with the makefile hacks from above)
- I renamed the resulting exult binary to exultintel
- then I compiled Exult for PPC by using

Code: Select all

export SDK="/Developer/SDKs/MacOSX10.4u.sdk"
export LDFLAGS='-arch ppc'
export CPPFLAGS="-I$SDK/usr/include -arch ppc -F$SDK/System/Library/Frameworks"
export NEXT_ROOT="$SDK"
export MACOSX_DEPLOYMENT_TARGET='10.4'
export CXXFLAGS='-arch ppc -mmacosx-version-min=10.4 -isysroot /Developer/SDKs/MacOSX10.4u.sdk/'
export CFLAGS='-arch ppc -mmacosx-version-min=10.4 -isysroot /Developer/SDKs/MacOSX10.4u.sdk/'
- of course the makefile hack needs to be applied as well (and don't forget to "make clean" :))
- renamed the resulting exult binary to exultppc
- then used lipo to make one big binary out of the two by executing

Code: Select all

lipo -create exultintel exultppc -output exult
- then "make bundle" needs to be executed to make the app-bundle
- into that copy the framework files as described in the earlier post

That's all it took (though figuring this stuff out was a very time consuming)
--
Read the documentation and the FAQ! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!
MeddlingMonk
Posts: 237
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by MeddlingMonk »

Fink offers some precompiled binaries, but if you want the latest versions of things you have to download and compile the source code. And, as far as I know (and I've just double-checked), Fink doesn't have any universal option like MacPorts does and has no plans to offer it (something about their Debian base making that too hard to implement). So I really do think that anyone interested in making universal builds needs to be using MacPorts. That's the first actually compelling reason I've encountered yet for choosing one system over the other.

As for anyone doing what you're doing with a PPC Mac (not forgetting MacPorts and your hack), that person would need -arch intel where you have -arch ppc. I know that's obvious to you and to me, but I thought it needed to be said in case it wasn't for everyone.
Dominus
Site Admin
Posts: 5656
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by Dominus »

So, yes for ease of use Macports is best. The long way to do it would be to compile all the needed stuff twice, once for ppc and once for intel, each under a different prefix. And then compile a static version of exult for each prefix and then lipo it together.
In that regard Macports is a real time saver :)
--
Read the documentation and the FAQ! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!
MeddlingMonk
Posts: 237
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by MeddlingMonk »

On a tangent, it looks like the docs will need updating to include the instructions for all this. ;)
Dominus
Site Admin
Posts: 5656
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by Dominus »

NOOOOOOOOO, not the docs!!!!! :)

Seriously, for now I'd rather write this down here in this thread in ONE clean post, than write it to the Readme.MacOSX.
The reason for this is that right now this is extremely hackish, ok for a forum post but not really for writing it to the docs. For now it is much better suited for the forum since you are (only almost it seems) to build Exult for yourself with instructions in the readme (on the other hand SVN is a much safer place for keeping it live for ages, than a forum...).
Anyways, atm, Colourless is spending time on making Exult NOT depend on SDL_Mixer anymore, when this is done and no more need exists for the SDL and SDL_Mixer frameworks, "configure can probably be bashed into submission" (to quote Colourless) so you get a proper makefile for static building and no need for hacking the makefile anymore.
When this is done, I'll write a proper entry in the docs :)
(and later today I'll make a proper post detailing the steps)
--
Read the documentation and the FAQ! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!
monotremata
Posts: 246
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by monotremata »

In regards to the whole Fink vs. MacPorts thingy..
Honestly the only things I had to install with Fink to compile it were SDL, SDL Mixer, Libtool 1.5, and newer versions of AutoMake and Bison..
I had Fink do it cause I didnt want to mess with the ones that were already there by default. SDL I could get away with either letting Fink do it in /sw or installing it manually wherever it normally goes.

I wonder if by just compiling and updating the tools that come with Mac OS, if you can just do it without MacPorts or Fink at all??
I think both of you guys are an OS or two ahead of me though so perhaps Apple's already updated all of that in the Leopard and Snow Leopard?
Morbius Dragon
-==(UDIC)==-
Since 1992!
Dominus
Site Admin
Posts: 5656
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by Dominus »

Yes, you can probably get by without using Fink or Macports by compiling everything manually. You are missing out on all the knowledge of either ways that helps circumventing problems many packages will have.

And yes, compiling Exult can be done as easily via Fink as with Macports. Also compiling it statically can be done with my above description.
The only possible problem is compiling a static UNIVERSAL version of Exult via Fink. I haven't tried that and have not investigated but Meddling Monk has ;)
--
Read the documentation and the FAQ! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!
monotremata
Posts: 246
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by monotremata »

Ahh yeah Im checking out Macports today. I was gonna replicate my Fink installs through it and Ive noticed that Macports versions are waaaaay ahead of the stuff available through Fink..
But then again in Fink, Im cut off from using newer branches since Im on Tiger. At least Macports appears to keep me more up to date.
It keeps crapping out on me trying to compile some dependencies for Automake and Libtool.. One of the gettext thingys just wont build and I cant really figure out whats going on hehe. Maybe its because the PPC doesnt like certain universal apps like what happened with the smpeg thing.
Morbius Dragon
-==(UDIC)==-
Since 1992!
Dominus
Site Admin
Posts: 5656
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by Dominus »

Hmm, MacPorts is not exactly Tiger compatible as well AFAIK...
So you might be in a problem spot...
--
Read the documentation and the FAQ! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!
monotremata
Posts: 246
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by monotremata »

Hehe I think so! Im at the bottom of the list and looks like Tiger is their 'legacy' supported system..
I have a feeling its causing trouble cause I tried to build everything Universal and I know you mentioned PPC's didnt want to work with the universal smpeg lib.. I went back and tried to just build it normally but I guess since I already started some of the dependecies as universal no matter what. If I uncheck the universal option (Im using Portico as a front end) it errors out and tells me something like I picked the wrong option and wont proceed. Probably have to reinstall Macports or something.

I wonder if I should just bite the bullet and go back to Leopard but then I have a feeling my recording rig is going to suffer hehehe.
Hmm Logic Pro or Ultima? Tough decision!! :D
Morbius Dragon
-==(UDIC)==-
Since 1992!
Dominus
Site Admin
Posts: 5656
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by Dominus »

So, step by step instructions on how to make a static universal Exult app bundle inside a nice dmg (I added the dmg building to the makefile, earlier this evenning - heavily relying on ScummVM's makefile system).

I'm using MacPorts because this gives me univeral libraries for all the stuff we need to build Exult. Fink doesn't and doing it all manually will take hours and your sanity.
I'm also using OS X 10.5 intel, because a.) I don't have a PPC Mac, and b.) 10.6 is not readily useable to make universal binaries in the sense of intel+ppc.
Steps:

- install MacPorts http://www.macports.org/

- install the Frameworks for both SDL http://www.libsdl.org/download-1.2.php (Runtime Libraries) and SDL_mixer http://www.libsdl.org/projects/SDL_mixer/ (Binary)

- in terminal enter

Code: Select all

sudo port install automake +universal
sudo port install libtool +universal
sudo port install libsdl_mixer +universal
(installing libsdl_mixer will automatically install SDL as well)

- open a new textfile and copy/paste the following into it

Code: Select all

--- makefile	2010-03-07 23:42:47.000000000 +0100
+++ makefile-intel	2010-03-07 23:19:31.000000000 +0100
@@ -176,7 +176,7 @@
 EXULT_DATADIR = data
 FGREP = /opt/local/bin/grep -F
 FREETYPE2_INCLUDES = -I/usr/X11/include/freetype2 -I/usr/X11/include
-FREETYPE2_LIBS = -L/usr/X11/lib -lfreetype -lz -Wl,-framework,CoreServices -Wl,-framework,ApplicationServices
+FREETYPE2_LIBS = -L/usr/X11/lib -lfreetype /opt/local/lib/libz.a -Wl,-framework,CoreServices -Wl,-framework,ApplicationServices
 FT2CONFIG = /usr/X11/bin/freetype-config
 GCONFTOOL = 
 GIMPTOOL = 
@@ -227,7 +227,7 @@
 RANLIB = ranlib
 SDL_CFLAGS = -I/opt/local/include/SDL -D_GNU_SOURCE=1 -D_THREAD_SAFE
 SDL_CONFIG = /opt/local/bin/sdl-config
-SDL_LIBS = -L/opt/local/lib -lSDLmain -lSDL -Wl,-framework,Cocoa -lSDL_mixer
+SDL_LIBS = -L/opt/local/lib /opt/local/lib/libSDLmain.a -Wl,-framework,SDL -Wl,-framework,OpenGL -Wl,-framework,Cocoa -Wl,-framework,ApplicationServices -Wl,-framework,Carbon -Wl,-framework,AudioToolbox -Wl,-framework,AudioUnit -Wl,-framework,IOKit,-framework,SDL_mixer -Wl
 SED = /opt/local/bin/gsed
 SET_MAKE = 
 SHELL = /bin/sh
@@ -238,7 +238,7 @@
 WINDOWING_SYSTEM = -DMACOSX
 YACC = bison -y
 YFLAGS = 
-ZLIB_LIBS = -lz
+ZLIB_LIBS = /opt/local/lib/libz.a
 abs_builddir = /Users/hansdampf/code/svn/exult/trunk
 abs_srcdir = /Users/hansdampf/code/svn/exult/trunk
 abs_top_builddir = /Users/hansdampf/code/svn/exult/trunk
@@ -1146,6 +1146,7 @@
 bundle: ${EXE_TARGET}
 	mkdir -p $(bundle_name)/Contents/MacOS
 	mkdir -p $(bundle_name)/Contents/Resources/data/
+	mkdir -p $(bundle_name)/Contents/Frameworks/
 	echo "APPL????" > $(bundle_name)/Contents/PkgInfo
 	$(INSTALL_DATA) Info.plist $(bundle_name)/Contents/
 	$(INSTALL_PROGRAM) $< $(bundle_name)/Contents/MacOS/
-save this textfile as ~/static.diff

- Now enter all these commands

Code: Select all

cd PATH-TO-THE-SOURCE-OF-EXULT
./autogen.sh
./configure --enable-opengl --disable-sdltest --disable-timidity-midi --disable-alsa --disable-fluidsynth --enable-mt32emu
patch < ~/static.diff
make clean
make
cp -p exult exult-intel
export SDK="/Developer/SDKs/MacOSX10.4u.sdk"
export LDFLAGS='-arch ppc'
export CPPFLAGS="-I$SDK/usr/include -arch ppc -F$SDK/System/Library/Frameworks"
export NEXT_ROOT="$SDK"
export MACOSX_DEPLOYMENT_TARGET='10.4'
export CXXFLAGS='-arch ppc -mmacosx-version-min=10.4 -isysroot /Developer/SDKs/MacOSX10.4u.sdk/'
export CFLAGS='-arch ppc -mmacosx-version-min=10.4 -isysroot /Developer/SDKs/MacOSX10.4u.sdk/'
./configure --enable-opengl --disable-sdltest --disable-timidity-midi --disable-alsa --disable-fluidsynth --enable-mt32emu
patch < ~/static.diff
make clean
make
cp -p exult exult-ppc
lipo -create exult-intel exult-ppc -output exult
make bundle
cp -R /Library/Frameworks/SDL.Framework exult.app/Contents/Frameworks/SDL.Framework
cp -R /Library/Frameworks/SDL_mixer.framework exult.app/Contents/Frameworks/SDL_mixer.framework
make osxdmg

Edit: I forgot that you need to "sudo port install ... +universal", fixed that
--
Read the documentation and the FAQ! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!
monotremata
Posts: 246
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by monotremata »

Ok so if I were to attempt this on my PPC machine...

Since the first one I compiled would be the PPC version I just name the first one exult-ppc.

Then when I get to the part where you compiled the PPC version I would just substitute '-arch i386' everywhere you used '-arch ppc' and it will build me the intel version right??

Still debating on whether to reinstall Leopard or not.. If I cant get far on this maybe Ill do it finally..
Morbius Dragon
-==(UDIC)==-
Since 1992!
Dominus
Site Admin
Posts: 5656
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by Dominus »

Then when I get to the part where you compiled the PPC version I would just substitute '-arch i386' everywhere you used '-arch ppc' and it will build me the intel version right??
I'd guess so, but I can't say for sure :)
Make sure that the SDK matches and is availlable, I'd say, other than that I really have no clue.
Let me know how you are faring.
--
Read the documentation and the FAQ! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!
monotremata
Posts: 246
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by monotremata »

Actually not getting anywhere with the static.diff..
Keeps spitting out this

tiamat:~/dev/exult/exult/trunk mothra$ patch < /Users/mothra/static.diff
patching file makefile
Hunk #1 FAILED at 176.
Hunk #2 FAILED at 227.
Hunk #3 succeeded at 198 (offset -40 lines).
patch unexpectedly ends in middle of line
Hunk #4 succeeded at 1044 with fuzz 1 (offset -102 lines).
2 out of 4 hunks FAILED -- saving rejects to file makefile.rej


took me a bit to figure out i had to save it as a unicode-8 file before it would work hehe.
Cant really tell why its failing. I changed the paths obviously to reflect my system and its all correct...
Could it be something messed up with the encoding of the file maybe?
Morbius Dragon
-==(UDIC)==-
Since 1992!
Dominus
Site Admin
Posts: 5656
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by Dominus »

Could be, I don't know. But this patch can easily be done manually, just look at what needs to be changed and added to the makefile
--
Read the documentation and the FAQ! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!
monotremata
Posts: 246
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by monotremata »

Yeah tried copy/pasting it from PC into Notepad then copying over, and still fails with the same message.
I think its just not formatting and line breaking properly and I probably screwed it up too much playing with it hehehe.

So I would just go through the makefile and look for the particular variables you changed with the patch and just enter them by hand right??
Morbius Dragon
-==(UDIC)==-
Since 1992!
Dominus
Site Admin
Posts: 5656
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by Dominus »

yup, enter them by hand
--
Read the documentation and the FAQ! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!
monotremata
Posts: 246
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by monotremata »

AAAARGH!! Damn so close!! Got it all entered in by hand!
Make started flying and working away!

Now the damn thing all of a sudden cant find my SDL-mixer!!!
Maybe I screwed up and made a typo in there I dont know..
Guess its a good thing I got laid off and have nothing to do haha!
Back to the drawing board!
Morbius Dragon
-==(UDIC)==-
Since 1992!
monotremata
Posts: 246
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by monotremata »

Errr I meant ./configure cant find it hehehe..

Hmm same deal, I had it installed both via Fink and just installed it manually in the /usr/local dirs.. It finds SDL and does sdl-config just fine but cant find the mixer..
I remember running into this before gotta go back and look over this whole thread..
Morbius Dragon
-==(UDIC)==-
Since 1992!
monotremata
Posts: 246
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by monotremata »

Ok next round..
Removed all manually installed SDL's and reinstalled via Fink.
Same deal, cant find SDL-mixer..

So i closed my shell, opened a new one and re-ran autogen.sh and configure.
Now it works..
Here was my procedure, I just started at the PPC part of yours.
Did all the exports, even though Im not sure theyre necessary on my end.
Did autogen.sh, configure with all options, and this is when it would quit finding the SDL-mixer.

When I reopened my shell, I just ran autogen.sh and configure and it worked.
Something about the variables exported thats preventing it from finding SDL-mixer..

So just finished configure, edited the Makefile again.. Make is doing its thing..

Sometimes I wonder if its just Tiger thats being the pain in my ass about this. My buddy lost his Leopard disc that came with his macbook so hes got mine at the moment.. Cant do a test install of Leopard on a spare drive until later tonight..
Morbius Dragon
-==(UDIC)==-
Since 1992!
Dominus
Site Admin
Posts: 5656
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by Dominus »

If you are using Fink, why are you messing with the location of it? If you keep messing with the defaults you will run into more and more problems... And why fink anyway, I thought you wanted to make static universal binary and fink doesn't provide universal stuff?
--
Read the documentation and the FAQ! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!
monotremata
Posts: 246
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by monotremata »

Ah Im just attempting the static part first.. I dont think I will be able to make a UB until I get my Leopard disc back.

Macports wont budge on some gettext component when I do a universal build of automake and libtool.

As far as changing locations, the only thing I was messing with was my SDL install.. I tried it once manually at /usr/local, and then uninstalled and reinstalled using Fink in the /sw location.. My paths are set so either one works but since Fink is first in line, it uses those first..
Either way pretty sure it was one of the EXPORT lines that stopped it from seeing SDL-mixer no matter where it was. It would run sdl-config and find SDL just fine in either location, but no mixer..
Maybe I should try the mixerless branch thats up on SVN and open a whole new can of worms!! ;)

Crap the make just stopped again on my Mac..
Im on my PC laptop right now while the Mac is building so Ill go make another post from my Mac with where its stopping at... Seems to be crapping out doing something with the SDL_mixer framework..
I wonder if this is where Tiger not being fully supported by newer builds of SDL is coming into play..

The SDLMame guys were surprised I got the latest SDLMame to build on my system with the latest builds of SDL..

Exult still builds fine by itself, its just something to do with the Frameworks it doesnt like..
Morbius Dragon
-==(UDIC)==-
Since 1992!
Dominus
Site Admin
Posts: 5656
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by Dominus »

if ./configure doesn't find SDL_mixer and you are still going ahead with building Exult with the modified makefile, you need to modify other makefiles in subfolders in the source as well, I guess.
Have fun!
--
Read the documentation and the FAQ! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!
monotremata
Posts: 246
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by monotremata »

Ok on the Mac now..

Heres a summary of the error message it stopped on:
/usr/libexec/gcc/powerpc-apple-darwin8/4.0.1/ld: warning can't open dynamic library: @loader_path/Frameworks/mikmod.framework/Versions/A/mikmod referenced from: /Library/Frameworks/SDL_mixer.framework/SDL_mixer (checking for undefined symbols may be affected) (No such file or directory, errno = 2)
/usr/libexec/gcc/powerpc-apple-darwin8/4.0.1/ld: warning can't open dynamic library: @loader_path/Frameworks/smpeg.framework/Versions/A/smpeg referenced from: /Library/Frameworks/SDL_mixer.framework/SDL_mixer (checking for undefined symbols may be affected) (No such file or directory, errno = 2)
/usr/libexec/gcc/powerpc-apple-darwin8/4.0.1/ld: Undefined symbols:
_MikMod_Exit referenced from @executable_path/../Frameworks/SDL_mixer.framework/Versions/A/SDL_mixer expected to be defined in @loader_path/Frameworks/mikmod.framework/Versions/A/mikmod

After this is gives me a whole slew of the same 'referenced from @executable_path/expected to be defined in' errors startnig at _MikMod_Exit_ above and all the way to this at the very end:


_md_volume referenced from @executable_path/../Frameworks/SDL_mixer.framework/Versions/A/SDL_mixer expected to be defined in @loader_path/Frameworks/mikmod.framework/Versions/A/mikmod
collect2: ld returned 1 exit status
make[2]: *** [exult] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

Looks like all the _Player_, _SMPEG_, _VC_Writebytes, etc all stop here with the same 'refrenced from' message...


Its got like 2 pages of those so I just put the end up.
Morbius Dragon
-==(UDIC)==-
Since 1992!
monotremata
Posts: 246
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by monotremata »

Ok found it here:
http://playcontrol.net/ewing/jibberjabb ... chang.html

Apparently its a nice bug in XCode 2.5 that does this. 2.4 and 3.0 and onward all work fine!

Damn you Tiger!!!! :D
Im assuming I can just delete the whole Developer directory and reinstall..
Here goes, man this is alot of work haha!
Morbius Dragon
-==(UDIC)==-
Since 1992!
monotremata
Posts: 246
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by monotremata »

I really wish we could edit our posts!!
Heres the fix:

- Add the following to the Other Linker Flags build setting:
-dylib_file
@loader_path/../../../DevToolsCore.framework/Versions/A/DevToolsCore:$
(DEVELOPER_LIBRARY_DIR)/PrivateFrameworks/DevToolsCore.framework/Versions/A/DevToolsCore

-dylib_file
@loader_path/../../../DevToolsSupport.framework/Versions/A/DevToolsSupport:$
(DEVELOPER_LIBRARY_DIR)/PrivateFrameworks/DevToolsSupport.framework/Versions/A/DevToolsSupport


But now pardon my compiling ignorance.. Where is the Other Linker Flags build setting? Would that be one of those Export lines above??
Hopefully this will work otherwise I gotta download XCode 2.4 all over again or reinstall my XCode 2.2.1 thats on my 10.4.6 dvd hehehe...
Morbius Dragon
-==(UDIC)==-
Since 1992!
Dominus
Site Admin
Posts: 5656
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by Dominus »

Well, you could just use the semi-official universal static snapshot on our download page. If you are using it just on this mac, you don't really need a static build anyway...
--
Read the documentation and the FAQ! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!
monotremata
Posts: 246
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by monotremata »

Yeah I think at this point until I get my Leopard disc back, Im giving up and sticking with yours heh!
Went back down to XCode 2.2.1 and it links proper now however theres still something stopping me here:

/usr/bin/ld: /Library/Frameworks/SDL.framework/SDL load command 5 unknown cmd field
/usr/bin/ld: /Library/Frameworks/SDL_mixer.framework/SDL_mixer load command 4 unknown cmd field
/usr/bin/ld: warning empty table of contents: audio/midi_drivers/timidity/.libs/libtimidity.a (can't load from it)
collect2: ld returned 1 exit status

Looks like a problem with timidity even though I disabled it when I ran configure.

Oh well I think Tiger is probably just not up to the task anymore.
Morbius Dragon
-==(UDIC)==-
Since 1992!
Dominus
Site Admin
Posts: 5656
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by Dominus »

static compilation of Exult got enormously easier now. Since Colourless eliminated the dependency on SDL_Mixer, Exult now compiles against ogg/vorbis directly.
Marzo added two new configure options, namely
--enable-static-libraries
--with-macosx-static-lib-path=path to libs

Both are needed and of course you need to give the path to your libs which can be either the MacPorts or Fink ones (for example for me on MacPorts this looks like this:
--enable-static-libraries --with-macosx-static-lib-path=/opt/local/lib)
For now you need to disable fluidsynth and timidity on configure, I'll see about adding their static libs (in the case of timidity I think it pulls in static libs, need to check) as well.
--
Read the documentation and the FAQ! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!
monotremata
Posts: 246
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by monotremata »

Radness!!

But my dumbass already ran into a problem hehehe..

Configure works great with the new options, and disabling fluidsynth and timidity and enabling mt32emu...
But make died while putting together the SDL stuff and I get a message that

In file included from ./../audio/Audio.h:25,
from intrinsics.cc:27:
./../audio/Midi.h:25:26: error: vorbis/codec.h: No such file or directory..

This vorbis folder should be right there in /audio shouldnt it??
i grabbed the latest SVN and then did a make clean before I re-did autogen.sh/configure/etc...

Dont tell me I missed something I shouldve installed with Fink maybe??


Either way I still got your latest snapshot.. Just wanted to give this a go myself and see if it could finally be done hehe.. Still cant build a UB either, keep forgetting to go get my Leopard disc back..
Morbius Dragon
-==(UDIC)==-
Since 1992!
Dominus
Site Admin
Posts: 5656
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by Dominus »

I ran into that as well.
A simple

export CFLAGS=-I/opt/local/include
export CXXFLAGS=$CFLAGS

helped (the cflags IS normally set, just wanted to make sure). Just be careful to include other things in those settings if you normally have them.

I wondered myself why the CXXFLAGS needs to be set, when this worked perfectly fine with the SDL_Mixer. On my 10.6.3 I didn't notice that at first because I have that set in my .profile. On my 10.5 build machine I don't have that set and ran into this problem.

Enjoy :)
--
Read the documentation and the FAQ! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!
monotremata
Posts: 246
Joined: Thu May 14, 2020 1:34 pm

Re: Anyone offering precompiled binaries of latest (or recen

Post by monotremata »

Ok run into yet another snag.. Is my Mac just going senile after all these years or something??


Ok so Ive now got your CFLAGS export in my .profile so no need to worry about that.. Since I couldnt get Macports all done properly, Im still using my Fink directory so mines
export CFLAGS=-I/sw/include

Also using this for ./configure:

./configure --enable-static-libraries --with-macosx-static-lib-path=/sw/lib --enable-opengl --disable-sdltest --disable-timidity-midi --disable-alsa --disable-fluidsynth --enable-mt32emu


It starts the make process and eventually ends with this:

/bin/sh ../libtool --tag=CXX --mode=link g++ -I/sw/include -o ipack ipack.o ../files/libu7file.la ../shapes/libshapes.la ../imagewin/libimagewin.la -lpng -lz -framework CoreFoundation -framework AudioUnit -framework CoreMIDI
g++ -I/sw/include -o ipack ipack.o -framework CoreFoundation -framework AudioUnit -framework CoreMIDI -Wl,-bind_at_load ../files/.libs/libu7file.a ../shapes/.libs/libshapes.a ../imagewin/.libs/libimagewin.a -lpng -lz
/usr/bin/ld: can't locate file for: -lpng
collect2: ld returned 1 exit status
make[2]: *** [ipack] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2
tiamat:~/dev/exult mothra$


It happened monday actually right after you told me to do the CFLAGS export stuff.. When I checked this Monday when it first happened, I noticed there was no .libs folder being created at all inside /imagewin.. This led me to think it was libpng so I updated in Fink from the old 1.2 release to the newest 1.4 build with the same results.. Just decided to try again this morning, and noticed that now at least I have the .libs folder and in fact libimagewin.a IS in there so I cant really figure out why or how ld cant locate the file (unless of course the -lpng command references something elsewhere thats missing)...



Also in regards to Monday's Snapshot..
Mines crashing right away.. Heres the exult.crash.log's entry:

Host Name: Tiamat
Date/Time: 2010-04-21 10:11:49.430 -0700
OS Version: 10.4.11 (Build 8S165)
Report Version: 4

Command: exult
Path: /Applications/Exult.app/Contents/MacOS/exult
Parent: WindowServer [98]

Version: 1.4.05svn (1.4.05svn)

PID: 8600
Thread: Unknown

Link (dyld) error:

Symbol not found: _NSDefaultRunLoopMode
Referenced from: /Applications/Exult.app/Contents/MacOS/exult
Expected in: /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation


I had to go back to your last snapshot from March to get it to run again..
Morbius Dragon
-==(UDIC)==-
Since 1992!
Locked