1

我正在尝试在运行Arch Linux ARM的 Raspberry Pi 模型 1B 上安装枕头 6.2.1 (在最坏的情况下,我可以购买更新的树莓派,但这个项目的重点是升级旧的 Pi)。

我尝试以标准方式安装

pip install pillow==6.2.1

但是编译器内存不足所以我然后跑了

pip --no-cache-dir install pillow==6.2.1

这产生了下面给出的不同错误。

我不知道如何解释这个错误

gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -march=armv6 -mfloat-abi=hard -mfpu=vfp -O3 -pipe -fstack-protector-strong -fno-plt -fno-semantic-interposition -march=armv6 -mfloat-abi=hard -mfpu=vfp -O3 -pipe -fstack-protector-strong -fno-plt -march=armv6 -mfloat-abi=hard -mfpu=vfp -O3 -pipe -fstack-protector-strong -fno-plt -fPIC -DHAVE_LIBJPEG -DHAVE_LIBZ -DPILLOW_VERSION="6.2.1" -I/tmp/pip-install-yqwi0r_s/pillow/src/libImaging -I/tmp/pip-install-yqwi0r_s/pillow -I/usr/include -I/usr/local/include -I/usr/include/python3.8 -c src/_imaging.c -o build/temp.linux-armv6l-3.8/src/_imaging.o
src/_imaging.c: In function '_set_blocks_max':
src/_imaging.c:3697:26: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
 3697 |     else if ( blocks_max > SIZE_MAX/sizeof(ImagingDefaultArena.blocks_pool[0])) {
      |                          ^
{standard input}: Assembler messages:
{standard input}:21669: Warning: end of file not at end of a line; newline inserted
{standard input}:21792: Error: found '
', expected: ')'
{standard input}: Error: open CFI at the end of file; missing .cfi_endproc directive
gcc: fatal error: Killed signal terminated program cc1
compilation terminated.
building 'PIL._imagingtk' extension
creating build/temp.linux-armv6l-3.8/src/Tk
gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -march=armv6 -mfloat-abi=hard -mfpu=vfp -O3 -pipe -fstack-protector-strong -fno-plt -fno-semantic-interposition -march=armv6 -mfloat-abi=hard -mfpu=vfp -O3 -pipe -fstack-protector-strong -fno-plt -march=armv6 -mfloat-abi=hard -mfpu=vfp -O3 -pipe -fstack-protector-strong -fno-plt -fPIC -Isrc/Tk -I/tmp/pip-install-yqwi0r_s/pillow/src/libImaging -I/tmp/pip-install-yqwi0r_s/pillow -I/usr/include -I/usr/local/include -I/usr/include/python3.8 -c src/_imagingtk.c -o build/temp.linux-armv6l-3.8/src/_imagingtk.o
gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -march=armv6 -mfloat-abi=hard -mfpu=vfp -O3 -pipe -fstack-protector-strong -fno-plt -fno-semantic-interposition -march=armv6 -mfloat-abi=hard -mfpu=vfp -O3 -pipe -fstack-protector-strong -fno-plt -march=armv6 -mfloat-abi=hard -mfpu=vfp -O3 -pipe -fstack-protector-strong -fno-plt -fPIC -Isrc/Tk -I/tmp/pip-install-yqwi0r_s/pillow/src/libImaging -I/tmp/pip-install-yqwi0r_s/pillow -I/usr/include -I/usr/local/include -I/usr/include/python3.8 -c src/Tk/tkImaging.c -o build/temp.linux-armv6l-3.8/src/Tk/tkImaging.o
gcc -pthread -shared -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -fno-semantic-interposition -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now build/temp.linux-armv6l-3.8/src/_imagingtk.o build/temp.linux-armv6l-3.8/src/Tk/tkImaging.o -L/tmp/pip-install-yqwi0r_s/pillow -L/usr/lib -L/opt/vc/lib -L/usr/lib/openmpi -L/usr/lib/libfakeroot -L/usr/local/lib -L/usr/lib -o build/lib.linux-armv6l-3.8/PIL/_imagingtk.cpython-38-arm-linux-gnueabihf.so
building 'PIL._imagingmath' extension
gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -march=armv6 -mfloat-abi=hard -mfpu=vfp -O3 -pipe -fstack-protector-strong -fno-plt -fno-semantic-interposition -march=armv6 -mfloat-abi=hard -mfpu=vfp -O3 -pipe -fstack-protector-strong -fno-plt -march=armv6 -mfloat-abi=hard -mfpu=vfp -O3 -pipe -fstack-protector-strong -fno-plt -fPIC -I/tmp/pip-install-yqwi0r_s/pillow/src/libImaging -I/tmp/pip-install-yqwi0r_s/pillow -I/usr/include -I/usr/local/include -I/usr/include/python3.8 -c src/_imagingmath.c -o build/temp.linux-armv6l-3.8/src/_imagingmath.o
gcc -pthread -shared -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -fno-semantic-interposition -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now build/temp.linux-armv6l-3.8/src/_imagingmath.o -L/tmp/pip-install-yqwi0r_s/pillow -L/usr/lib -L/opt/vc/lib -L/usr/lib/openmpi -L/usr/lib/libfakeroot -L/usr/local/lib -L/usr/lib -o build/lib.linux-armv6l-3.8/PIL/_imagingmath.cpython-38-arm-linux-gnueabihf.so
building 'PIL._imagingmorph' extension
gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -march=armv6 -mfloat-abi=hard -mfpu=vfp -O3 -pipe -fstack-protector-strong -fno-plt -fno-semantic-interposition -march=armv6 -mfloat-abi=hard -mfpu=vfp -O3 -pipe -fstack-protector-strong -fno-plt -march=armv6 -mfloat-abi=hard -mfpu=vfp -O3 -pipe -fstack-protector-strong -fno-plt -fPIC -I/tmp/pip-install-yqwi0r_s/pillow/src/libImaging -I/tmp/pip-install-yqwi0r_s/pillow -I/usr/include -I/usr/local/include -I/usr/include/python3.8 -c src/_imagingmorph.c -o build/temp.linux-armv6l-3.8/src/_imagingmorph.o
gcc -pthread -shared -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -fno-semantic-interposition -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now build/temp.linux-armv6l-3.8/src/_imagingmorph.o -L/tmp/pip-install-yqwi0r_s/pillow -L/usr/lib -L/opt/vc/lib -L/usr/lib/openmpi -L/usr/lib/libfakeroot -L/usr/local/lib -L/usr/lib -o build/lib.linux-armv6l-3.8/PIL/_imagingmorph.cpython-38-arm-linux-gnueabihf.so
error: command 'gcc' failed with exit status 1
----------------------------------------
ERROR: Command errored out with exit status 1: /usr/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-yqwi0r_s/pillow/setup.py'"'"'; __file__='"'"'/tmp/pip-install-yqwi0r_s/pillow/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-i24ol927/install-record.txt --single-version-externally-managed --compile Check the logs for full command output.

汇编程序消息让我认为这可能与 Pi 资源不足有关。但它只是缺少一些依赖,还是有什么办法解决这个问题?

4

1 回答 1

1

树莓派 1B 只有 512MB 的 RAM。为了解决这个问题,我插入了一个外部硬盘驱动器并分配了 2GB 的 SWAP 空间。安装过程非常缓慢,但最终使用完成

pip install pillow==6.2.1

这也允许安装其他程序,否则不会。

于 2020-02-02T15:42:20.470 回答