From: John Stone (
Date: Tue Jan 20 2009 - 08:51:08 CST

  Tcl 8.5.x has significantly altered the internal implementation of the
Tcl interpreter, and one of the results of these changes is that one is
no longer allowed to modify the size of Tcl objects if they are marked
as shared by more than one piece of code (by the reference counting system).
I've made the appropriate changes in the test versions of VMD 1.8.7, so
you may find it easiest to simply compile from the current source tree
rather than adapting VMD 1.8.6 for the new revs of Tcl. That said, if
you strictly want to work with VMD 1.8.6, I can probably send you the
appropriate source code diffs to effect the changes necessary for Tcl 1.8.5
if it's important to you. I have pre-built test versions of VMD 1.8.7
posted via this link:

  John Stone

On Tue, Jan 20, 2009 at 09:08:05AM +0100, Bernd Doser wrote:
> Dear All,
> I want to install vmd-1.8.6 on opensuse 11.1. Therefore, I have changed the
> configure file to use tcl/tk 8.5. In addition, I have modified two lines in
> cmd_render.C:
> //Tk_PhotoSetSize(handle, xs, ys);
> Tk_PhotoSetSize(NULL, handle, xs, ys);
> //Tk_PhotoPutBlock(handle, &blk, 0, 0, xs, ys, TK_PHOTO_COMPOSITE_SET);
> Tk_PhotoPutBlock(NULL, handle, &blk, 0, 0, xs, ys, TK_PHOTO_COMPOSITE_SET);
> Running the vmd command, a segmentation fault occurs after the line:
> Tcl_SetObjLength called with shared object
> Can somebody tell me what's wrong?
> Thanks a lot,
> Bernd

NIH Resource for Macromolecular Modeling and Bioinformatics
Beckman Institute for Advanced Science and Technology
University of Illinois, 405 N. Mathews Ave, Urbana, IL 61801
Email:                 Phone: 217-244-3349
  WWW:      Fax: 217-244-6078