【发布时间】:2014-09-18 20:15:21
【问题描述】:
我如何知道python的zlib模块是用什么版本的C库构建的?
具体来说,我想知道它是否是一个足够新的版本来支持 ZLIB_RSYNC=1
这不同于zlib python的版本module,而是底层C库的版本
【问题讨论】:
标签: python c include zlib shared-libraries
我如何知道python的zlib模块是用什么版本的C库构建的?
具体来说,我想知道它是否是一个足够新的版本来支持 ZLIB_RSYNC=1
这不同于zlib python的版本module,而是底层C库的版本
【问题讨论】:
标签: python c include zlib shared-libraries
是zlib.ZLIB_VERSION:
>>> import zlib
>>> zlib.ZLIB_VERSION
'1.2.7'
【讨论】:
试试下面的命令,看看zlib Python包是否可用以及它的版本:
python -c "import zlib; print(zlib.__version__)"
python3 -c "import zlib; print(zlib.__version__)"
【讨论】:
对于 c(推荐):
cat > get_zlib_version.c << EOF
#include<stdio.h>
#include<zlib.h>
int main()
{
printf("%s", ZLIB_VERSION);
return 0;
}
EOF
gcc get_zlib_version.c -o get_zlib_version && ./get_zlib_version
对于 Python 2.x:
# only show zlib version used for building the module, this may be different from the zlib library actually used at runtime
python -c "import zlib; print(zlib.ZLIB_VERSION)"
对于 Python 3.x:
# The version string of the zlib library actually loaded by the interpreter.
python -c "import zlib; print(zlib.ZLIB_RUNTIME_VERSION)"
【讨论】: