运行configure时前缀的确切用途是什么?


3

我试图在x86_64_ Linux上安装32位Python。

遵循http://blog.devork.be/2009/02/compiling-32-bit-python-on-amd64.html的说明

我从这里下载了tarball:http//www.python.org/getit/

在我的主目录中解压缩,这是一个RHEL 5.5操作系统

在/home/local/NT/jayanthv/Python-2.7.3下,

我跑

OPT = -m32 LDFLAGS = -m32 ./configure --prefix = / opt / pym32

然后我运行gmake。

在某些模块之后,构建会按预期失败。

Python build finished, but the necessary bits to build these modules were not found: _tkinter bsddb185 sunaudiodev To find the necessary bits, look in setup.py in detect_modules() for the module's name.

Failed to build these modules: _ctypes _sqlite3

running build_scripts

在/ opt / pym32下似乎没有任何东西。

但是,在/home/local/NT/jayanthv/Python-2.7.3下,我可以使用32位python可执行文件。

这里使用前缀有什么用?难道我做错了什么?

Answers:


1

1)配置成功了吗?做一个echo $?有gmake命令之前困扰后验证成功的0。

2)你做了gmake install吗?在你做之前没有安装任何东西gmake install。您可能需要在/ opt下安装root权限。

3)你可以将1和2结合起来 OPT=-m32 LDFLAGS=-m32 ./configure --prefix=/opt/pym32 && gmake -j4 && sudo gmake install

arg --prefix = ...给出安装位置的根目录,而不是默认值(通常是/ usr)。对于许多软件包,它还在源代码中设置了一些位置...例如,你不能只是将/ opt / gcc中的gcc复制到/ usr,因为很多位置现在编码为/ opt / gcc,并且不会随文件移动而改变。

我很好奇:你为什么建立自己而不是使用系统python?


系统python是64位可执行文件,我需要32位可安装。我正在尝试安装omniORB,但是我遇到了omniidl的问题,因此试图查看32位可执行文件是否能解决问题。
roymustang86

@ roymustang86 - 有道理,保持冷静并坚持下去。
Rich Homolka
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.