Janis Lesinskis' Blog

Assorted ramblings

  • All entries
  • About me
  • Projects
  • Economics
  • Misc
  • Software-engineering
  • Sports

TIL: Install options for pip in requirements.txt


So I was trying to install pygraphviz and I ran into the annoying issue where it couldn't find the path to the system install binaries.

Package libcgraph was not found in the pkg-config search path.
Perhaps you should add the directory containing `libcgraph.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libcgraph' found

Unfortunately as is the case with packages that aren't pure python you have to install extra libraries on the system path.

sudo apt-get install python-dev graphviz libgraphviz-dev pkg-config

I had no issues installing the binaries from the package manager, I confirmed they were on the path.

However the Python package still couldn't find them and searching in the pygraphviz GitHub issues I found this installation issue. The advice in that issue was to just add in install options from the command line. My heart immediately sank because I didn't know if this could be automated and I really hate manual requirement installs.

Thankfully since this pip PR you can specify install options in the requirements.txt file. So I did this as follows:

pygraphviz --install-option="--include-path=/usr/include/graphviz" --install-option="--library-path=/usr/lib/graphviz/"

Now I get the install to work as intended without needing to do any manual steps for the python package installation.

Unfortunately I'll probably need to set something else up to make sure the system wide binaries are installed though.

Published: Wed 14 February 2018
By Janis Lesinskis
In Software-engineering
Tags: pip python TIL

links

  • JaggedVerge

social

  • My GitHub page
  • LinkedIn

Proudly powered by Pelican, which takes great advantage of Python.