Uploaded image for project: 'Data Management'
  1. Data Management
  2. DM-3667

PSFEX does not build if PLplot is installed

    Details

    • Type: Bug
    • Status: Done
    • Resolution: Done
    • Fix Version/s: None
    • Component/s: psfex
    • Labels:
      None

      Description

      During the configure phase PSFEX checks for the presence of PLplot. If PLplot is found then the build fails (at least on a Mac using homebrew):

      /bin/sh ../libtool  --tag=CC   --mode=link clang  -g -O2 -I/Users/timj/work/lsstsw/src/psfex/lapack_functions/include   -o psfex check.o context.o cplot.o diagnostic.o fft.o field.o field_utils.o fitswcs.o homo.o main.o makeit.o makeit2.o misc.o pca.o prefs.o psf.o sample.o sample_utils.o vignet.o wcs_utils.o xml.o ./fits/libfits.a ./levmar/liblevmar.a ./wcs/libwcs_c.a -L/Users/timj/work/lsstsw/stack/DarwinX86/fftw/3.3.3-1-g8fdba61+da39a3ee5e/lib -lfftw3f -lm  -L/Users/timj/work/lsstsw/src/psfex/lapack_functions/lib -llapackstub -lf2c -lm -lplplotd
      libtool: link: clang -g -O2 -I/Users/timj/work/lsstsw/src/psfex/lapack_functions/include -o psfex check.o context.o cplot.o diagnostic.o fft.o field.o field_utils.o fitswcs.o homo.o main.o makeit.o makeit2.o misc.o pca.o prefs.o psf.o sample.o sample_utils.o vignet.o wcs_utils.o xml.o  ./fits/libfits.a ./levmar/liblevmar.a ./wcs/libwcs_c.a -L/Users/timj/work/lsstsw/stack/DarwinX86/fftw/3.3.3-1-g8fdba61+da39a3ee5e/lib /Users/timj/work/lsstsw/stack/DarwinX86/fftw/3.3.3-1-g8fdba61+da39a3ee5e/lib/libfftw3f.dylib -L/Users/timj/work/lsstsw/src/psfex/lapack_functions/lib -llapackstub -lf2c -lm -lplplotd
      Undefined symbols for architecture x86_64:
        "_plwid", referenced from:
            _cplot_drawloccoordgrid in cplot.o
            _cplot_fwhm in cplot.o
            _cplot_ellipticity in cplot.o
            _cplot_moffatresi in cplot.o
            _cplot_asymresi in cplot.o
            _cplot_counts in cplot.o
            _cplot_countfrac in cplot.o
            ...
      ld: symbol(s) not found for architecture x86_64
      

      This particular error is caused by PSFEX using a deprecated PLplot API (plwid) that is not enabled by default and whose name is not translated to c_plwid. This PLplot change occurred in version 5.9.10 released in 2013. I assume upstream PSFEX has a fix for this.

      Given that LSST does not need the PLplot functionality I think the simplest fix may well be to disable the test for PLplot in our version.

      It seems likely that there will be a reasonable number of systems "in the wild" who will have PLplot installed so I'm inclined to think that this should be a blocker for the v11.0 release.

      If we are lucky people will have all upgraded their PLplot installs to v5.11.0 because in that version PLplot change the name of the library from libplplotd to libplplot and PSFEX has hard-wired the former rather than using pkg-config. This results in configure not finding PLplot. I don't think this eventuality is likely though.

        Attachments

          Activity

          Hide
          swinbank John Swinbank added a comment -

          It seems likely that there will be a reasonable number of systems "in the wild" who will have PLplot installed so I'm inclined to think that this should be a blocker for the v11.0 release.

          I agree (and therefore I don't think it should be priority "minor"). Sounds like an easy fix though.

          Show
          swinbank John Swinbank added a comment - It seems likely that there will be a reasonable number of systems "in the wild" who will have PLplot installed so I'm inclined to think that this should be a blocker for the v11.0 release. I agree (and therefore I don't think it should be priority "minor"). Sounds like an easy fix though.
          Hide
          tjenness Tim Jenness added a comment -

          Thanks. I didn't want to pre-judge the importance of the bug until a team or person was assigned.

          Show
          tjenness Tim Jenness added a comment - Thanks. I didn't want to pre-judge the importance of the bug until a team or person was assigned.
          Hide
          nlust Nate Lust added a comment -

          Fortunately there was a simple config option to turn off plplot. Please check if this fixes the issue for you.

          Show
          nlust Nate Lust added a comment - Fortunately there was a simple config option to turn off plplot. Please check if this fixes the issue for you.
          Hide
          tjenness Tim Jenness added a comment -

          Works for me. Thank you.

          Show
          tjenness Tim Jenness added a comment - Works for me. Thank you.
          Hide
          nlust Nate Lust added a comment -

          merged to master

          Show
          nlust Nate Lust added a comment - merged to master

            People

            • Assignee:
              nlust Nate Lust
              Reporter:
              tjenness Tim Jenness
              Reviewers:
              Tim Jenness
              Watchers:
              Frossie Economou, John Swinbank, Jonathan Sick, Nate Lust, Tim Jenness
            • Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Summary Panel