0.8.0 MacOS X build requires 10.3.9 or newer

Ask for help with ScummVM problems

Moderator: ScummVM Team

Post Reply
ZPedro
Posts: 18
Joined: Tue Nov 01, 2005 12:56 pm
Location: France

0.8.0 MacOS X build requires 10.3.9 or newer

Post by ZPedro »

I'm using OSX 10.2 (Jaguar) and I've downloaded the ScummVM 0.8.0 OSX build, only to see it doesn't launch (in fact, it breakpoints at such an early stage that I don't even get to see any error message), behavior I have learned to be almost always symptomatic of the software requiring a more advanced version of system software (heck, when you run a system that's several major revisions behind the latest, you get to know this kind of thing). The crash log tells me it breakpointed while dyld (OSX's loader/dynamic linker) was resolving symbols. Not good. By launching ScummVM with the command-line I get to see dyld's error message:
"dyld: ./scummvm can't open library: /usr/lib/libstdc++.6.dylib (No such file or directory, errno = 2)
Trace/BPT trap"

You see, on the Mac and even on OSX until recently (I really don't know for other platforms), the C++ standard library was statically linked into the executable. With OSX 10.4 (Tiger) and XCode 2.0 Apple introduced a dynamically linked version of libstdc++, and Apple's gcc 4.0 links against it. Apple only backported the dynamic libstdc++ down to 10.3.9, which means that programs dynamically linked against it can only run on 10.3.9 and newer. Therefore on Jaguar (or on Panther for people who didn't bother updating to x.x.9 yet) the program can't run, since the lib is missing.

I don't program in C++, I prefer C and assembly (PowerPC as well as 68k, x86, etc...), so though I knew about the issue I didn't know what one needs to do to statically link anyway against libstdc++.a. I thought that a compiler option would be enough. Unfortunately, it looks like it is necessary to revert to gcc 3.3 to statically link libstdc++ and support OSX prior to 10.3.9. I hope you're not using gcc 4.0 specific features...

I could recompile the stuff myself, but if you could be so kind as to recompile the OSX build with gcc 3.3, it would be better, especially as I'm probably not the only one with 10.2 (and most others are not programmers)... Not to mention that even people on 10.3.<9 have no way in (non-programmer's) hell to know that by running software update they could fix the situation, unless dyld user-level (i.e. non-command-line) error reporting really improved between 10.3 and 10.2, and even then I'm not even sure it would be really helpful to them.
fingolfin
Retired
Posts: 1452
Joined: Wed Sep 21, 2005 4:12 pm

Post by fingolfin »

No need to use so many words to describe a simple problem :-).


Thanks for bringing the issue to our attention. I am fully aware of the technical background of the problem and will consider making a new binary. The main problem there is the effort I need to put into it, that's all. (Custom compile ScummVM, custom compile SDL, etc.). Maybe I can get access to a 10.3 machine with old dev tools to perform the work. We'll see, I am working on it.
ZPedro
Posts: 18
Joined: Tue Nov 01, 2005 12:56 pm
Location: France

Post by ZPedro »

fingolfin wrote:No need to use so many words to describe a simple problem :-).


Thanks for bringing the issue to our attention. I am fully aware of the technical background of the problem and will consider making a new binary. The main problem there is the effort I need to put into it, that's all. (Custom compile ScummVM, custom compile SDL, etc.). Maybe I can get access to a 10.3 machine with old dev tools to perform the work. We'll see, I am working on it.
Perhaps I should have said "ScummVM 080 doesnt work whts going on?!!?!" instead :wink: . Jokes aside, I've already seen open-source projects where the programmers have less OSX knowledge, and when they begin compiling their binaries with gcc 4.0 they are not even remotely aware of the problem (especially when other people compile the binaries), so I detailed as much as possible. But this is obviously not the case here. I understand that as a consequence you'll have to take better care of the OSX build. There is not outstanding bug in 0.7.1 that's fixed in 0.8.0 that's bothering me, so please take your time, this is in no way an urgent problem (I'm mainly expecting the GUI update and savegames screenshots).
ZPedro
Posts: 18
Joined: Tue Nov 01, 2005 12:56 pm
Location: France

Post by ZPedro »

Grabbed 0.8.0a build. Installed. Run. Works perfect (as far as I could see of course, and still only with my demos... I have not found this yet). Thanks!
fingolfin
Retired
Posts: 1452
Joined: Wed Sep 21, 2005 4:12 pm

Post by fingolfin »

Thanks for the feedback, ZPedro, it's very much appreciated!
Post Reply