[gme-users] Upgrading components from previous versions of GME

Kevin Smyth ksmyth at isis.vanderbilt.edu
Thu Jun 24 10:06:17 CDT 2010

Note that only VS2008 is officially supported, but VS2005 and VS2010 should
work for interpreters.

Please follow the first fix in that JIRA issue to fix compilation with
VS2008. GME isn't supported on NT4, so dropping support for it in your
interpreter shouldn't matter.

Attached is a Ruby script I wrote to update GME7 interpreters to GME9/10.
You may find it useful if you have Cygwin + Ruby + rexml gem. To use it,
first open the project in VS2008 to upgrade it, close it, run
upgrade-interpreter.rb Project.vcproj, and reopen the project and upgrade

Basically the steps the script take are:
Change MIDL output file to $(InputName)_h.h
Change BON to BON\Common in additional include dirs and file paths
Add Bon\Common\Exceptions.cpp and Console.cpp
StdAfx.h: Change #define _WIN32_WINNT 0x0400 to 0x0500
ComponentLib.idl: Change #include PATH(... to #include "... (optional)

I vaguely remember there are more steps for very old interpreters.

This is the way I went about it, but you may find it easier to just
regenerate the interpreters.


-----Original Message-----
From: gme-users-bounces at list.isis.vanderbilt.edu
[mailto:gme-users-bounces at list.isis.vanderbilt.edu] On Behalf Of Jonathan
Sent: Wednesday, June 23, 2010 5:49 PM
To: gme-users
Cc: Jonathan Sprinkle
Subject: [gme-users] Upgrading components from previous versions of GME

(Apologies if this is the second msg that shows up).

Hi all,

I'm (finally?) upgrading to GME 10, and let me first off say: well done GME
team on maintaining binary compatibility w/ MGA files!!!!

For my interpreters (all from GME7), it doesn't seem that easy, though. I'm
wondering if there is a better way to do it, than regenerating the
interpreter in GME10's interface, and then copying my old cpp/h files to
that new directory and then modifying Bon2component.cpp

I tried to do it piecemeal by recompiling the existing source, but:
1) the location of includes is different now, in $(GME)\SDK
2) the names of some generated files are different, e.g.,
  BON.h includes ComponentLib_h.h instead of ComponentLib.h, but
  even though I use the new ComponentLib.idl, the name of the generated
  file is not updated.

If anyone has experience or advice (or can point me to a document that
explains it) I am much obliged. I have a few dozen interpreters from my MIC
course, and would like to make the situation fairly painless, if possible.
Especially since there are many interpreters that are contained in a single
project. :)

For tech info, I tried recompiling only in VC2005. In VC2008, I get the
(previously known) error found here:


But I have not tried to fix those problems, as even VC2005 didn't work. If
there isn't a body of knowledge on how to do this, I'll just bite the bullet
and regen all the interpreters.

gme-users mailing list
gme-users at list.isis.vanderbilt.edu
-------------- next part --------------
A non-text attachment was scrubbed...
Name: upgrade-interpreter.rb
Type: application/octet-stream
Size: 3115 bytes
Desc: not available
Url : http://list.isis.vanderbilt.edu/pipermail/gme-users/attachments/20100624/6883bb24/attachment.obj 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 5113 bytes
Desc: not available
Url : http://list.isis.vanderbilt.edu/pipermail/gme-users/attachments/20100624/6883bb24/attachment.bin 

More information about the gme-users mailing list