Kevin
Kevin

Reputation: 197

How to let python3 import graph-tool installed by Homebrew?

I tried to use Homebrew to install graph-tool, but the python3 cannot find it.

    brew tap homebrew/science
    brew install graph-tool

It is said that the package is installed in homebrew/science/graph-tool-2.22_1, where I only found /usr/local/Homebrew/Library/Taps/homebrew/homebrew-science/graph-tool.rb.

When I tried to import graph-tool in python3, it shows that from graph_tool.all import * ImportError: No module named 'graph_tool'

I am using python3.

which python3 /usr/local/bin/python3

Is there a way I can use the graph_tool package installed in Homebrew?

Any help would be appreciated.

Upvotes: 10

Views: 6673

Answers (3)

Wei
Wei

Reputation: 1282

I was in a virtualenv when this happened to me. Make sure homebrew installs graph-tool with the same python version you want to use for your virtualenv, then recreating the virtualenv with --system-site-packages will allow it to access system packages, including graph-tool installed through homebrew.

See: https://github.com/Homebrew/homebrew-science/issues/5741

Upvotes: -1

NatKost
NatKost

Reputation: 61

Another solution that worked for me is simply creating a symlink from graph-tool to python side packages

ln -s /usr/local/Cellar/graph-tool/2.26_2/lib/python3.6/site-packages/graph_tool /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages

Upvotes: 6

Kevin
Kevin

Reputation: 197

A quick solution.

To Check brew installed package path in the console,

brew --prefix graph-tool

Then at the beginning of the code, append the path.

    import sys
    sys.path.append('/usr/local/Cellar/graph-tool/2.22_1/lib/python2.7/site-packages/')
    from graph_tool.all import *

Upvotes: 4

Related Questions