安装bitarray时出错。编译器错误?

0 投票
1 回答
3018 浏览
提问于 2025-04-17 21:24

我需要在我的Ubuntu机器上安装bitarray,但按照描述的方法都不行。也许有人知道哪里出了问题。看起来它试图把Python文件当作C代码来运行?

sudo pip install bitarray

正在下载/解压bitarray 下载bitarray-0.8.1.tar.gz (46kB): 已下载46kB 正在运行setup.py (路径:/tmp/pip_build_root/bitarray/setup.py) 获取bitarray包的信息 安装收集到的包:bitarray 正在运行setup.py 安装bitarray 构建'bitarray._bitarray'扩展 gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.6 -c bitarray/_bitarray.c -o build/temp.linux-i686-2.6/bitarray/_bitarray.o bitarray/_bitarray.c:9:20: 错误: 找不到Python.h文件 bitarray/_bitarray.c:71: 错误: 在‘PyObject_VAR_HEAD’之前预期有说明符-限定符列表 bitarray/_bitarray.c:82: 错误: 在‘Bitarraytype’之前预期有‘=’,‘,’,‘;’,‘asm’或‘attribute

... 之后继续出现:

错误: 命令'gcc'失败,退出状态为1

---------------------------------------- 清理中... 命令 /usr/bin/python -c "import setuptools, tokenize;file='/tmp/pip_build_root/bitarray/setup.py';exec(compile(getattr(tokenize, 'open', open)(file).read().replace('\r\n', '\n'), file, 'exec'))" install --record /tmp/pip-ABVXsZ-record/install-record.txt --single-version-externally-managed --compile 失败,错误代码为1,位于/tmp/pip_build_root/bitarray 追踪(最近的调用在最后):
文件"/usr/local/bin/pip",第11行, sys.exit(main()) 文件"/usr/local/lib/python2.6/dist-packages/pip/init.py",第185行, main return command.main(cmd_args) 文件"/usr/local/lib/python2.6/dist-packages/pip/basecommand.py",第161行, 在main text = '\n'.join(complete_log) UnicodeDecodeError: 'ascii' 编码无法解码字节0xe2,位置77: 序号不在范围内(128)

1 个回答

0

Unicode解码错误:'ascii' 编码无法解码位置77的字节0xe2:序号不在范围(128)内

试着设置一下环境变量。在安装之前,在命令行中输入以下内容:

PYTHONIOENCODING=utf_8

export PYTHONIOENCODING

撰写回答