Hi! I’ve recently switched to MacOSX and I’m trying to compile an old (working) inform game using the Swedish.h extension but I am getting errors I cannot quite understand:
inform +$INFLIBS game
Inform 6.33 for Unix (10th May 2014)
"/Users/myname/if/libs/Swedish.h", line 135: Error: Expected new global variable name but found caps_mode
> Global caps_mode
"/Users/myname/if/libs/Swedish.h", line 135: Error: Expected ';' but found Global
> Global
"/Users/myname/if/libs/parserm.h", line 664: Error: Expected constant but found <expression>
> short_name YOURSELF__TX,
Looking inside the Swedish.h reveals:
Constant LanguageVersion = "Översättning av biblioteket till svenska v1.6 (c) Fredrik Ramsberg 2003-2008";
Global caps_mode;
Global transcribe_mode;
It compiles just fine in a windows environment, so there is nothing wrong with the code. Anyone has a clue what’s going on?
The compiler I’m using is: ifarchive.org/if-archive/infocom … -b2.tar.gz
It’s the Unix version, so it should be compatible with MacOSX I guess?
I’ve compiled the source of the inform compiler from the link above under OSX 10.9.4 – and I managed to successfully compile a source story file together with the German library.
The inform-6.33b2 file was automatically located under usr/local/bin … and I’ve put the source of the story file together with the german library files into a separate folder (currently located on my desktop). I’ve compiled via a terminal shell script (.command) which contains the following lines:
cd dirname $BASH_SOURCE
inform-6.33b2 -D WHATEVER.inf
I got the same error. However, if I compiled using the old 6/11 libraries, it worked. So this is a compatibility issue between the Swedish library files and the 6/12 library files.
I don’t know enough about 6/12 to say whether this is a bug or a deliberate change. But if you want to keep developing the same project, you should stick with the 6/11 libraries.
(It’s safe – in fact recommended – to use the 6.33 compiler. We’ve kept backwards compatibility for the compiler. But the Inform library does not maintain backwards compatibility across releases; it never has.)
There were some changes in 6/12 that concerned definite and indefinite forms in Swedish. The relevant Mantis ticket is inform7.com/mantis/view.php?id=982. Is this helpful? I would like to see the sample game and the version of Swedish.h so I can see if I can work out what needs to be changed.