[lammps-users] Compiling xmovie on a mac

Hi

I have managed to install lammps and some of the utilities on my mac. This was more a matter of luck than skill because I really don't know what I am doing when it comes to compilations. However, I am having problems with xmovie. I have x11 installed but I don't think this is the problem.

Any help in translating and fixing the following will be greatly appreciated:

thanks much
matthew

n1-19-194:xmovie matthew$ make
gcc -c -O2 -finline-functions -g -DMISSINGDEFS -D_POSIX_SOURCE -DUSEPRIVATE -DINCL_FLOAT -Wimplicit -Wunused -Wmissing-prototypes xmovie.c
gcc -c -O2 -finline-functions -g -DMISSINGDEFS -D_POSIX_SOURCE -DUSEPRIVATE -DINCL_FLOAT -Wimplicit -Wunused -Wmissing-prototypes control.c
gcc -c -O2 -finline-functions -g -DMISSINGDEFS -D_POSIX_SOURCE -DUSEPRIVATE -DINCL_FLOAT -Wimplicit -Wunused -Wmissing-prototypes scene.c
scene.c: In function ‘MotionUpdate’:
scene.c:155: warning: passing argument 4 of ‘XpmWriteFileFromPixmap’ makes integer from pointer without a cast
scene.c: In function ‘SceneSave’:
scene.c:188: warning: passing argument 4 of ‘XpmWriteFileFromPixmap’ makes integer from pointer without a cast
gcc -c -O2 -finline-functions -g -DMISSINGDEFS -D_POSIX_SOURCE -DUSEPRIVATE -DINCL_FLOAT -Wimplicit -Wunused -Wmissing-prototypes read.c
read.c: In function ‘SortData’:
read.c:981: warning: passing argument 1 of ‘hpsort’ from incompatible pointer type
read.c:981: warning: passing argument 4 of ‘hpsort’ from incompatible pointer type
gcc -c -O2 -finline-functions -g -DMISSINGDEFS -D_POSIX_SOURCE -DUSEPRIVATE -DINCL_FLOAT -Wimplicit -Wunused -Wmissing-prototypes hpsort.c
hpsort.c:11: warning: no previous prototype for ‘hpsort’
hpsort.c: In function ‘hpsort’:
hpsort.c:18: warning: implicit declaration of function ‘malloc’
hpsort.c:18: warning: incompatible implicit declaration of built-in function ‘malloc’
hpsort.c:21: warning: implicit declaration of function ‘memcpy’
hpsort.c:21: warning: incompatible implicit declaration of built-in function ‘memcpy’
hpsort.c:23: warning: incompatible implicit declaration of built-in function ‘memcpy’
hpsort.c:35: warning: incompatible implicit declaration of built-in function ‘memcpy’
hpsort.c:40: warning: incompatible implicit declaration of built-in function ‘memcpy’
hpsort.c:42: warning: implicit declaration of function ‘free’
gcc -c -O2 -finline-functions -g -DMISSINGDEFS -D_POSIX_SOURCE -DUSEPRIVATE -DINCL_FLOAT -Wimplicit -Wunused -Wmissing-prototypes version.c
gcc -o xmovie -O2 -finline-functions -g version.o xmovie.o control.o scene.o read.o hpsort.o -L/usr/X11R6/lib -lX11 -lXaw -lm
Undefined symbols:
  "_XtFree", referenced from:
      _SceneDraw in scene.o
      _SceneDraw in scene.o
      _SortData in read.o
      _NewData in read.o
  "_transientShellWidgetClass", referenced from:
      _transientShellWidgetClass$non_lazy_ptr in control.o
      _transientShellWidgetClass$non_lazy_ptr in scene.o
  "_XtRealizeWidget", referenced from:
      _main in xmovie.o
  "_XtCreatePopupShell", referenced from:
      _init_quit in control.o
      _init_atoms in control.o
      _init_bg in control.o
      _init_file in control.o
      _init_bonds in control.o
      _CreateControl in control.o
      _CreateControl in control.o
      _CreateScene in scene.o
  "_overrideShellWidgetClass", referenced from:
      _overrideShellWidgetClass$non_lazy_ptr in control.o
  "_XtScreen", referenced from:
      _NewDataSetup in scene.o
      _NewDataSetup in scene.o
  "_XtAppAddWorkProc", referenced from:
      _main in xmovie.o
  "_XtRealloc", referenced from:
      _ReadProc in read.o
      _ReadProc in read.o
  "_XtVaCreateManagedWidget", referenced from:
      _init_atoms in control.o
      _init_atoms in control.o
      _init_atoms in control.o
      _init_atoms in control.o
      _init_atoms in control.o
      _init_atoms in control.o
      _init_bg in control.o
      _init_bg in control.o
      _init_file in control.o
      _init_file in control.o
      _init_bonds in control.o
      _init_bonds in control.o
      _init_bonds in control.o
      _init_bonds in control.o
      _init_bonds in control.o
      _init_bonds in control.o
      _CreateControl in control.o
      _CreateControl in control.o
      _CreateScene in scene.o
  "_XtDisplay", referenced from:
      _DrawAxes in control.o
      _DrawAxes in control.o
      _DrawAxes in control.o
      _DrawAxes in control.o
      _color_apply in control.o
      _bond_apply in control.o
      _bg_apply in control.o
      _file_apply in control.o
      _SceneSave in scene.o
      _SetAtomColors in scene.o
      _SetAtomColors in scene.o
      _SetAtomColors in scene.o
      _SetAtomColors in scene.o
      _SetBGColor in scene.o
      _SetBGColor in scene.o
      _SetBondColors in scene.o
      _SetBondColors in scene.o
      _SceneDraw in scene.o
      _SceneDraw in scene.o
      _SceneDraw in scene.o
      _SceneDraw in scene.o
      _SceneDraw in scene.o
      _SceneDraw in scene.o
      _SceneDraw in scene.o
      _SceneDraw in scene.o
      _NewDataSetup in scene.o
      _NewDataSetup in scene.o
      _MotionUpdate in scene.o
  "_XtPopup", referenced from:
      _do_popup in control.o
      _CreateScene in scene.o
  "_XtPopdown", referenced from:
      _cancel_popup in control.o
      _cancel_popup in control.o
  "_XtCreateManagedWidget", referenced from:
      _init_quit in control.o
      _init_atoms in control.o
      _init_atoms in control.o
      _init_bg in control.o
      _init_bg in control.o
      _init_file in control.o
      _init_file in control.o
      _init_bonds in control.o
      _init_bonds in control.o
      _CreateControl in control.o
      _CreateControl in control.o
      _CreateControl in control.o
      _CreateControl in control.o
      _CreateControl in control.o
      _CreateControl in control.o
      _CreateControl in control.o
      _CreateControl in control.o
      _CreateControl in control.o
      _CreateControl in control.o
      _CreateControl in control.o
      _CreateControl in control.o
      _CreateControl in control.o
      _CreateControl in control.o
      _CreateControl in control.o
      _CreateControl in control.o
      _CreateControl in control.o
      _CreateControl in control.o
      _CreateControl in control.o
  "_XtAppMainLoop", referenced from:
      _main in xmovie.o
  "_XtVaSetValues", referenced from:
      _SetTime in control.o
      _NewSpeed in control.o
      _NewPosition in control.o
      _NewThickness in control.o
      _SetReadString in control.o
      _do_popup in control.o
      _color_apply in control.o
      _color_apply in control.o
      _bond_apply in control.o
      _bond_apply in control.o
      _bg_apply in control.o
      _file_apply in control.o
      _file_apply in control.o
      _file_apply in control.o
      _CreateControl in control.o
      _SetBGColor in scene.o
  "_XtMalloc", referenced from:
      _main in xmovie.o
      _main in xmovie.o
      _main in xmovie.o
      _init_atoms in control.o
      _init_atoms in control.o
      _init_atoms in control.o
      _init_atoms in control.o
      _init_bonds in control.o
      _init_bonds in control.o
      _init_bonds in control.o
      _init_bonds in control.o
      _color_apply in control.o
      _color_apply in control.o
      _color_apply in control.o
      _color_apply in control.o
      _bond_apply in control.o
      _bond_apply in control.o
      _bond_apply in control.o
      _bond_apply in control.o
      _file_apply in control.o
      _file_apply in control.o
      _file_apply in control.o
      _file_apply in control.o
      _CreateScene in scene.o
      _CreateScene in scene.o
      _SceneDraw in scene.o
      _SceneDraw in scene.o
      _SortData in read.o
      _NewData in read.o
      _NewData in read.o
      _NewData in read.o
      _NewData in read.o
      _NewData in read.o
      _CopyBond in read.o
      _ReadPosition in read.o
      _ReadBond in read.o
      _ReadProc in read.o
  "_XtAppInitialize", referenced from:
      _main in xmovie.o
  "_XtVaGetApplicationResources", referenced from:
      _main in xmovie.o
  "_XtRemoveTimeOut", referenced from:
      _RemoveMotion in scene.o
      _MotionUpdate in scene.o
  "_XtAddCallback", referenced from:
      _init_atoms in control.o
      _init_atoms in control.o
      _init_atoms in control.o
      _init_atoms in control.o
      _init_bg in control.o
      _init_bg in control.o
      _init_file in control.o
      _init_file in control.o
      _init_bonds in control.o
      _init_bonds in control.o
      _init_bonds in control.o
      _init_bonds in control.o
      _CreateControl in control.o
      _CreateControl in control.o
      _CreateControl in control.o
      _CreateControl in control.o
      _CreateControl in control.o
      _CreateControl in control.o
      _CreateControl in control.o
      _CreateControl in control.o
      _CreateControl in control.o
  "_XtConvertAndStore", referenced from:
      _color_apply in control.o
      _bond_apply in control.o
      _bg_apply in control.o
      _file_apply in control.o
      _file_apply in control.o
  "_XtTranslateCoords", referenced from:
      _do_popup in control.o
  "_XtWindow", referenced from:
      _DrawAxes in control.o
      _DrawAxes in control.o
      _DrawAxes in control.o
      _DrawAxes in control.o
      _SetAtomColors in scene.o
      _SetAtomColors in scene.o
      _SetBGColor in scene.o
      _SetBondColors in scene.o
      _SceneDraw in scene.o
      _SceneDraw in scene.o
      _SceneDraw in scene.o
      _SceneDraw in scene.o
  "_XtAppAddActions", referenced from:
      _main in xmovie.o
      _CreateControl in control.o
  "_XtWidgetToApplicationContext", referenced from:
      _SetRadio in control.o
      _quit_ok in control.o
      _CreateControl in control.o
      _InstallMotion in scene.o
      _MotionUpdate in scene.o
  "_XpmWriteFileFromPixmap", referenced from:
      _SceneSave in scene.o
      _MotionUpdate in scene.o
  "_XtAppAddTimeOut", referenced from:
      _InstallMotion in scene.o
      _MotionUpdate in scene.o
  "_XtIsRealized", referenced from:
      _DrawAxes in control.o
      _SceneDraw in scene.o
  "_XtVaGetValues", referenced from:
      _DrawAxes in control.o
      _SetRadio in control.o
      _visible_toggle in control.o
      _bvisible_toggle in control.o
      _PositionUpdate in control.o
      _ThicknessUpdate in control.o
      _SpeedUpdate in control.o
      _AxisSelect in control.o
      _AxisSelect in control.o
      _CreateControl in control.o
      _CreateControl in control.o
      _CreateControl in control.o
      _SceneSize in scene.o
      _SetAtomColors in scene.o
      _SetBondColors in scene.o
      _SceneDraw in scene.o
      _SceneDraw in scene.o
      _SceneDraw in scene.o
      _NewDataSetup in scene.o
      _NewDataSetup in scene.o
  "_XtDestroyApplicationContext", referenced from:
      _SetRadio in control.o
      _quit_ok in control.o
  "_XtStrings", referenced from:
      _resources in xmovie.o
      _resources in xmovie.o
      _resources in xmovie.o
      _resources in xmovie.o
      _resources in xmovie.o
      _resources in xmovie.o
      _resources in xmovie.o
      _resources in xmovie.o
      _resources in xmovie.o
      _resources in xmovie.o
      _resources in xmovie.o
      _resources in xmovie.o
      _resources in xmovie.o
      _resources in xmovie.o
      _resources in xmovie.o
      _resources in xmovie.o
      _resources in xmovie.o
      _resources in xmovie.o
      _resources in xmovie.o
      _resources in xmovie.o
      _XtStrings$non_lazy_ptr in control.o
      _XtStrings$non_lazy_ptr in scene.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make: *** [xmovie] Error 1
n1-19-194:xmovie matthew$ make

Hi Matt,

It looks to me like you’ve got a linker error. I just tried compiling xmovie on my mac and it didn’t compile either. I seem to remember that it compiled okay in older versions so I suspect this might be a snow leopard or leopard thing. You might try getting fink or something else running if you’re not running leopard and use those X11 library and include files instead of default apple ones because the apple ones look like they might be broken.

I just use VMD myself, you can get a native mac binary and the new versions seem to read lammps trajectories pretty well.

Cheers,
Andrew

Hi Matthew,

if you take a look at the Makefile in the xmovie directory, there is a line like

# try this version on a Mac
#LIBS = $(XLIBDIR) -lX11 -lXaw -lXt -lXext -lXmu -lXpm

So, all you should need to do is to delete the # in front of the LIBS assignment in that line and put a # in front of the LIBS statement a few lines above.

After I did this, xmovie compiled without any problems (just a few warnings) on my Mac here (OS X 10.5, gcc 4.4).
I have to say though, i didn't use xmovie so far.

Greets,
Michael