django 频道安装错误

django channels install error

我正在尝试使用 Django 创建一对一 real-time 消息传递系统。通过搜索,我发现了 django-channels。所以我用 python 3.5 和最新的 Django 创建了一个虚拟环境,但是当我这样做时 pip install channels 我得到:

x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -g -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.5m -I/home/kshitij/Documents/projects/personal/maker/venv/include/python3.5m -c src/twisted/test/raiser.c -o build/temp.linux-x86_64-3.5/src/twisted/test/raiser.o

 #include "Python.h"
                    ^
compilation terminated.
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

可能是因为缺少 python headers 所以我做了:sudo apt-get install python3-dev 但它仍然显示相同的错误。我该怎么办?

pip version:    18
python version: 3.5
django version: 2.1

我尝试做 sudo apt-get install python3-dev 但得到:

 ImportError: cannot import name '_BACKCOMPAT_MAGIC_NUMBER'

最后一个错误可能表明您遇到的问题是由系统上安装的许多 python 版本引起的(参见 this answer)。您应该确保您的系统上没有不完整或损坏的 python 安装(您是否已经自己编译了 Python?)。另外,确保包python3安装正确,否则sudo apt-get install python3-dev无法成功。

此外,您可以尝试在您的系统上找到 Python.h。确保您系统上的每个 Python.h 都对应于一个有效的 python 设置(您可能有一个用于 python 2,另一个用于 python 3)。

  1. 验证您的 pip 不是 pip 而不是 pip3
  2. 您也可以尝试安装 sudo apt install python3.X-dev

对你来说,是sudo apt install python3.5-dev

尝试安装 Linux 编译器和 python3-dev:

sudo apt install gcc
sudo apt install python3-dev
pip install channels