compiling Ifeffit and friends on a 64 bit linux machine
Hi, Some months ago -- see the thread that starts here: http://millenia.cars.aps.anl.gov/pipermail/ifeffit/2004-December/001550.html Jake from U. Calgary posted a message about trouble getting Ifeffit et al to compile on his 64 bit machine. Over the last few days I have been upgrading to SUSE 9.3 on my home computer, which has an Intel 64 bit processor. (2 of them actually, lucky me!) 9.3 is much better for a 64 bit machine than 9.2 was. (It's also the first OpenSUSE release, which is a development I am very happy about.) Initially I ran into the exact same problem that Jake described in his original post. At the time, Carlo suggested that the -fPIC flag ("Position Independent Code", whatever that is) would be important. That turned out to be the trick. When installing Ifeffit, it was necessary to do the configure step like this: ./configure CC="cc -fPIC" FFLAGS="-g -O2 -fPIC" After that, the rest of installing Ifeffit and all of installing the horae tarball proceded normally. BUT, there is one other caveat. I had to make a small change to the pgplot makefile to get it compiled for my 64 bit machine. Everyplace in the makefile where it said "/usr/X11R6/lib", I had to change that to "/usr/X11R6/lib64". Compiling pgplot requires a bit of voodoo. I have always relied on Matt's PGPLOT_install script, which comes with the ifeffit tarball. In this case, I ran the script. It did some stuff, the failed. I cd-ed to /usr/local/pgplot, which is where it gets installed, and edited the makefile in that directory as I indicated in the last paragraph. Then in that directory I did a "make" and the pgplot compilation went to completion. Of course, I had to be root run the PGPLOT_install script and to do the compilation in /usr/local/pgplot. Hope that helps! (I'd be interested to hear how it goes with your opteron, should you try this, Carlo.) Bruce -- Bruce Ravel ----------------------------------- bravel@anl.gov -or- ravel@phys.washington.edu Environmental Research Division, Building 203, Room E-165 Argonne National Laboratory phone and voice mail: (1) 630 252 5033 Argonne IL 60439, USA fax: (1) 630 252 9793 My homepage: http://cars9.uchicago.edu/~ravel EXAFS software: http://cars9.uchicago.edu/~ravel/software/exafs/
Hi Bruce, Hmm, I had a slightly easier experience getting ifeffit running on a "64bit linux machine" (this is a dual Xeon 64EM and Fedora Core 3 for x86-64). I did have to change the PGPLOT makefile from /usr/X11R6/lib to /usr/X11R6/lib64, but I thought this was 1 line. And once PGPLOT installed, the simplest rendition of './configure ; make install' did work to build Ifeffit. I did find a bug in the command-line shell that mangled characters. That fix will be included in Ifeffit 1.2.8 (due very soon, and also fixing the termcap problem, I think). I did not try to get horae to work -- perl/Tk is not installed on this machine so horae wouldn't install anyway. I recall the python build *did* fail with warnings about -fPIC, but I interpreted that to mean that the python setup was somehow mixed 32/64, and I haven't pursued this further. To be honest, I don't know where the best place to check for '64-bit' would be. --Matt
On Wednesday 14 September 2005 22:15, Matt Newville wrote:
I did have to change the PGPLOT makefile from /usr/X11R6/lib to /usr/X11R6/lib64, but I thought this was 1 line.
It looks like only one of them was necessary -- the "LIBS" variable.
And once PGPLOT installed, the simplest rendition of './configure ; make install' did work to build Ifeffit.
I did not try to get horae to work -- perl/Tk is not installed on this machine so horae wouldn't install anyway. I recall the python build *did* fail with warnings about -fPIC, but I interpreted that to mean that the python setup was somehow mixed 32/64, and I haven't pursued this further.
I was also able to get ifeffit itself to work without any of the command line flags for configure. All the -fPIC business was necessary to get the ifeffit wrapper to compile against libifeffit.a and thus to get Athena and Artemis to work.
To be honest, I don't know where the best place to check for '64-bit' would be.
I don't know either. I see a few environment variables that clearly indicate 64-bit-ness, but I don't know how consistent that is accross unixes or even across linux distributions. B -- Bruce Ravel ----------------------------------- bravel@anl.gov -or- ravel@phys.washington.edu Environmental Research Division, Building 203, Room E-165 Argonne National Laboratory phone and voice mail: (1) 630 252 5033 Argonne IL 60439, USA fax: (1) 630 252 9793 My homepage: http://cars9.uchicago.edu/~ravel EXAFS software: http://cars9.uchicago.edu/~ravel/software/exafs/
participants (2)
-
Bruce Ravel
-
Matt Newville