Hello simon, I don't know if there's an easier fix. But what I would do is to add a 'wrap-program' phase and use the 'wrap-program' procedure to create a wrapper to set the required environment variable at run-time. My guess is that 'LD_LIBRARY_PATH' should be set to:
(string-append (assoc-ref inputs "cairo") "/lib") Examples can be found in '(gnu packages bioinformatics)'. Cheers, Alex zimoun <zimon.touto...@gmail.com> writes: > Dear, > > I would like to try WeasyPrint [1] to convert some HTML docs to PDF > ones and maybe print them. Or maybe presentation etc. > > [1] https://weasyprint.org/ > > Well, excluding the check phase at first because some dependencies > does not seem clean with Python2/Python3. Anyway! > > it is almost straightforward with `guix import pypi -r weasyprint'. Awesome ! > (there is some tweaks in url: "cairosvg" -> "CairoSVG") > > However, the command `weasyprint` fails at run time. Because an issue > about `dlopen'. > > To be precise, and from my understanding, the culprit is these lines: > https://github.com/Kozea/cairocffi/blob/v1.0.2/cairocffi/__init__.py#L30-L31 > > In other word, ctypes.util.find_library('cairo') returns the expected > 'libcairo.so.2'. > But then it is not recognized by their `ffi.dlopen`. > And if the full path is provided then it works, e.g., > > ffi.dlopen('/gnu/store/13i02w6r4awyb5d4n8plk8m0idvryib0-cairo-1.14.12/lib/libcairo.so.2') > <Lib object for > '/gnu/store/13i02w6r4awyb5d4n8plk8m0idvryib0-cairo-1.14.12/lib/libcairo.so.2'> > > There is an old "similar" issue on the bug Nix tracker #7307 [2], > asking if `ctypes.util.find_library` should return full path (so apply > somehow a patch) or add another env variable. I do not know what is > the status now. > > [2] https://github.com/NixOS/nixpkgs/issues/7307 > > > My questions is: is there a fix for this kind of issue ? > I guess, it should happen with Python packages. > > If yes, what is the trick ? > If no, what should be the trick ? What do you think ? > > > Thank you for any pointer and/or comments. > > > All the best, > simon
signature.asc
Description: PGP signature