[poppler] cmake issues

Albert Astals Cid aacid at kde.org
Sun Sep 17 22:11:28 UTC 2017


El dilluns, 18 de setembre de 2017, a les 7:37:35 CEST, Adrian Johnson va 
escriure:
> On 18/09/17 04:19, Albert Astals Cid wrote:
> > El diumenge, 17 de setembre de 2017, a les 18:30:08 CEST, Adrian Johnson
> > va
> > 
> > escriure:
> >> On 06/09/17 03:03, Albert Astals Cid wrote:
> >>> El dimarts, 5 de setembre de 2017, a les 8:14:56 CEST, Adrian Johnson va
> >>> 
> >>> escriure:
> >>>> On 05/09/17 06:39, Albert Astals Cid wrote:
> >>>>> El dilluns, 4 de setembre de 2017, a les 7:52:39 CEST, Adrian Johnson
> >>>>> va
> >>> 
> >>> escriure:
> >>>>>> On 04/09/17 06:12, Albert Astals Cid wrote:
> >>>>>>> El diumenge, 3 de setembre de 2017, a les 14:24:16 CEST, Adrian
> >>>>>>> Johnson
> >>>>>>> va
> >>>>>>> 
> >>>>>>> escriure:
> >>>>>>>> I managed to get it working. See attached patch. The problem seems
> >>>>>>>> to
> >>>>>>>> be
> >>>>>>>> that pkg_check_modules does not return the absolute path of the
> >>>>>>>> shared
> >>>>>>>> libraries. There is a bug for this at
> >>>>>>>> https://cmake.org/Bug/view.php?id=15804.
> >>>>>>>> 
> >>>>>>>> Is there a better way to handle this?
> >>>>>>> 
> >>>>>>> That's a really weird patch, cna you tell me exactly how is your
> >>>>>>> setup
> >>>>>>> so
> >>>>>>> i
> >>>>>>> can try reproducing the problem you have?
> >>>>>> 
> >>>>>> Attached is a script to reproduce it. It downloads and installs the
> >>>>>> latest cairo development snapshot to a custom prefix. Then patches
> >>>>>> poppler to use the new API in this version of cairo and tries to
> >>>>>> build
> >>>>>> it.
> >>>>> 
> >>>>> Another fix is using this patch.
> >>>> 
> >>>> That works. Although I thought I tried that before. Probably also needs
> >>>> freetype listed as I sometimes build freetype from git.
> >>> 
> >>> Ok, i'll commit, let's add freetype if needed when you can try that
> >>> scenario, maybe it's not needed (don't know if gtk libraries pulls
> >>> freetype).
> >> 
> >> So now I've run into the same problem with freetype. Cairo 1.15.8 uses
> >> FT_Get_Var_Design_Coordinates() if freetype >= 2.8.0. With these
> >> versions of cairo and freetype installed to a custom location and
> >> PKG_CONFIG_PATH pointing at them, linking pdftocairo fails because
> >> poppler has found my custom built cairo but is linking with the system
> >> freetype.
> >> 
> >> I tried adding FREETYPE_LIBRARIES to the target_link_libraries but this
> >> did not work. The problem seems to be poppler is using find_package() to
> >> find freetype. But find_package() doesn't use pkg-config and finds the
> >> system freetype instead.
> > 
> > Have you tried using FREETYPE_DIR as suggested in
> > /usr/share/cmake-3.7/Modules/FindFreetype.cmake
> > ?
> 
> That works. See attached patch.

The idea is that you do that yourself, not from cmake, i.e.

cmake -DFREETYPE_DIR=/somewhere/over/the/rainbow

Cheers,
  Albert

> 
> > Cheers,
> > 
> >   Albert
> >> 
> >> I changed CMakeLists.txt to use pkg_check_modules to find freetype. Now
> >> it finds my custom freetype but still tries to link with the system
> >> freetype because it doesn't have the absolute path to the freetype
> >> library. Which is due to this bug
> >> https://cmake.org/Bug/view.php?id=15804.
> >> 
> >> The attached patch works for me. Is there a standard cmake way of
> >> handling pkg-config based libraries in non standard locations? I expect
> >> the same problem will occur with every pkg-config based library we use
> >> 
> >>> Cheers,
> >>> 
> >>>   Albert
> >>>   
> >>>>> Seems less bad than the last one you sent (which tbh i didn't
> >>>>> undestand
> >>>>> at
> >>>>> all), no?
> >>>> 
> >>>> I was trying to avoid listing both "-lcairo" and
> >>>> /path/to/my/libcairo.so
> >>>> in the linker command line. FindCairo.cmake was using find_library to
> >>>> get the absolute path while FindGTK.cmake was not.
> >>>> 
> >>>>> Cheers,
> >>>>> 
> >>>>>   Albert
> >>>>> 
> >>>>> _______________________________________________
> >>>>> poppler mailing list
> >>>>> poppler at lists.freedesktop.org
> >>>>> https://lists.freedesktop.org/mailman/listinfo/poppler
> >>>> 
> >>>> _______________________________________________
> >>>> poppler mailing list
> >>>> poppler at lists.freedesktop.org
> >>>> https://lists.freedesktop.org/mailman/listinfo/poppler
> >>> 
> >>> _______________________________________________
> >>> poppler mailing list
> >>> poppler at lists.freedesktop.org
> >>> https://lists.freedesktop.org/mailman/listinfo/poppler
> > 
> > _______________________________________________
> > poppler mailing list
> > poppler at lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/poppler




More information about the poppler mailing list