小编Chr*_*rry的帖子

奇怪的Python编译结果带有"--enable-shared"标志

我正在使用Debian(它附带Python-2.7.3),尝试从源代码编译Python-2.7.6以与mod_wsgi和Apache一起使用.

根据众多答案,显然你在编译mod_wsgi时必须使用--enable-shared.

遵循这些步骤:

./configure --enable-shared --prefix=/usr/local/bin/python-2.7.6
make
make install
Run Code Online (Sandbox Code Playgroud)

然后检查交互式shell @

/usr/local/bin/python-2.7.6/bin/python

我受到了"Python 2.7.3(默认,2013年1月2日,14:09:21)"等的欢迎

为什么它导致Python 2.7.3?

我尝试ldd对可执行文件,这是结果:

linux-vdso.so.1 =>  (0x00007fff271ff000)
libpython2.7.so.1.0 => /usr/lib/libpython2.7.so.1.0 (0x00007f1545638000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f154541c000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f1545217000)
libutil.so.1 => /lib/x86_64-linux-gnu/libutil.so.1 (0x00007f1545014000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f1544d92000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f1544a06000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f15447ef000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f15445d9000)
/lib64/ld-linux-x86-64.so.2 (0x00007f1545b40000)
Run Code Online (Sandbox Code Playgroud)

如何阻止它使用系统库而是使用本地编译的版本?

我知道,恢复使用系统安装的Python版本对我来说要容易得多,现实世界的差异是零.但这种行为似乎很奇怪.

debian gcc mod-wsgi compilation python-2.7

8
推荐指数
1
解决办法
3458
查看次数

标签 统计

compilation ×1

debian ×1

gcc ×1

mod-wsgi ×1

python-2.7 ×1