Re: Re: segmentation fault when running ABF

From: Axel Kohlmeyer (
Date: Wed Aug 06 2008 - 11:10:48 CDT

On Wed, 6 Aug 2008, Vlad Cojocaru wrote:

VC> Hi Alex,

hi vald!

VC> Well .. I tried to compile using my own compilation of tcl8.5 because when
VC> trying with the precompiled libs (for linux-amd64) from the namd webpage
VC> (with the -static option added to the icc compiler) I get the error1 (see

why add -static??? linking completely statically is a "bad idea(tm)"
on any machine using glibc-2. furthermore, there is no gain from
using intel compiler to compile TCL. you are much better off using
gcc/g++ for everything that is not time critical as that will reduce
the dependencies on runtime libraries. particularly in libraries
that can be pretty nasty. on linux machines, you always have to depend
on the gcc runtime (why that one has to be dynamical i cannot
comprehend, but this is not the forum to discuss it).

VC> below). Second, when I tried to compile tcl 8.3.5 I get a configure error

use gcc to compile and drop the -static and it will work.
moreover, if your distribution provides a prepackaged tcl,
why go through the pains of building your own?

VC> (error2 below). When I looked for the configure error on the tcl webpage I
VC> found the answer "tcl8.3.5" is an old verison .. if you upgrade, tcl should
VC> configure correctly". Then I thought OK .. I use the latest tcl and I should
VC> be fine .... So, that's the background of it ..

yep. there is just one thing that one has to consider. using the
latest/greatest is usually OK with simple (small) applications as
those can be adapted quickly and with rather little effort, if needed.
but large complicated packages (like NAMD, VMD and many others) are
a different beast: first of all you want the application to excecute
absolutely correctly, always, then it has to be portable to many
platforms, many of which are "old", some even "legacy" and finally,
there are a frighteningly small number of people actually working on
maintaining and updating those codes. as a consequence progress is
usually very slow (you don't want to break anything that was working
and have to validate everything that gets added). it is especially scary
if one considers how many people actually put their trust into those
application and it is sometimes depressing to see how little respect
is being paid for all the hard work (and i mean respect as in actually
contributing to the effort, which is the best way to make sure that
free applications like NAMD do see more development in the future).

VC> I also tried to add -DUSE_NON_CONST to my tcl8.5 compilation but still in
VC> vain ....
VC> Now, I guess I should try tcl 8.4 ..... as it seems that nobody has tried to
VC> build namd with tcl8.5 ...
VC> For the record, I am trying on two different machines, both amd64
VC> architectures, on both intel 10.1.015 compilers. the namd code was
VC> downloaded from the cvs a week ago ...

i would actually try building with gcc/g++ first.
most of the time you have a better chance to get a
working executable and _then_ you can try to see if
you get a better/faster binary from intel.

the most important lesson in building package software
is to do it in stages, starting defensively and then
gradually move in stages to the full featured option
with all bells and whistles and optimizations.


VC> Best wishes
VC> vlad
VC> ---------------------------------------error2----------------------------------------------------------------------------------------------
VC> checking system version (for dynamic loading)... ./configure: line 6208:
VC> syntax error near unexpected token `)'
VC> ./configure: line 6208: ` OSF*)'

Axel Kohlmeyer
   Center for Molecular Modeling   --   University of Pennsylvania
Department of Chemistry, 231 S.34th Street, Philadelphia, PA 19104-6323
tel: 1-215-898-1582,  fax: 1-215-573-6233,  office-tel: 1-215-898-5425
If you make something idiot-proof, the universe creates a better idiot.

This archive was generated by hypermail 2.1.6 : Wed Feb 29 2012 - 05:21:13 CST