为 pyenv + virtualenv 生成 python3-config

Generate python3-config for pyenv + virtualenv

我正在尝试编译一个库,该库将 python3-config 的路径作为其参数之一,即 -DPYTHON_CONFIG=python3-config 然后根据其内容设置各种编译器标志。这个文件存在于我的机器上 python 3.6 因为这是系统版本,但我正在尝试使用 python 3.7.1 pyenv+virtualenv 构建库所以我需要生成相应的 python3-config 对于每个特定的 python 环境。我怎样才能做到这一点?到目前为止我所发现的是这个文件是由 sudo apt-get install python-dev

生成的

编辑:我发现 /home/david/.pyenv/shims/python/python3-config 中存在 pyenv python3-config,但此版本比 /usr/bin/python3-config

中的版本小得多

我自己想出来的

假设 pyenv 以推荐的方式安装,并且 python 3.7.1 使用 pyenv 安装,那么所需的 binconfig 的路径是:

~/.pyenv/versions/3.7.1/bin/python3.7

~/.pyenv/versions/3.7.1/bin/python3.7-config

python3.7-config 是一个脚本,它采用 --includes 和 returns 构建系统需要构建的信息以及 link 指定的 python 扩展pyenv,即

$ ~/.pyenv/versions/3.7.1/bin/python3.7-config --includes

-I/home/david/.pyenv/versions/3.7.1/include/python3.7m