Hi again, I have rebuilt things more carefully but I still have problems. - I built pgplot following the instructions at http://www.iac.es/sieinvens/siepedia/pmwiki.php?n=HOWTOs.PGPLOTMacOSX http://www.iac.es/sieinvens/siepedia/pmwiki.php?n=HOWTOs.PGPLOTMacOSX. It works fine and the test produces png files. - I have been building ifeffit in various ways. The current version of my ./configure command looks like this: $ ./configure --with-fortran=gfortran --with-pgplot=/usr/local/lib/pgplot --with-pgplot-link='-L/usr/local/lib/pgplot -lpgplot -lXaPgplot -lcpgplot' CC=gcc-fsf-4.9 CFLAGS=-m64 FFLAGS='-ffixed-line-length-132 -m64' LDFLAGS='-L/usr/X11/lib -lX11 -lXt -lXaw3d -I/usr/local/include -I/sw10.9/include -L/sw10.9/lib -lpng’ gfortran and gcc are installed via fink. I have also tried Apples stock gcc. I have tried with and without the -m64 flags, with just pgplot or by also including XaPgplot and cpgplot. The build seems to include pgplot, part of the output during the make is: make[3]: Entering directory '/Users/Anders/ifeffit/ifeffit/src/cmdline' gcc-fsf-4.9 -DHAVE_CONFIG_H -I. -I. -I../.. -m64 -c iff_shell.c gcc-fsf-4.9 -m64 -L/usr/X11/lib -lX11 -lXt -lXaw3d -I/usr/local/include -I/sw10.9/include -L/sw10.9/lib -lpng -o ifeffit iff_shell.o ../lib/libifeffit.a -L/usr/local/lib/pgplot -lpgplot -lXaPgplot -lcpgplot ../../readline/libreadline.a -L/usr/lib -lncurses -L/usr/X11/lib -L/sw10.9/lib -L/opt/intel/composer_xe_2015.0.077/compiler/lib -L/opt/intel/composer_xe_2015.0.077/mkl/lib -L/sw10.9/lib/gcc4.9/lib/gcc/x86_64-apple-darwin13.4.0/4.9.2 -L/sw10.9/lib/gcc4.9/lib/gcc/x86_64-apple-darwin13.4.0/4.9.2/../../.. -lX11 -lXt -lXaw3d -lpng -lgfortran -lSystem -lgcc_ext.10.5 -lquadmath -lm make[3]: Leaving directory '/Users/Anders/ifeffit/ifeffit/src/cmdline’ The test of ifeffit still produces: $ ifeffit Ifeffit 1.2.12 Copyright (c) 2005 Matt Newville, Univ of Chicago command-line shell version 1.1 with GNU Readline Ifeffit> testplot %PGPLOT, Unrecognized device type %PGPLOT, Invalid device specification: /AQT %PGPLOT, PGBBUF: selected graphics device is not open %PGPLOT, PGQCI: selected graphics device is not open %PGPLOT, PGQFS: selected graphics device is not open %PGPLOT, PGSCI: selected graphics device is not open %PGPLOT, PGSFS: selected graphics device is not open %PGPLOT, PGSVP: selected graphics device is not open %PGPLOT, PGBBUF: selected graphics device is not open %PGPLOT, PGEBUF: selected graphics device is not open %PGPLOT, PGSVP: selected graphics device is not open %PGPLOT, PGSCI: selected graphics device is not open %PGPLOT, PGSFS: selected graphics device is not open %PGPLOT, PGEBUF: selected graphics device is not open ** plot error: cannot open device: %PGPLOT, Unrecognized device type %PGPLOT, Invalid device specification: /AQT ** plot error: cannot open device: I have run out of ideas of what to try next. (The configure script picks up the paths for ifort libraries, could this be the problem? I could try to edit these out of all the makefiles… I don’t know how to make configure not pick these up.) Any ideas much appreciated. Anders
On Mar 19, 2015, at 14:55 PM, Bruce Ravel
wrote: Anders,
I see two things that look like problems. I have never built Demeter on a Mac myself, so there may be limits to how good my advice can be. That said:
You are clearly not linking against the pgplot library you compiled. I glean this from the fact that you see this:
Use of uninitialized value $pgplot_location in substitution (s///) at DemeterBuilder.pm line 191.
and this (from your previous email):
$ ifeffit Ifeffit 1.2.12 Copyright (c) 2005 Matt Newville, Univ of Chicago command-line shell version 1.1 with GNU Readline Ifeffit> testplot %PGPLOT, Unrecognized device type
and so on. You need to make sure that pgplot is someplace that the linker/loader knows to look when you build ifeffit. But I do not know how that works on the mac.
The bigger problem is this:
On 03/19/2015 05:42 PM, Anders Glans wrote:
env LD_RUN_PATH=/System/Library/Perl/5.18/darwin-thread-multi-2level/CORE cc -mmacosx-version-min=10.10 -arch x86_64 -arch i386 -bundle -undefined dynamic_lookup -fstack-protector -o src/Ifeffit.dylib src/ifeffit_wrap.o Simple test for presence of gnuplot ---> found it! Using gnuplot with the x11 terminal. Building Demeter Building Artemis User's Guide Building Athena User's Guide copying src/Ifeffit.so to /Users/Anders/perl/auto/Ifeffit/Ifeffit.so
It seems that my build script is too stupid to know that the shared object library built from the ifeffit wrapper is called .dylib and not .so.
Try copying "src/Ifeffit.dylib" to "/Users/Anders/perl/auto/Ifeffit/" by hand, then doing "./Build" again.
Perhaps oddly, I am not worried about that whole slew of warnings. I don't think they matter.
Hopefully with the .dylib file in the correct location, this
t/000_ifeffit.t ......... Can't load '/Library/Perl/5.18/darwin-thread-multi-2level/auto/Ifeffit/Ifeffit.bundle' for module Ifeffit:
and so on, won't happen.
Fingers crossed! B
-- Bruce Ravel ------------------------------------ bravel@bnl.gov
National Institute of Standards and Technology Synchrotron Science Group at NSLS-II Building 535A Upton NY, 11973
Homepage: http://bruceravel.github.io/home/ Software: https://github.com/bruceravel Demeter: http://bruceravel.github.io/demeter/ _______________________________________________ Ifeffit mailing list Ifeffit@millenia.cars.aps.anl.gov http://millenia.cars.aps.anl.gov/mailman/listinfo/ifeffit