Skip to content
This repository has been archived by the owner on May 19, 2022. It is now read-only.

Does not run on older versions of OS X #44

Closed
Yirba opened this issue Mar 19, 2014 · 22 comments
Closed

Does not run on older versions of OS X #44

Yirba opened this issue Mar 19, 2014 · 22 comments

Comments

@Yirba
Copy link

Yirba commented Mar 19, 2014

I tried running Narcissu on my Mac, which runs OS X 10.7 (yeah, I could upgrade to Mavericks, but I never got round to it 😆).
Anyway, this results in "Illegal instruction: 4" being outputted to stderr before the program quits.
After a bit of research, it appears that this means the binary was compiled not to support OS X older than a certain version (set by -mmacosx-version-min).

So I would suggest seeing if PONScripter will still function okay with -mmacosx-version-min set to a lower version. Otherwise we'd have to drop support for older versions of OS X if these optimisations are necessary.

Update 0: It seems over 20% of Mac users use OS X 10.7 or older, so it might be worth attempting to allow at least some of those to run Narcissu.

Update 1: SDL2 only supports 10.5+, so 10.4 is definitely impossible. And as a guide, the latest build of ONScripter-EN which Higanbana uses only supports 10.6+.

@SystemPatch
Copy link

Steam for Mac has a minimum requirement of 10.5.8/10.6.3 Intel, so that should be the best target to aim for when building.

Ponscriptor itself is lightweight enough to play the original release on my 10.4 G3 fine, but the SDL additions might cause a performance hit on older Intel machines, if it will work at all, that is.

@DanielOaks
Copy link
Contributor

Ponscripter seems to compile with it set to 10.5. I'll ask them to try and build with it for the next Steam update.

@thebagleboy
Copy link

Same problem, older system.
10.6.8

@DanielOaks
Copy link
Contributor

A version that works for OSX 10.5+ should be live now. Let us know how it
works and whether it fixes this issue. Thanks for bringing it to our
attention!

On Thursday, March 20, 2014, thebagleboy notifications@github.com wrote:

Same problem, older system.
10.6.8

Reply to this email directly or view it on GitHubhttps://github.com//issues/44#issuecomment-38134572
.

@dobacco dobacco added verify fixed and removed bug labels Mar 20, 2014
@Yirba
Copy link
Author

Yirba commented Mar 20, 2014

I'm still getting an "Illegal instruction: 4" error… Not sure what a solution could be. My first thought is that perhaps certain dependencies are still being compiled without support for older versions of OS X, but that's just a wild guess.

I wonder if setting that flag even affected the binary at all…

I'd try compiling the code on my own computer to see if it works, but I'm still having issues doing so (can't figure out how to set the environment variable CC).

@dobacco
Copy link

dobacco commented Mar 20, 2014

I built latest binaries with:

CC="clang" CXX="clang++" CFLAGS="-mmacosx-version-min=10.5" CXXFLAGS="-mmacosx-version-min=10.5" SDLOTHERCONFIG="--enable-video-opengl --enable-video-opengles" ./configure --unsupported-compiler --with-internal-libs
CC="clang" CXX="clang++" CFLAGS="-mmacosx-version-min=10.5" CXXFLAGS="-mmacosx-version-min=10.5" SDLOTHERCONFIG="--enable-video-opengl --enable-video-opengles" make

Perhaps the cflags are being ignored in one of the internal sdl2 libs....

@Yirba can you try compiling pons on your own system and see if it runs properly?

@Yirba
Copy link
Author

Yirba commented Mar 20, 2014

Ah, thanks. I got it to compile, and it works! So it is possible to get it running on 10.7.

I uploaded the binary here, if anyone wants to test/examine it: http://gdn0.com/ponscr

@DanielOaks
Copy link
Contributor

Hmm, I suspect it's one of the internal libs ignoring CFLAGS as well. Probably better to stick them directly in CC ad CXX.

I'm able to compile with something along these lines, too, so we might try that:

CC="clang -mmacosx-version-min=10.5" CXX="clang++ -mmacosx-version-min=10.5" SDLOTHERCONFIG="--enable-video-opengl --enable-video-opengles" ./configure --unsupported-compiler --with-internal-libs

CC="clang -mmacosx-version-min=10.5" CXX="clang++ -mmacosx-version-min=10.5" SDLOTHERCONFIG="--enable-video-opengl --enable-video-opengles" make

@dobacco
Copy link

dobacco commented Mar 26, 2014

https://github.com/sekaiproject/ponscripter-fork/releases/tag/v0.0.4

New build, also includes fixes for older OSX versions, if it can be tested that'll be great.

@Yirba
Copy link
Author

Yirba commented Mar 26, 2014

Consistently getting Segmentation fault: 11 errors every time I run the binary on OS X 10.7.

@dobacco
Copy link

dobacco commented Mar 26, 2014

I uploaded a new binary called narcissu-osx-nosteam can you see if that segfaults or not.

@Yirba
Copy link
Author

Yirba commented Mar 26, 2014

It runs, and the Steam overlay works fine. Great!

@dobacco
Copy link

dobacco commented Mar 26, 2014

Great, but not a solution though, that's missing the OSX wrapper for Steam...

Added 2 more binaries, narcissu-osx10.6 and narcissu-osx10.6-nosteam setting OSX version to 10.6 instead of 10.5, can you see if it segfaults or not.

@Yirba
Copy link
Author

Yirba commented Mar 26, 2014

The downloads seem broken… :-/ Either GitHub or Amazon S3's fault.

@dobacco
Copy link

dobacco commented Mar 26, 2014

Hrm, maybe it didn't like the rename after upload. I've uploaded them again without renaming.

@Yirba
Copy link
Author

Yirba commented Mar 26, 2014

Both of them run. Looks like support for 10.5 might have to be dropped, then…
(And seems it's morning. Guess that's a sign for me to go to bed… >_<)

@euank
Copy link
Contributor

euank commented Mar 26, 2014

It would be nice if someone with 10.5 could try to build it; I suspect it would build fine and work for 10.5+ when built with it.

@Yirba
Copy link
Author

Yirba commented Mar 26, 2014

Having to rely on someone with 10.5 isn't exactly ideal… Might be worth testing a binary built using 10.5, though.

@DanielOaks
Copy link
Contributor

Having someone on 10.5 build + test to make sure it compiles for 10.5 could be good, so we could see whether it's just options we're setting incorrectly or something's actually not compatible.

@dobacco
Copy link

dobacco commented Mar 27, 2014

https://github.com/sekaiproject/ponscripter-fork/releases/tag/v0.0.5

New binaries in both 10.5 and 10.6 flavors...not sure if it'll segfault again though.

I don't think its a necessary requirement for 10.5 to work to be honest.

@Yirba
Copy link
Author

Yirba commented Mar 27, 2014

Once again, they all work for me, except 10.5 with the Steam wrapper.
The issue of the process using up more CPU when it's running in the background is still present, however. When the window is visible, CPU averages around 2%. When hidden behind another window, it jumps up to about 41%.

@dobacco
Copy link

dobacco commented Apr 3, 2014

Latest version that was released on to Steam was built with 10.6 flags, I think skipping 10.5 will be fine.

@dobacco dobacco closed this as completed Apr 3, 2014
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

6 participants