intfiction.org

The Interactive Fiction Community Forum
It is currently Tue Sep 26, 2017 9:46 am

All times are UTC - 6 hours [ DST ]




Post new topic Reply to topic  [ 42 posts ]  Go to page 1, 2, 3, 4, 5  Next
Author Message
PostPosted: Mon Oct 10, 2016 12:05 pm 
Offline

Joined: Sat Jan 23, 2010 4:56 pm
Posts: 5451
This weekend, kerrymg contributed a patch for Gargoyle that fixes the "no keyboard input" bug on MacOS 10.12 (Sierra).

This hasn't been released yet, but I did a build just to have a build out there:

http://eblong.com/zarf/tmp/gargoyle-201 ... ch.mac.dmg

I haven't tested this beyond the machine I built it on, so you'll have to tell me whether it works (and with what backwards compatibility).


Top
 Profile Send private message  
 
PostPosted: Mon Oct 10, 2016 12:29 pm 
Offline
User avatar

Joined: Fri Jul 11, 2014 12:50 pm
Posts: 79
zarf wrote:
(and with what backwards compatibility).
No backwards compatibility. On my El Capitan mac, it says I need 10.12 minimum.


Top
 Profile Send private message  
 
PostPosted: Mon Oct 10, 2016 12:51 pm 
Offline

Joined: Sat Jan 23, 2010 4:56 pm
Posts: 5451
Okay, good to know.

(This is just a placeholder until there's a real release by somebody who understands the build system. I did a bunch of hackery on the build system to make it run. That's orthogonal to the keyboard-input patch.)


Top
 Profile Send private message  
 
PostPosted: Tue Oct 11, 2016 12:07 am 
Offline

Joined: Mon Oct 10, 2016 11:54 pm
Posts: 11
Hello, I'm the person who contributed the macOS Gargoyle patch.

For Gargoyle to run on older macOS versions the executables need to be compiled targeting the appropriate OS X version (you don't need the old SDK). Pass the
Code:
-mmacosx-version-min=10.x
option to every compiler and linker command line. I've been targeting 10.9 without issue. Anything older will run into problems because of Apple's switching of the default C++ standard library.

The difficulty is the support libraries. The Homebrew packages (bottles) target various OS X releases. Ideally they need to be built with the same min version as Gargoyle itself. I haven't bothered figuring out how to do this.


Top
 Profile Send private message  
 
PostPosted: Tue Oct 11, 2016 10:20 am 
Offline
User avatar

Joined: Fri Jan 07, 2011 1:19 pm
Posts: 190
Location: USA
zarf wrote:
This weekend, kerrymg contributed a patch for Gargoyle that fixes the "no keyboard input" bug on MacOS 10.12 (Sierra).

This hasn't been released yet, but I did a build just to have a build out there:

http://eblong.com/zarf/tmp/gargoyle-201 ... ch.mac.dmg

I haven't tested this beyond the machine I built it on, so you'll have to tell me whether it works (and with what backwards compatibility).



It's not working for me. I've thrown the error report in the spoiler tags below. Thanks.

Spoiler: show
Process: Gargoyle [1055]
Path: /Users/USER/Desktop/Gargoyle.app/Contents/MacOS/Gargoyle
Identifier: com.googlecode.garglk.Launcher
Version: 2011.1
Code Type: X86-64 (Native)
Parent Process: ??? [1]
Responsible: Gargoyle [1055]
User ID: 501

Date/Time: 2016-10-11 11:18:12.785 -0400
OS Version: Mac OS X 10.12 (16A323)
Report Version: 12
Anonymous UUID: AEC430F1-D218-5687-04FA-CF80E5FB6D9D


Time Awake Since Boot: 4500 seconds

System Integrity Protection: disabled

Crashed Thread: 0

Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note: EXC_CORPSE_NOTIFY

Termination Reason: DYLD, [0x1] Library missing

Application Specific Information:
dyld: launch, loading dependent libraries

Dyld Error Message:
Library not loaded: /usr/local/opt/sdl/lib/libSDL-1.2.0.dylib
Referenced from: /Users/USER/Desktop/Gargoyle.app/Contents/MacOS/Gargoyle
Reason: image not found

Binary Images:
0x101f86000 - 0x101f8cfff +com.googlecode.garglk.Launcher (2011.1) <FDA635BC-23C3-3BEC-9325-C559CE34C4BD> /Users/USER/Desktop/Gargoyle.app/Contents/MacOS/Gargoyle
0x101f96000 - 0x101fe2ffb +libgarglk.dylib (0) <EBF000B2-F4DF-3E91-8E94-78E10D61CB20> /Users/USER/Desktop/Gargoyle.app/Contents/Frameworks/libgarglk.dylib
0x1020bc000 - 0x10212fff7 +libfreetype.6.dylib (0) <C43F73CC-30DC-3D6F-9EEA-209E072DB2D3> /usr/local/opt/freetype/lib/libfreetype.6.dylib
0x102a8c000 - 0x102ac91c7 dyld (421.1) <A525EAEA-AF86-30C2-B360-3D093B4F0828> /usr/lib/dyld
0x7fff97c7c000 - 0x7fff97c7cfff com.apple.Cocoa (6.11 - 22) <5EEB0A26-F1C2-3D57-8441-52C0B80C2A6A> /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa
0x7fff9d04a000 - 0x7fff9d058fff com.apple.opengl (12.4.2 - 12.4.2) <06F5BF0B-BD03-361D-9D7B-626517E4F761> /System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL

Model: MacBookPro11,2, BootROM MBP112.0138.B17, 4 processors, Intel Core i7, 2 GHz, 8 GB, SMC 2.18f15
Graphics: Intel Iris Pro, Intel Iris Pro, Built-In
Memory Module: BANK 0/DIMM0, 4 GB, DDR3, 1600 MHz, 0x80AD, 0x484D54343531533641465238412D50422020
Memory Module: BANK 1/DIMM0, 4 GB, DDR3, 1600 MHz, 0x80AD, 0x484D54343531533641465238412D50422020
AirPort: spairport_wireless_card_type_airport_extreme (0x14E4, 0x134), Broadcom BCM43xx 1.0 (7.21.171.10.1a16)
Bluetooth: Version 5.0.0f18, 3 services, 27 devices, 1 incoming serial ports
Network Service: Wi-Fi, AirPort, en0
PCI Card: Apple 57761-B0, Ethernet Controller, Thunderbolt@191,0,0
PCI Card: pci11c1,5901, IEEE 1394 Open HCI, Thunderbolt@190,0,0
PCI Card: pci12d8,400e, USB Open Host Controller, Thunderbolt@194,0,0
PCI Card: pci12d8,400e, USB Open Host Controller, Thunderbolt@194,0,1
PCI Card: pci12d8,400f, USB Enhanced Host Controller, Thunderbolt@194,0,2
Serial ATA Device: APPLE SSD SM0256F, 251 GB
USB Device: USB 2.0 Bus
USB Device: Hub
USB Device: Wireless Mouse
USB Device: FaceTime HD Camera (Display)
USB Device: Apple Thunderbolt Display
USB Device: Display Audio
USB Device: USB 3.0 Bus
USB Device: Apple Internal Keyboard / Trackpad
USB Device: BRCM20702 Hub
USB Device: Bluetooth USB Host Controller
USB Device: Keyboard Hub
USB Device: Apple Keyboard
Thunderbolt Bus: MacBook Pro, Apple Inc., 17.1
Thunderbolt Device: Thunderbolt Display, Apple Inc., 1, 26.2


Top
 Profile Send private message  
 
PostPosted: Tue Oct 11, 2016 11:12 am 
Offline

Joined: Sat Jan 23, 2010 4:56 pm
Posts: 5451
Quote:
For Gargoyle to run on older macOS versions the executables need to be compiled targeting the appropriate OS X version (you don't need the old SDK).


Thanks. I have added "-mmacosx-version-min=10.9" and redone the build. As you say, the included libraries may undermine this.

Quote:
Dyld Error Message:
Library not loaded: /usr/local/opt/sdl/lib/libSDL-1.2.0.dylib


Hm. I've added lines to the build script which may fix this. Or not! Or it may just trip over a different library!

I see the garglk source includes a directory full of static libs to link, but these are Windows DLLs so not exactly helpful here. :)

Maybe I should just be compiling with the STATIC option. But let's try this first.

http://eblong.com/zarf/tmp/gargoyle-201 ... ch.mac.dmg (updated)


Top
 Profile Send private message  
 
PostPosted: Tue Oct 11, 2016 11:17 am 
Offline

Joined: Mon Oct 10, 2016 11:54 pm
Posts: 11
Jizaboz wrote:
It's not working for me. I've thrown the error report in the spoiler tags below. Thanks.

From your crash report it seems you're missing SDL library:
Quote:
Dyld Error Message:
Library not loaded: /usr/local/opt/sdl/lib/libSDL-1.2.0.dylib
Referenced from: /Users/USER/Desktop/Gargoyle.app/Contents/MacOS/Gargoyle
Reason: image not found

However, it looks like you are using Homebrew so, for the time being, you can install SDL and SDL_mixer libraries. You may need other libraries too. Eventually, all these libraries will be packaged in the Gargoyle bundle (unfortunately, it's not as simple as just copying them into the bundle directory).

Good Luck!


Top
 Profile Send private message  
 
PostPosted: Tue Oct 11, 2016 11:19 am 
Offline

Joined: Tue Dec 25, 2007 10:06 am
Posts: 1519
I'm getting "Library not loaded: /usr/local/opt/sdl_mixer/lib/libSDL_mixer-1.2.0.dylib" now.

_________________
BlogTextureVorple


Top
 Profile Send private message  
 
PostPosted: Tue Oct 11, 2016 11:26 am 
Offline

Joined: Mon Oct 10, 2016 11:54 pm
Posts: 11
zarf wrote:
Hm. I've added lines to the build script which may fix this. Or not! Or it may just trip over a different library!

I see the garglk source includes a directory full of static libs to link, but these are Windows DLLs so not exactly helpful here. :)

Maybe I should just be compiling with the STATIC option. But let's try this first.

http://eblong.com/zarf/tmp/gargoyle-201 ... ch.mac.dmg (updated)


The libraries need to be copied into Gargoyle.app/Contents/Frameworks, then library references from other libraries and executables have to be fixed. Take a look at the beginning of the 'gargoyle_osx.sh' script and the calls to 'install_name_tool'

It can be done by hand (which I've done a few times) but it gets old, quickly.


Top
 Profile Send private message  
 
PostPosted: Tue Oct 11, 2016 11:34 am 
Offline

Joined: Mon Oct 10, 2016 11:54 pm
Posts: 11
zarf wrote:
Thanks. I have added "-mmacosx-version-min=10.9" and redone the build. As you say, the included libraries may undermine this.

It's also important to pass the "version-min" option in the link step or it won't work. I use the following to check:
Quote:
otool -l <filename> | grep -B 1 -A 3 MIN_VERSION

Your output should look something like this:
Code:
Load command 8
      cmd LC_VERSION_MIN_MACOSX
  cmdsize 16
  version 10.9
      sdk 10.12


Top
 Profile Send private message  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 42 posts ]  Go to page 1, 2, 3, 4, 5  Next

All times are UTC - 6 hours [ DST ]


Who is online

Users browsing this forum: No registered users and 4 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group