Dear friends, seems to be that I'm another guy having problems in setting up athena/tkatoms ;) I browsed the archives but found nothing that helped me to get them running. Here is the story: tkatoms worked well - then I installed the newest version and get: weiher> tkatoms.pl ...(lots of messages like the following)... Bareword found where operator expected at /usr/lib/perl5/site_perl/5.6.0/Xray/lib/atomsrc line 186, near "12 normal" (Missing operator before normal?) Unquoted string "normal" may clash with future reserved word at /usr/lib/perl5/site_perl/5.6.0/Xray/lib/atomsrc line 186, <RC> line 186. couldn't read bitmap file "/usr/lib/perl5/site_perl/5.6.0/Xray/lib/tkatoms.xbm": Datei oder Verzeichnis nicht gefundenerror reading bitmap file "/usr/lib/perl5/site_perl/5.6.0/Xray/lib/tkatoms.xbm" at /usr/lib/perl5/site_perl/5.6.0/i586-linux/Tk/Submethods.pm line 37, <RC> line 186. for athena it seems that it can't find the ifeffit.so libs - although they are installed (as well as the perl wrappers) and pass all test runs. I get: weiher> athena Can't load '/usr/lib/perl5/site_perl/5.6.0/i586-linux/auto/Ifeffit/Ifeffit.so' for module Ifeffit: /usr/lib/perl5/site_perl/5.6.0/i586-linux/auto/Ifeffit/Ifeffit.so: undefined symbol: G77_getenv_0 at /usr/lib/perl5/5.6.0/i586-linux/DynaLoader.pm line 200. at /usr/local/bin/athena line 50 Compilation failed in require at /usr/local/bin/athena line 50. BEGIN failed--compilation aborted at /usr/local/bin/athena line 57. I'd really love to get the packages on their way which has never been a real problem. I don't know why the new versions don't compile on my system. The requirements are all fulfilled (perl > 5.0, new Tk version...). Can anyone help me with my problems? The system is a SuSE linux box (V7.2) with kernel 2.4.4 compiled. Regards, Norbert -- Dipl. Chem. Norbert Weiher (norbertweiher@yahoo.de) Institute for Chemistry - Takustr. 3 - 14195 Berlin Phone/Fax: +49 30 838 53750 / 54792
Hi Norbert, I can't think of many reasons why SUSE 7 / linux 2.4 would cause problems. There have been some other problems with the Ifeffit perl module getting improperly installed on linux. I believe these problems have been due to perl's MakeMaker being too clever, but I don't know enough about perl to fix them. It may help to re-install ifeffit, or at least the perl module: perl Makefile.PL ; make install in ifeffit_1.0b/wrappers/perl/ Otherwise, do ifeffit and gifeffit run? That is, can we isolate this as perl+ifeffit problem or an ifeffit problem? If ifeffit works, does perl -e 'use Ifeffit;' have the same problem as athena? If this is where the problem is (I'd guess it is: ifeffit runs, the above perl line fails), then does the Makefile.PL look reasonable, pointing to libs for PGPLOT, X, g2c, etc that exist, etc? --Matt On Wed, 27 Mar 2002, Norbert Weiher wrote:
Dear friends,
seems to be that I'm another guy having problems in setting up athena/tkatoms ;) I browsed the archives but found nothing that helped me to get them running. Here is the story:
tkatoms worked well - then I installed the newest version and get:
weiher> tkatoms.pl ...(lots of messages like the following)... Bareword found where operator expected at /usr/lib/perl5/site_perl/5.6.0/Xray/lib/atomsrc line 186, near "12 normal" (Missing operator before normal?) Unquoted string "normal" may clash with future reserved word at /usr/lib/perl5/site_perl/5.6.0/Xray/lib/atomsrc line 186, <RC> line 186. couldn't read bitmap file "/usr/lib/perl5/site_perl/5.6.0/Xray/lib/tkatoms.xbm": Datei oder Verzeichnis nicht gefundenerror reading bitmap file "/usr/lib/perl5/site_perl/5.6.0/Xray/lib/tkatoms.xbm" at /usr/lib/perl5/site_perl/5.6.0/i586-linux/Tk/Submethods.pm line 37, <RC> line 186.
for athena it seems that it can't find the ifeffit.so libs - although they are installed (as well as the perl wrappers) and pass all test runs. I get:
weiher> athena Can't load '/usr/lib/perl5/site_perl/5.6.0/i586-linux/auto/Ifeffit/Ifeffit.so' for module Ifeffit: /usr/lib/perl5/site_perl/5.6.0/i586-linux/auto/Ifeffit/Ifeffit.so: undefined symbol: G77_getenv_0 at /usr/lib/perl5/5.6.0/i586-linux/DynaLoader.pm line 200. at /usr/local/bin/athena line 50 Compilation failed in require at /usr/local/bin/athena line 50. BEGIN failed--compilation aborted at /usr/local/bin/athena line 57.
I'd really love to get the packages on their way which has never been a real problem. I don't know why the new versions don't compile on my system. The requirements are all fulfilled (perl > 5.0, new Tk version...). Can anyone help me with my problems? The system is a SuSE linux box (V7.2) with kernel 2.4.4 compiled.
Regards, Norbert -- Dipl. Chem. Norbert Weiher (norbertweiher@yahoo.de) Institute for Chemistry - Takustr. 3 - 14195 Berlin Phone/Fax: +49 30 838 53750 / 54792 _______________________________________________ Ifeffit mailing list Ifeffit@millenia.cars.aps.anl.gov http://millenia.cars.aps.anl.gov/mailman/listinfo/ifeffit
Hi Matt, you're absolutely right - it seems to be a fortran problem. I tested ifeffit as well as gifeffit. Both work well. I tried to re-install ifeffit, the wrappers and athena but it didn't help. Copying the lib mentioned in your "Fortran Notes" to /usr/lib was also not successful. Building the wrapper is always successful but 'make test' aborts with the following message: bash-2.05# make test make[1]: Entering directory `/media/hdb1/weiher/install_files/ifeffit_1.0b/wrappers/perl/athena-2002.01.17' make[1]: Leaving directory `/media/hdb1/weiher/install_files/ifeffit_1.0b/wrappers/perl/athena-2002.01.17' PERL_DL_NONLAZY=1 /usr/bin/perl -Iblib/arch -Iblib/lib -I/usr/lib/perl5/5.6.0/i586-linux -I/usr/lib/perl5/5.6.0 test.pl Can't load 'blib/arch/auto/Ifeffit/Ifeffit.so' for module Ifeffit: /usr/lib/libf2c.so.0: undefined symbol: MAIN__ at /usr/lib/perl5/5.6.0/i586-linux/DynaLoader.pm line 200. at test.pl line 14 Compilation failed in require at test.pl line 14. BEGIN failed--compilation aborted at test.pl line 14. make: *** [test_dynamic] Error 255 I tried to find the libf2c.so.0 lib - it's in /usr/lib. I will now try a re-install of gcc and g77 and keep you informed on the progress of this ;) Regards, Norbert On Wednesday 27 March 2002 20:44, Matt Newville wrote:
Hi Norbert,
It may help to re-install ifeffit, or at least the perl module: perl Makefile.PL ; make install
in ifeffit_1.0b/wrappers/perl/
Otherwise, do ifeffit and gifeffit run? That is, can we isolate this as perl+ifeffit problem or an ifeffit problem? If ifeffit works, does perl -e 'use Ifeffit;'
have the same problem as athena? If this is where the problem is (I'd guess it is: ifeffit runs, the above perl line fails), then does the Makefile.PL look reasonable, pointing to libs for PGPLOT, X, g2c, etc that exist, etc?
--Matt
-- Dipl. Chem. Norbert Weiher (norbertweiher@yahoo.de) Institute for Chemistry - Takustr. 3 - 14195 Berlin Phone/Fax: +49 30 838 53750 / 54792
Hi folks, Last week, Norbert pointed out several manifestations of what appear to have been the same problem related to installing ifeffit's perl wrapper onto a linux system. Because of the difficulty installing the perl wrapper, my perl applications Athena and Atoms would not work. Among the many symptoms Norbert pointed out were such immediately intuitive (not!) messages as: ** Can't load '/usr/lib/perl5/site_perl/5.6.0/i586-linux/auto/Ifeffit/Ifeffit.so' ** /usr/lib/perl5/site_perl/5.6.0/i586-linux/auto/Ifeffit/Ifeffit.so: undefined symbol: G77_getenv_0 at /usr/lib/perl5/5.6.0/i586-linux/DynaLoader.pm line 200. and ** Can't load 'blib/arch/auto/Ifeffit/Ifeffit.so' for module Ifeffit: /usr/lib/libf2c.so.0: undefined symbol: MAIN__ at /usr/lib/perl5/5.6.0/i586-linux/DynaLoader.pm line 200. After some time, I finally determined that the problems he was experiencing were due to problems in the installation scripts that Matt and I had written for ifeffit + all the perl stuff. Last week I sent what I think was a solution to Matt and Norbert for testing. Norbert has informed me that he was able to install all of ifeffit and the perl wrapper and applications on his linux machine. Yay! This fix certainly applies to linux users and probably will benefit other unix-like systems, including SGI and OSX. Matt will (I presume) be including this fix in the next release of ifeffit. Having solved that problem, we will be free to move on to the next problem!!! If any of you have run into a problem that seems similar to Norbert's and would rather not wait for the next release of ifeffit, feel free to contact me privately. (But be warned that I will be at the synchrotron for the next several days, and so may not respond promptly to my mail.) Regards, B -- Bruce Ravel ----------------------------------- ravel@phys.washington.edu U.S. Naval Research Laboratory, Code 6134 phone: (1) 202 767 5947 Washington DC 20375, USA fax: (1) 202 767 1697 NRL Synchrotron Radiation Consortium (NRL-SRC) Beamlines X11a, X11b, X23b, X24c, U4b National Synchrotron Light Source Brookhaven National Laboratory, Upton, NY 11973 My homepage: http://feff.phys.washington.edu/~ravel EXAFS software: http://feff.phys.washington.edu/~ravel/software/exafs/
Earlier today, Bruce wrote:
Matt will (I presume) be including this fix in the next release of ifeffit. Having solved that problem, we will be free to move on to the next problem!!!
I am posting ifeffit-1.0071.tar.gz today with this new perl installation scheme, and attempts to address a few other issues that have cropped up on unixes. I'm not sure all these issues have been resolved, but they're ready for broader testing. For PGPLOT, there have been issues using pre-installed binary versions, and use of the PNG driver to create PNG output files. I updated PGPLOT_install so that it now installs both PNG and GIF files, though either or both can be turned off with PGPLOT_install --no-png --no-gif To use PNG, the png and zlib libraries must be installed (they are on most linuxes, but may need installation on other Unix variants). Because of this dependency, I also changed several parts of the Ifeffit configuration script so that it now checks the PGPLOT installation to find out which drivers to use and how to link with PGPLOT. The upshot is that configure should now work with pre-installed PGPLOT libraries (as from Debian or Fink), and PNG output is supported. A side-effect is that 'configure' now works on Mac OS X, though there are still some issues with the full build on that system. I tested this on linux (2.4, RedHat 7.1) and Mac OS X. There were some problems installing the perl module on Mac OS X that I have not tracked down. The other significant changes are that - plotting in ifeffit can now do error bars: > plot data.x, data.y, dy=data.dy will plot error bars at each point: data.y+/-data.dy - giving only one array to plot will use that as y, and the previous value of x: > newplot data.energy, data.xmu > plot data.bkg If it is a 'newplot': newplot data.bkg the x-axis will be the array index. - updated Reference Manual (though it's still not done!) I expect to post a windows version based on 1.0071 later this week. As always, comments and suggestions are welcome. In particular, suggestions for additional functionality and improvements to the existing applications would be greatly appreciated. Thanks, --Matt
Matt: I think one of the problems with the Debian distribution is that there is no libpng.a (static). There are libpng.so.2 and libpng.so.3 but these seem to give problems in the linker as the -lpng option fails in both the PGPLOT_install script and the ifeffit make command. Is there a way to point to the shared object libraries instead? Carlo On Tue, 2 Apr 2002, Matt Newville wrote:
Earlier today, Bruce wrote:
Matt will (I presume) be including this fix in the next release of ifeffit. Having solved that problem, we will be free to move on to the next problem!!!
I am posting ifeffit-1.0071.tar.gz today with this new perl installation scheme, and attempts to address a few other issues that have cropped up on unixes. I'm not sure all these issues have been resolved, but they're ready for broader testing.
For PGPLOT, there have been issues using pre-installed binary versions, and use of the PNG driver to create PNG output files. I updated PGPLOT_install so that it now installs both PNG and GIF files, though either or both can be turned off with PGPLOT_install --no-png --no-gif
To use PNG, the png and zlib libraries must be installed (they are on most linuxes, but may need installation on other Unix variants). Because of this dependency, I also changed several parts of the Ifeffit configuration script so that it now checks the PGPLOT installation to find out which drivers to use and how to link with PGPLOT.
The upshot is that configure should now work with pre-installed PGPLOT libraries (as from Debian or Fink), and PNG output is supported. A side-effect is that 'configure' now works on Mac OS X, though there are still some issues with the full build on that system.
I tested this on linux (2.4, RedHat 7.1) and Mac OS X. There were some problems installing the perl module on Mac OS X that I have not tracked down.
The other significant changes are that - plotting in ifeffit can now do error bars: > plot data.x, data.y, dy=data.dy will plot error bars at each point: data.y+/-data.dy
- giving only one array to plot will use that as y, and the previous value of x: > newplot data.energy, data.xmu > plot data.bkg If it is a 'newplot': newplot data.bkg the x-axis will be the array index.
- updated Reference Manual (though it's still not done!)
I expect to post a windows version based on 1.0071 later this week.
As always, comments and suggestions are welcome. In particular, suggestions for additional functionality and improvements to the existing applications would be greatly appreciated.
Thanks,
--Matt
_______________________________________________ Ifeffit mailing list Ifeffit@millenia.cars.aps.anl.gov http://millenia.cars.aps.anl.gov/mailman/listinfo/ifeffit
-- Carlo U. Segre -- Professor of Physics Illinois Institute of Technology Voice: 312.567.3498 Fax: 312.567.3494 Carlo.Segre@iit.edu http://www.iit.edu/~segre
Hi Carlo,
I think one of the problems with the Debian distribution is that there is no libpng.a (static). There are libpng.so.2 and libpng.so.3 but these seem to give problems in the linker as the -lpng option fails in both the PGPLOT_install script and the ifeffit make command.
Is there a way to point to the shared object libraries instead?
Yes. It shouldn't need a static library, as long as it can find the shared one at 1) compile time, which is probably OK if it's set with -L..., and 2) run time, which should work but can s be painful. I'd expect that what you're seeing is that PGPLOT (and ifeffit) build OK but that the executables don't run, saying: ~> ifeffit ifeffit: error while loading shared libraries: libpng.so: cannot load shared object file: No such file or directory This probably means that libpng.so is in some location that the run-time loader doesn't know about. On linux, the 'ldd' command will show what shared libraries an executable, or even another shared library will try to load, and say which ones cannot be found. ~> ldd ifeffit libpng.so.2 => /usr/lib/libpng.so.2 (0x4002b000) libz.so.1 => /usr/lib/libz.so.1 (0x4004c000) libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x4005a000) ... You can also run 'ldd libpgplot.so'. They should both point to an existing libpng.so, otherwise it would say libpng.so.2 => not found
A very minor problem admittedly, but it turns out that at least when you put five data sets on a plot and then make a postscript file or print that labels for only the first four data sets are printed (they show up fine on the screen however). The data is plotted fine, just the (after the fourth data set) labels are missing. Paul
Hi Paul, Thanks -- I think this is probably a core ifeffit plotting problem, and isn't specific to athena. I've recently noticed similar cases of 'the last thing drawn is missing from hardcopies', especially text and "keys" for the legend. I'll look into the root cause. I believe a simple workaround would be to repeat the last plot() command before making hardcopies. On a related subject, there are also definitely major problems with all plotting on Windows. --Matt
participants (5)
-
Bruce Ravel
-
Carlo U. Segre
-
Dr. Paul Fons
-
Matt Newville
-
Norbert Weiher