我已经在Ubuntu 18.04.3机器上安装了pybind11(几种不同的方式,包括pip和包管理器(,但当我尝试指定include文件时,推荐的方式是:
python3 -m pybind11 --includes
我得到这个错误:
/usr/bin/python3: No module named pybind11.__main__; 'pybind11' is a package and cannot be directly executed
我唯一发现这个错误的地方是一个中文网页,它对解决问题没有帮助。如何让pybind11工作?
回答以下一些问题:
>>> import pybind11; print(pybind11.__file__)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: module 'pybind11' has no attribute '__file__'
> python3 -m pip install pybind11
WARNING: The directory '/home/<username>/.cache/pip' or its parent directory is not owned or is not writable by the current user. The cache has been disabled. Check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
Requirement already satisfied: pybind11 in /usr/local/lib/python3.6/dist-packages (2.5.0)
> sudo pip3 -V
pip 20.0.2 from /usr/local/lib/python3.6/dist-packages/pip (python 3.6)
> python3 -V
Python 3.6.8
尝试此命令。
export PYTHONPATH=$PYTHONPATH:/home/xxx/pybind11