pdf2htmlEX icon indicating copy to clipboard operation
pdf2htmlEX copied to clipboard

Unable to compile pdf2htmlEX (poppler-0.81.0)

Open pcdinh opened this issue 6 years ago • 5 comments

Hi,

I am unable to compile pdf2htmlEX

Here are errors that I got

[ 10%] Building CXX object CMakeFiles/pdf2htmlEX.dir/3rdparty/poppler/git/CairoFontEngine.cc.o
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:43:0:
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:144:8: error: ‘void CairoOutputDev::setDefaultCTM(const double*)’ marked ‘override’, but does not override
   void setDefaultCTM(const double *ctm) override;
        ^~~~~~~~~~~~~
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:168:8: error: ‘bool CairoOutputDev::tilingPatternFill(GfxState*, Gfx*, Catalog*, Object*, const double*, int, int, Dict*, const double*, const double*, int, int, int, int, double, double)’ marked ‘override’, but does not override
   bool tilingPatternFill(GfxState *state, Gfx *gfx, Catalog *cat, Object *str,
        ^~~~~~~~~~~~~~~~~
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:190:8: error: ‘void CairoOutputDev::beginString(GfxState*, const GooString*)’ marked ‘override’, but does not override
   void beginString(GfxState *state, const GooString *s) override;
        ^~~~~~~~~~~
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:196:8: error: ‘void CairoOutputDev::beginActualText(GfxState*, const GooString*)’ marked ‘override’, but does not override
   void beginActualText(GfxState *state, const GooString *text) override;
        ^~~~~~~~~~~~~~~
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:243:8: error: ‘void CairoOutputDev::beginTransparencyGroup(GfxState*, const double*, GfxColorSpace*, bool, bool, bool)’ marked ‘override’, but does not override
   void beginTransparencyGroup(GfxState * /*state*/, const double * /*bbox*/,
        ^~~~~~~~~~~~~~~~~~~~~~
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:249:8: error: ‘void CairoOutputDev::paintTransparencyGroup(GfxState*, const double*)’ marked ‘override’, but does not override
   void paintTransparencyGroup(GfxState * /*state*/, const double * /*bbox*/) override;
        ^~~~~~~~~~~~~~~~~~~~~~
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:250:8: error: ‘void CairoOutputDev::setSoftMask(GfxState*, const double*, bool, Function*, GfxColor*)’ marked ‘override’, but does not override
   void setSoftMask(GfxState * /*state*/, const double * /*bbox*/, bool /*alpha*/,
        ^~~~~~~~~~~
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:38:0,
                 from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:43:
/usr/local/include/poppler/OutputDev.h:131:16: warning: ‘virtual void OutputDev::setDefaultCTM(double*)’ was hidden [-Woverloaded-virtual]
   virtual void setDefaultCTM(double *ctm);
                ^~~~~~~~~~~~~
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:43:0:
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:144:8: warning:   by ‘void CairoOutputDev::setDefaultCTM(const double*)’ [-Woverloaded-virtual]
   void setDefaultCTM(const double *ctm) override;
        ^~~~~~~~~~~~~
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:38:0,
                 from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:43:
/usr/local/include/poppler/OutputDev.h:220:17: warning: ‘virtual GBool OutputDev::tilingPatternFill(GfxState*, Gfx*, Catalog*, Object*, double*, int, int, Dict*, double*, double*, int, int, int, int, double, double)’ was hidden [-Woverloaded-virtual]
   virtual GBool tilingPatternFill(GfxState * /*state*/, Gfx * /*gfx*/, Catalog * /*cat*/, Object * /*str*/,
                 ^~~~~~~~~~~~~~~~~
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:43:0:
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:168:8: warning:   by ‘bool CairoOutputDev::tilingPatternFill(GfxState*, Gfx*, Catalog*, Object*, const double*, int, int, Dict*, const double*, const double*, int, int, int, int, double, double)’ [-Woverloaded-virtual]
   bool tilingPatternFill(GfxState *state, Gfx *gfx, Catalog *cat, Object *str,
        ^~~~~~~~~~~~~~~~~
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:38:0,
                 from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:43:
/usr/local/include/poppler/OutputDev.h:250:16: warning: ‘virtual void OutputDev::beginString(GfxState*, GooString*)’ was hidden [-Woverloaded-virtual]
   virtual void beginString(GfxState * /*state*/, GooString * /*s*/) {}
                ^~~~~~~~~~~
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:43:0:
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:190:8: warning:   by ‘void CairoOutputDev::beginString(GfxState*, const GooString*)’ [-Woverloaded-virtual]
   void beginString(GfxState *state, const GooString *s) override;
        ^~~~~~~~~~~
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:38:0,
                 from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:43:
/usr/local/include/poppler/OutputDev.h:274:16: warning: ‘virtual void OutputDev::beginActualText(GfxState*, GooString*)’ was hidden [-Woverloaded-virtual]
   virtual void beginActualText(GfxState * /*state*/, GooString * /*text*/ ) {}
                ^~~~~~~~~~~~~~~
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:43:0:
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:196:8: warning:   by ‘void CairoOutputDev::beginActualText(GfxState*, const GooString*)’ [-Woverloaded-virtual]
   void beginActualText(GfxState *state, const GooString *text) override;
        ^~~~~~~~~~~~~~~
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:38:0,
                 from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:43:
/usr/local/include/poppler/OutputDev.h:336:16: warning: ‘virtual void OutputDev::beginTransparencyGroup(GfxState*, double*, GfxColorSpace*, GBool, GBool, GBool)’ was hidden [-Woverloaded-virtual]
   virtual void beginTransparencyGroup(GfxState * /*state*/, double * /*bbox*/,
                ^~~~~~~~~~~~~~~~~~~~~~
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:43:0:
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:243:8: warning:   by ‘void CairoOutputDev::beginTransparencyGroup(GfxState*, const double*, GfxColorSpace*, bool, bool, bool)’ [-Woverloaded-virtual]
   void beginTransparencyGroup(GfxState * /*state*/, const double * /*bbox*/,
        ^~~~~~~~~~~~~~~~~~~~~~
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:38:0,
                 from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:43:
/usr/local/include/poppler/OutputDev.h:341:16: warning: ‘virtual void OutputDev::paintTransparencyGroup(GfxState*, double*)’ was hidden [-Woverloaded-virtual]
   virtual void paintTransparencyGroup(GfxState * /*state*/, double * /*bbox*/) {}
                ^~~~~~~~~~~~~~~~~~~~~~
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:43:0:
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:249:8: warning:   by ‘void CairoOutputDev::paintTransparencyGroup(GfxState*, const double*)’ [-Woverloaded-virtual]
   void paintTransparencyGroup(GfxState * /*state*/, const double * /*bbox*/) override;
        ^~~~~~~~~~~~~~~~~~~~~~
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:38:0,
                 from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:43:
/usr/local/include/poppler/OutputDev.h:342:16: warning: ‘virtual void OutputDev::setSoftMask(GfxState*, double*, GBool, Function*, GfxColor*)’ was hidden [-Woverloaded-virtual]
   virtual void setSoftMask(GfxState * /*state*/, double * /*bbox*/, GBool /*alpha*/,
                ^~~~~~~~~~~
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:43:0:
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:250:8: warning:   by ‘void CairoOutputDev::setSoftMask(GfxState*, const double*, bool, Function*, GfxColor*)’ [-Woverloaded-virtual]
   void setSoftMask(GfxState * /*state*/, const double * /*bbox*/, bool /*alpha*/,
        ^~~~~~~~~~~
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:427:8: error: ‘void CairoImageOutputDev::setDefaultCTM(const double*)’ marked ‘override’, but does not override
   void setDefaultCTM(const double *ctm) override { }
        ^~~~~~~~~~~~~
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:450:8: error: ‘bool CairoImageOutputDev::tilingPatternFill(GfxState*, Gfx*, Catalog*, Object*, const double*, int, int, Dict*, const double*, const double*, int, int, int, int, double, double)’ marked ‘override’, but does not override
   bool tilingPatternFill(GfxState *state, Gfx *gfx, Catalog *cat, Object *str,
        ^~~~~~~~~~~~~~~~~
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:495:8: error: ‘void CairoImageOutputDev::beginTransparencyGroup(GfxState*, const double*, GfxColorSpace*, bool, bool, bool)’ marked ‘override’, but does not override
   void beginTransparencyGroup(GfxState * /*state*/, const double * /*bbox*/,
        ^~~~~~~~~~~~~~~~~~~~~~
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:500:8: error: ‘void CairoImageOutputDev::paintTransparencyGroup(GfxState*, const double*)’ marked ‘override’, but does not override
   void paintTransparencyGroup(GfxState * /*state*/, const double * /*bbox*/) override {}
        ^~~~~~~~~~~~~~~~~~~~~~
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:501:8: error: ‘void CairoImageOutputDev::setSoftMask(GfxState*, const double*, bool, Function*, GfxColor*)’ marked ‘override’, but does not override
   void setSoftMask(GfxState * /*state*/, const double * /*bbox*/, bool /*alpha*/,
        ^~~~~~~~~~~
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:38:0,
                 from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:43:
/usr/local/include/poppler/OutputDev.h:131:16: warning: ‘virtual void OutputDev::setDefaultCTM(double*)’ was hidden [-Woverloaded-virtual]
   virtual void setDefaultCTM(double *ctm);
                ^~~~~~~~~~~~~
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:43:0:
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:427:8: warning:   by ‘void CairoImageOutputDev::setDefaultCTM(const double*)’ [-Woverloaded-virtual]
   void setDefaultCTM(const double *ctm) override { }
        ^~~~~~~~~~~~~
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:38:0,
                 from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:43:
/usr/local/include/poppler/OutputDev.h:220:17: warning: ‘virtual GBool OutputDev::tilingPatternFill(GfxState*, Gfx*, Catalog*, Object*, double*, int, int, Dict*, double*, double*, int, int, int, int, double, double)’ was hidden [-Woverloaded-virtual]
   virtual GBool tilingPatternFill(GfxState * /*state*/, Gfx * /*gfx*/, Catalog * /*cat*/, Object * /*str*/,
                 ^~~~~~~~~~~~~~~~~
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:43:0:
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:450:8: warning:   by ‘bool CairoImageOutputDev::tilingPatternFill(GfxState*, Gfx*, Catalog*, Object*, const double*, int, int, Dict*, const double*, const double*, int, int, int, int, double, double)’ [-Woverloaded-virtual]
   bool tilingPatternFill(GfxState *state, Gfx *gfx, Catalog *cat, Object *str,
        ^~~~~~~~~~~~~~~~~
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:38:0,
                 from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:43:
/usr/local/include/poppler/OutputDev.h:336:16: warning: ‘virtual void OutputDev::beginTransparencyGroup(GfxState*, double*, GfxColorSpace*, GBool, GBool, GBool)’ was hidden [-Woverloaded-virtual]
   virtual void beginTransparencyGroup(GfxState * /*state*/, double * /*bbox*/,
                ^~~~~~~~~~~~~~~~~~~~~~
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:43:0:
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:495:8: warning:   by ‘void CairoImageOutputDev::beginTransparencyGroup(GfxState*, const double*, GfxColorSpace*, bool, bool, bool)’ [-Woverloaded-virtual]
   void beginTransparencyGroup(GfxState * /*state*/, const double * /*bbox*/,
        ^~~~~~~~~~~~~~~~~~~~~~
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:38:0,
                 from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:43:
/usr/local/include/poppler/OutputDev.h:341:16: warning: ‘virtual void OutputDev::paintTransparencyGroup(GfxState*, double*)’ was hidden [-Woverloaded-virtual]
   virtual void paintTransparencyGroup(GfxState * /*state*/, double * /*bbox*/) {}
                ^~~~~~~~~~~~~~~~~~~~~~
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:43:0:
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:500:8: warning:   by ‘void CairoImageOutputDev::paintTransparencyGroup(GfxState*, const double*)’ [-Woverloaded-virtual]
   void paintTransparencyGroup(GfxState * /*state*/, const double * /*bbox*/) override {}
        ^~~~~~~~~~~~~~~~~~~~~~
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:38:0,
                 from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:43:
/usr/local/include/poppler/OutputDev.h:342:16: warning: ‘virtual void OutputDev::setSoftMask(GfxState*, double*, GBool, Function*, GfxColor*)’ was hidden [-Woverloaded-virtual]
   virtual void setSoftMask(GfxState * /*state*/, double * /*bbox*/, GBool /*alpha*/,
                ^~~~~~~~~~~
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:43:0:
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoOutputDev.h:501:8: warning:   by ‘void CairoImageOutputDev::setSoftMask(GfxState*, const double*, bool, Function*, GfxColor*)’ [-Woverloaded-virtual]
   void setSoftMask(GfxState * /*state*/, const double * /*bbox*/, bool /*alpha*/,
        ^~~~~~~~~~~
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc: In member function ‘virtual bool CairoFont::matches(Ref&, bool)’:
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:83:17: error: no match for ‘operator==’ (operand types are ‘Ref’ and ‘Ref’)
   return (other == ref);
           ~~~~~~^~~~~~
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc: In static member function ‘static CairoFreeTypeFont* CairoFreeTypeFont::create(GfxFont*, XRef*, FT_Library, bool)’:
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:420:47: error: ‘class GooString’ has no member named ‘c_str’
      gfxFont->getName() ? gfxFont->getName()->c_str()
                                               ^~~~~
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:439:27: error: ‘class GooString’ has no member named ‘c_str’
     fileNameC = fileName->c_str();
                           ^~~~~
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:488:42: error: invalid conversion from ‘const char*’ to ‘char*’ [-fpermissive]
         ff = FoFiTrueType::load(fileNameC);
                                          ^
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:45:0:
/usr/local/include/poppler/fofi/FoFiTrueType.h:54:24: note:   initializing argument 1 of ‘static FoFiTrueType* FoFiTrueType::load(char*, int)’
   static FoFiTrueType *load(char *fileName, int faceIndexA=0);
                        ^~~~
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:502:40: error: invalid conversion from ‘const char*’ to ‘char*’ [-fpermissive]
       ff = FoFiTrueType::load(fileNameC);
                                        ^
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:45:0:
/usr/local/include/poppler/fofi/FoFiTrueType.h:54:24: note:   initializing argument 1 of ‘static FoFiTrueType* FoFiTrueType::load(char*, int)’
   static FoFiTrueType *load(char *fileName, int faceIndexA=0);
                        ^~~~
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:531:42: error: invalid conversion from ‘const char*’ to ‘char*’ [-fpermissive]
         ff1c = FoFiType1C::load(fileNameC);
                                          ^
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:46:0:
/usr/local/include/poppler/fofi/FoFiType1C.h:154:22: note:   initializing argument 1 of ‘static FoFiType1C* FoFiType1C::load(char*)’
   static FoFiType1C *load(char *fileName);
                      ^~~~
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:563:37: error: invalid conversion from ‘const char*’ to ‘char*’ [-fpermissive]
    ff = FoFiTrueType::load(fileNameC);
                                     ^
In file included from /tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:45:0:
/usr/local/include/poppler/fofi/FoFiTrueType.h:54:24: note:   initializing argument 1 of ‘static FoFiTrueType* FoFiTrueType::load(char*, int)’
   static FoFiTrueType *load(char *fileName, int faceIndexA=0);
                        ^~~~
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc: In member function ‘virtual bool CairoType3Font::matches(Ref&, bool)’:
/tmp/pdf2htmlEX/3rdparty/poppler/git/CairoFontEngine.cc:786:17: error: no match for ‘operator==’ (operand types are ‘Ref’ and ‘Ref’)
   return (other == ref && printing == printingA);
           ~~~~~~^~~~~~
CMakeFiles/pdf2htmlEX.dir/build.make:62: recipe for target 'CMakeFiles/pdf2htmlEX.dir/3rdparty/poppler/git/CairoFontEngine.cc.o' failed
make[2]: *** [CMakeFiles/pdf2htmlEX.dir/3rdparty/poppler/git/CairoFontEngine.cc.o] Error 1
CMakeFiles/Makefile2:355: recipe for target 'CMakeFiles/pdf2htmlEX.dir/all' failed
make[1]: *** [CMakeFiles/pdf2htmlEX.dir/all] Error 2
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2


Here is how I installed dependant libraries:

sudo apt-get install -y libpng16-16 libpng-dev libjpeg8 libjpeg8-dev libopenjp2-7-dev

sudo apt-get install -y build-essential checkinstall git cmake m4 pkg-config libopenjp2-7-dev libopenjp2-7 \
libgdk-pixbuf2.0-dev fontconfig libpoppler-dev libpoppler-private-dev \
libfontconfig1-dev libfontforge-dev poppler-data poppler-utils libcairo2-dev libfontforge-dev libpango1.0-dev



cd /tmp
wget https://poppler.freedesktop.org/poppler-0.81.0.tar.xz && tar -xvf poppler-0.81.0.tar.xz
cd poppler-0.81.0
sudo cmake -DENABLE_XPDF_HEADERS=ON .
sudo make -j 4 && sudo make install

sudo pkg-config --libs poppler

cd /tmp
git clone https://github.com/pdf2htmlEX/pdf2htmlEX.git
export INCLUDE_PATH=$INCLUDE_PATH:/usr/local/include/poppler/
cd pdf2htmlEX
cmake .
make -j4
sudo make install

Any idea on how to solve the issue?

Thanks

pcdinh avatar Oct 11 '19 08:10 pcdinh

Can you take a look at our releases page and ensure you are using the correct branch that corresponds to your Ubuntu and poppler versions?

https://github.com/pdf2htmlEX/pdf2htmlEX/releases

Rockstar04 avatar Oct 11 '19 11:10 Rockstar04

@pcdinh,

I think your problem is that you are mixing the headers from two different popper versions. This will of course not work.

I have just attempted to recreate your problem on a newly created Ubuntu 19.04 server (amd_64) using the commands you list above.

Unfortunately I could not even get as far as you did. We must have different $INCLUDE_PATH definitions. My errors begin by the compiler's inability to find the poppler-config.h header file. Since you did not have this problem, I can only assume you have the location of poppler-config.h in either your $INCLUDE_PATH or that your cmake has included it somehow into your make file.

I note that the way you installed your locally compiled version of poppler will not install the poppler-config.h file (or rather it did not on my new machine).

However, I notice that on my newly created machine, the only place that the header file poppler-config.h exists is in the /usr/include/poppler directory which (unless you have done things you have not mentioned) should contain the poppler header files from the libpopper-dev/libpoppler-private-dev packages on your machine. Since Debian has not yet released any poppler packages corresponding to poppler-0.81.0, these header files will be some other release.

SO: you must be very careful that you do not mix the poppler header files between two different releases.

You can see how I build and install popper by looking at the building/awsEC2/scripts/dobuildPoppler and building/awsEC2/scripts/doinstallPoppler scripts in the companion pdf2htmlEX/buildAndPackagingTools/ project. Please note that I explicitly copy the poppler headers over top of any existing header files. OR alternatively you could copy them all to a new location (such as /usr/loca/include) and then ensure that only these header files are used to compile phf2htmlEX.

stephengaito avatar Oct 12 '19 12:10 stephengaito

Can you take a look at our releases page and ensure you are using the correct branch that corresponds to your Ubuntu and poppler versions?

https://github.com/pdf2htmlEX/pdf2htmlEX/releases

I followed the guide in the link above and got

 ./dobuild
Trying to locate cairo-svg...
-- Configuring done
-- Generating done
-- Build files have been written to: /tmp/pdf2htmlEX
make: *** No targets specified and no makefile found.  Stop.
sudo ./doinstall
This installation assumes you have 'sudo' privileges
Type ctrl-c now if DO NOT want to continue
Type anything else to continue:
make: *** No rule to make target 'install'.  Stop.

Any idea on what is wrong here?

My system:

lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 18.04.3 LTS
Release:        18.04
Codename:       bionic

pcdinh avatar Oct 14 '19 07:10 pcdinh

@stephengaito Thanks for pointing it out. I am trying to remove all poppler installation in my system to see how it works

pcdinh avatar Oct 14 '19 07:10 pcdinh

So I removed all poppler installations

sudo apt remove libpoppler-dev libpoppler-private-dev  poppler-data poppler-utils

Also remove

/usr/local/include/poppler
/usr/lib/x86_64-linux-gnu/libpoppler*
/usr/local/lib/libpoppler*
/usr/local/lib/pkgconfig/poppler*
/usr/share/doc/libpoppler73
/usr/share/doc/poppler-data
/usr/share/poppler
/usr/share/pkgconfig/poppler*

Also I found that there is a lot of header files in /usr/include/poppler which was installed there since December 12, 2017. I have no idea why I got those files there. Apparently they made my system a mess because as you pointed out, compiling poppler 0.81.0 from source will not overwrite those header files. I must do it manually. The script https://github.com/pdf2htmlEX/buildAndPackagingTools/blob/master/building/awsEC2/scripts/doinstallPoppler is very helpful. Thank a lot for that.

After having all necessary poppler header files installed, I need to add the following line into CMakeLists.txt (in /pdf2htmlEX)

include_directories("/usr/include/poppler/")

before I am able to compile and install pdf2htmlEX

Thanks

pcdinh avatar Oct 14 '19 08:10 pcdinh