Building Gargoyle


#1

Has anybody been able to get the current Gargoyle to compile under Win32?


#2

As far as I know, Gargoyle is intended to be cross-compiled to Windows via MinGW. At least the Jamrules file appears to only set up a Windows build properly if CROSS is set to true. I’m sure it’d be possible, and possibly trivial, to adapt it to build on Windows itself, with MinGW. You can take a look at windows.sh as a rough guide, which is a script I intend to use to build the official Windows build for the next release.

If you’re already talking about building with a cross compiler, it should be as simple as:

jam -sC++=i686-w64-mingw32-g++ -sCC=i686-w64-mingw32-gcc -sOS=MINGW -sMINGWARCH=i686-w64-mingw32 -sCROSS=1

#3

Okay, I booted into Linux, and tried again.

Under make, rerunning make should only attempt to recompile the files that need to be recompiled. Ordinarily, make stops at the first failure; make -k will attempt to compile any needed file whose dependencies are met. With Gargoyle’s jamfile, every attempt to run Jam ended up trying to recompile every file. Unfortunately, garglk was failing to compile (missing dependencies), but then all the platform-independent parts of the interpreters would compile fine. So all the error messages from garglk would be buried under all the messages from the interpreter compilation, and it was spending a lot of time recompiling all the platform independent parts. Is this a problem with Jam, or does Gargoyle use Jam poorly?

(I was able to eventually get the Linux version to compile, but I couldn’t get all the dependencies to cross compile the Windows version.)


#4

You would need a cross compiler, and also cross-compiled library dependencies. Maybe MXE will work:

mxe.cc


#5

Maybe both? I have a CMake-based branch I want to use to replace the Jam-based build system, but not until after the next release. At this point Jam is used because it’s been there for years. Unless somebody really likes Jam and is willing to commit to getting the Jam system in shape, I will soonish bring the CMake system in place.

Gargoyle should include all dependencies for Windows builds. Feel free to create a new issue at github.com/garglk/garglk/issues with details of the failure you’re seeing.


#6

I’m using Jam to build the latest source without any problems. Recently I even managed to build a highly optimized version of Gargoyle (SSE2 instruction set, loop unrolling, etc). It should run much faster on huge .gblorbs.

Here it is, built with MinGW 7.2.0 under Windows 7.

gargoyle_06-Mar-2018.zip

case RELEASE : Echo "BUILD is RELEASE" ; OPTIM = -O3 -msse2 -faggressive-loop-optimizations -funroll-loops -s $(CFLAGS) ; LINKFLAGS = $(LDFLAGS) -s ; SHRLINKFLAGS = $(LDFLAGS) ; set JAM_TOOLSET=MINGW jam -sOS=MINGW -sCC=gcc -sCXX=g++ -j%NUMBER_OF_PROCESSORS%


#7

Just updated the Windows build from the latest github sources. Enjoy.

gargoyle_17-Apr-2018.zip


(Hanon Ondricek) #8

Has there been a recent update for Mac? Every game I have opened with Gargoyle freezes a the command prompt. When I looked it the GitHub release page it looked like the date was 2011…unless I’m just reading it wrong.


(Dan Fabulich) #9

You may remember this old thread. https://intfiction.org/t/unofficial-gargoyle-build-for-macos-10-12/10574/1

Zarf has released updates here: github.com/erkyrath/garglk/releases

It would be great if Zarf could seize control of github.com/garglk/garglk/ … I think we just need a little more Wille zur Macht


(Andrew Plotkin) #10

I was calling for help on the mailing list for a while, but I’m not qualified to just seize the damn thing and run it. I don’t know what all the issues are.

Also, busy these days.


#11

drive.google.com/open?id=1BOBPa … RaOCHdOrbl

yadi.sk/d/PSUb-GLs3ZUE2e


(Andrew Plotkin) #12

I have put up a new MacOS build of Gargoyle: github.com/erkyrath/garglk/releases

If you have a Mac, please give it a go and see if it works. Thanks. Once it’s been sufficiently tested, Chris Spiegel is going to do a full release.


#13

I’ve also put up a new Windows build at github.com/cspiegel/garglk/releases/tag/2018.1.

As with zarf’s Mac build, this is a release candidate, so if you’ve got a moment, please give it a try in preparation for a new release.


#14

A tester reports that this MacOS version is not displaying images.

The tester says he’s using MacOS Sierra 10.12.6.

When an image is displayed (the Inform code is “display [figure]”), Gargoyle prints (for example)

[Picture number 5 here.]

I don’t have a Mac, so I can’t test it myself. I checked his garglk.ini file, and the graphics line has a “1”.


(Dan Fabulich) #15

On macOS High Sierra 10.13.6 on a 2016 15" MBP, using zarf’s linked version of Gargoyle (2018.1), I see images in “Brain Guzzlers from Beyond” and “Alabaster”. I deleted my ~/garglk.ini file before launching Gargoyle.


(Petter Sjölund) #16

Pictures work fine in High Sierra here as well, at least in Alabaster, Six, Dead Cities, Carma, Counterfeit Monkey. I didn’t touch my old preferences.


#17

I was not able to reproduce the problem on another Mac, so I’m guessing the problem is specific to the tester’s computer.


(Petter Sjölund) #18

I’ve put up a new unofficial macOS build of Gargoyle with Retina support here: https://github.com/angstsmurf/garglk/releases.

This is the current (November 1, 2018) code from the official repo with some additional pull requests applied for Retina and sound improvements. Built on Lion 10.7 and tested on Sierra 10.12. It will NOT work on 10.6 or earlier.

I’ve noticed a weird bug where running it from the disk image rather than copying it to a writable disk first will cause some games to fail.

Please try it out!

EDIT: Hmm, the Retina stuff does not seem to work right on Mojave, at least not running under Parallels Desktop Lite. Could somebody confirm?


(Andrew Plotkin) #19

It runs correctly (at full resolution) on my iMac with Mojave (10.14.0). Nice!


(Petter Sjölund) #20

Thanks for testing! Good to hear! I guess Parallels Desktop Lite is just not that great a test environment.