我使用的是Ubuntu10.10 (Linux pc07 2.6.35-27-generic #48-Ubuntu SMP Tue Feb 22 20:25:46 UTC 2011 x86_64 GNU/Linux)和默认的python包(Python2.6.6)。
我想安装python-psyco来提高我的一个脚本的性能,但是只有python-psyco-doc可以使用64位。我尝试了一个虚拟机,但是在虚拟机上性能的提升要比在一个安装了32位Ubuntu的“真实”机器上要少得多。
所以我的问题是:我如何在我的64位Ubuntu机器上安装一个32位Python?
编辑:我找到了这篇文章并制作了以下内容:
OPT=-m32 LDFLAGS=-m32 ./configure --prefix=/opt/pym32make但我发现了一个错误:
gcc -pthread -m32 -Xlinker -export-dynamic -o python \
Modules/python.o \
libpython2.7.a -lpthread -ldl -lutil -lm
libpython2.7.a(posixmodule.o): In function `posix_tmpnam':
/home/moose/Downloads/Python-2.7.1/./Modules/posixmodule.c:7346: warning: the use of `tmpnam_r' is dangerous, better use `mkstemp'
libpython2.7.a(posixmodule.o): In function `posix_tempnam':
/home/moose/Downloads/Python-2.7.1/./Modules/posixmodule.c:7301: warning: the use of `tempnam' is dangerous, better use `mkstemp'
Segmentation fault
make: *** [sharedmods] Fehler 139edit2:现在我找到了http://indefinitestudies.org/2010/02/08/how-to-build-32-bit-python-on-ubuntu-9-10-x86_[64],这似乎奏效了:
cd Python-2.7.1CC="gcc -m32" LDFLAGS="-L/lib32 -L/usr/lib32 \ -Lpwd/lib32 -Wl,-rpath,/lib32 -Wl,-rpath,/usr/lib32" \ ./configure --prefix=/opt/pym32makesudo make install但是安装精神科却没有用:
出现了以下错误:
PROCESSOR = 'ivm'
running install
running build
running build_py
running build_ext
building 'psyco._psyco' extension
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -DALL_STATIC=1 -Ic/ivm -I/usr/include/python2.6 -c c/psyco.c -o build/temp.linux-x86_64-2.6/c/psyco.o
In file included from c/psyco.c:1:
c/psyco.h:9: fatal error: Python.h: Datei oder Verzeichnis nicht gefunden
compilation terminated.
error: command 'gcc' failed with exit status 1安装软件包python-dev解决了问题,但我仍然不能使用精神病学。现在我已经安装了一个32位的Ubuntu系统。
发布于 2011-03-09 14:04:22
要在64位Ubuntu系统上运行32位应用程序,您需要ia32-libs。在终端中,验证是否使用
dpkg -l ia32-libs如果您安装了它,输出应该如下所示:
ii ia32-libs ...如果它看起来像un ia32-libs,您需要使用以下方法来安装它:
sudo apt-get install ia32-libs发布于 2011-07-24 12:05:52
通过安装一个32位的schroot‘’ed环境,我终于让它工作起来了。按照这里的说明:https://help.ubuntu.com/community/DebootstrapChroot
我为我的schroot (/etc/schroot/chroot.d/natty32.conf)使用了以下配置文件:
[natty32]
description=Ubuntu 11 for i386
directory=/srv/chroot/natty32
personality=linux32
root-users=myloginname
type=directory
users=myloginname安装完毕后,启动schroot会话:
schroot -c natty32 -u root然后用apt-get安装python2.6,使用它安装pip ( http://guide.python-distribute.org/installation.html ),然后用pip安装精神病学、numpy和&c。
发布于 2022-09-27 21:37:03
我把它用于以下几个方面:
for pkg in build-essential:i386 gdb:i386 lcov:i386 pkg-config:i386 libbz2-dev:i386 libffi-dev:i386 libgdbm-dev:i386 libgdbm-compat-dev:i386 liblzma-dev:i386 libncurses5-dev:i386 libreadline6-dev:i386 libsqlite3-dev:i386 libssl-dev:i386 lzma:i386 lzma-dev:i386 tk-dev:i386 uuid-dev:i386 zlib1g-dev:i386
do
apt-get -y install $pkg
done然后运行Martin的脚本(我需要--启用--共享以生成libpython*.so文件):
CC="gcc -m32" LDFLAGS="-L/lib32 -L/usr/lib32 \
-Lpwd/lib32 -Wl,-rpath,/lib32 -Wl,-rpath,/usr/lib32" \
./configure --prefix=/opt/pym32 --enable-shared
make
sudo make installhttps://askubuntu.com/questions/29253
复制相似问题