When trying to install ipython and dependencies of its notebook feature via pip, I was stuck. Even I’d already installed pyzmq, I still got this message:

ImportError: IPython.zmq requires pyzmq

It was quite frustrating, until I found this post on StackOverflow.

So it turns out this can be solved by just install pyzmq using an extra parameter:

pip install pyzmq --install-option="--zmq=bundled"