2

I use the following configuration to compile the Poppler library on my Mac OS-X 10.6 with Qt4.7.3:

./configure --enable-poppler-qt4 --enable-static --enable-poppler-cpp --enable-zlib

It configures successfully, then I make it and then make install it.

Then I try to use the static lib in my application as follows:

INCLUDEPATH+=/user/local/include/poppler
LIBS+=/usr/local/lib/libpoppler-cpp.a
LIBS+=/usr/local/lib/libpoppler-qt4.a
LIBS+=/usr/local/lib/libpoppler.a
LIBS+=/usr/local/lib/libfontconfig.a

But when I compile my application, I get the following error messages:

Undefined symbols:
  "_FT_Get_Sfnt_Name_Count", referenced from:
      _FcFreeTypeQueryFace in libfontconfig.a(fcfreetype.o)
  "_FT_Outline_Get_CBox", referenced from:
      SplashFTFont::makeGlyph(int, int, int, SplashGlyphBitmap*, int, int, SplashClip*, SplashClipResult*)in libpoppler.a(SplashFTFont.o)
  "_FT_Library_Version", referenced from:
      SplashFTFontEngine::SplashFTFontEngine(bool, bool, bool, FT_LibraryRec_*)in libpoppler.a(SplashFTFontEngine.o)
  "_XML_SetUserData", referenced from:
      _FcConfigParseAndLoad in libfontconfig.a(fcxml.o)
  "_FT_Done_Face", referenced from:
      _FcFreeTypeQuery in libfontconfig.a(fcfreetype.o)
      SplashFTFontFile::~SplashFTFontFile()in libpoppler.a(SplashFTFontFile.o)
      SplashFTFontFile::~SplashFTFontFile()in libpoppler.a(SplashFTFontFile.o)
  "QDomDocument::createCDATASection(QString const&)", referenced from:
      Poppler::Annotation::store(QDomNode&, QDomDocument&) constin libpoppler-qt4.a(libpoppler_qt4_la-poppler-annotation.o)
      Poppler::TextAnnotation::store(QDomNode&, QDomDocument&) constin libpoppler-qt4.a(libpoppler_qt4_la-poppler-annotation.o)
  "_FT_Load_Glyph", referenced from:
      _FcFreeTypeCheckGlyph in libfontconfig.a(fcfreetype.o)
      SplashFTFont::getGlyphAdvance(int)    in libpoppler.a(SplashFTFont.o)
      SplashFTFont::getGlyphPath(int)    in libpoppler.a(SplashFTFont.o)
      SplashFTFont::makeGlyph(int, int, int, SplashGlyphBitmap*, int, int, SplashClip*, SplashClipResult*)in libpoppler.a(SplashFTFont.o)
  "QDomNode::appendChild(QDomNode const&)", referenced from:
      Poppler::DocumentData::addTocChildren(QDomDocument*, QDomNode*, GooList*)     in libpoppler-qt4.a(libpoppler_qt4_la-poppler-private.o)
      Poppler::Annotation::store(QDomNode&, QDomDocument&) constin libpoppler-qt4.a(libpoppler_qt4_la-poppler-annotation.o)
      Poppler::Annotation::store(QDomNode&, QDomDocument&) constin libpoppler-qt4.a(libpoppler_qt4_la-poppler-annotation.o)
      Poppler::Annotation::store(QDomNode&, QDomDocument&) constin libpoppler-qt4.a(libpoppler_qt4_la-poppler-annotation.o)
      Poppler::Annotation::store(QDomNode&, QDomDocument&) constin libpoppler-qt4.a(libpoppler_qt4_la-poppler-annotation.o)
      Poppler::Annotation::store(QDomNode&, QDomDocument&) constin libpoppler-qt4.a(libpoppler_qt4_la-poppler-annotation.o)
      Poppler::Annotation::store(QDomNode&, QDomDocument&) constin libpoppler-qt4.a(libpoppler_qt4_la-poppler-annotation.o)
      Poppler::Annotation::store(QDomNode&, QDomDocument&) constin libpoppler-qt4.a(libpoppler_qt4_la-poppler-annotation.o)
      Poppler::Annotation::store(QDomNode&, QDomDocument&) constin libpoppler-qt4.a(libpoppler_qt4_la-poppler-annotation.o)
      Poppler::MovieAnnotation::store(QDomNode&, QDomDocument&) constin libpoppler-qt4.a(libpoppler_qt4_la-poppler-annotation.o)
      Poppler::SoundAnnotation::store(QDomNode&, QDomDocument&) constin libpoppler-qt4.a(libpoppler_qt4_la-poppler-annotation.o)
      Poppler::FileAttachmentAnnotation::store(QDomNode&, QDomDocument&) constin libpoppler-qt4.a(libpoppler_qt4_la-poppler-annotation.o)

Am I wrong in either the configuration command or the INCLUDE/LIBPATH variables? Or is there something else going wrong?

Adam Lear
  • 38,111
  • 12
  • 81
  • 101
  • If this is the exact code that you used, isn't there a typo in '/user/local/include/poppler'? Shouldn't it be '/usr/local/include/poppler'? – landroni Nov 02 '12 at 09:29

1 Answers1

0

Poppler has several dependencies which can be listed using the following command:

 otool -L /opt/local/lib/libpoppler.19.dylib

There are one or two people with similar issues, as well as third with historical insight.

Paul Sweatte
  • 24,148
  • 7
  • 127
  • 265