Ответ 1
Возможно использование pip --global-option=build_ext
.
Например, это requirements.txt
для Pillow с поддержкой PNG и JPEG и никаких других внешних библиотек:
pillow \
--global-option="build_ext" \
--global-option="--enable-zlib" \
--global-option="--enable-jpeg" \
--global-option="--disable-tiff" \
--global-option="--disable-freetype" \
--global-option="--disable-tcl" \
--global-option="--disable-tk" \
--global-option="--disable-lcms" \
--global-option="--disable-webp" \
--global-option="--disable-webpmux" \
--global-option="--disable-jpeg2000"
Это действительно злоупотребление pip --global-option
, вдохновленное этим ответом, поскольку build_ext
- это команда pip, а не глобальная опция pip. Но это заставит pip выполнить две команды: сначала build_ext
, а затем install
- вот так:
pip \
build_ext \
--enable-zlib --enable-jpeg \
--disable-tiff --disable-freetype --disable-tcl --disable-tk \
--disable-lcms --disable-webp --disable-webpmux --disable-jpeg2000 \
install pillow