Sono bloccato per un intero pomeriggio ora cercando di far compilare python in modalità 32 bit. Gestisco una macchina Linux a 64 bit con openSUSE 11.3, ho installato i pacchetti necessari -devel e -32bit per creare applicazioni in modalità 32 bit.Come costruire 32bit python 2.6 su 64 bit Linux?
Il problema con la build python sembra non essere nella stessa esecuzione, ma nella successiva esecuzione di setup.py, invocata da make.
Ho trovato le seguenti istruzioni per Ubuntu Linux: h ** p: //indefinitestudies.org/2010/02/08/how-to-build-32-bit-python-on-ubuntu-9-10- x86_64/
Quando non come descritto, ottengo il seguente output:
Ma ho i pacchetti -32bit di libreadline, libopenssl, etc.pp. installato, ma ovviamente risiedono in/lib e/usr/lib e non/lib64 e/usr/lib64.
Quando avvio il binario Python che deriva da questa build, ottengo:
./python
Python 2.6.6 (r266:84292, Oct 5 2010, 21:22:06)
[GCC 4.5.0 20100604 [gcc-4_5-branch revision 160292]] on linux2
Type "help", "copyright", "credits" or "license" for more information.
Traceback (most recent call last):
File "/etc/pythonstart", line 7, in <module>
import readline
ImportError: No module named readline
Così come raggiungere setup.py per osservare l'= -L comando LDFLAGS/lib ??
Qualsiasi aiuto è molto apprezzato.
saluti, Philipp
Potrebbe essere eccessivo, ma un modo per farlo è impostare una prigione chroot a 32-bit e compilarla lì. Garantisce almeno che non si mischiano le librerie a 32 e 64 bit durante la compilazione. –
questo è decisamente eccessivo. Sono l'unica persona al mondo a desiderare una build Linux a 32 bit di python ??? Sto cercando su google per ore e trovo solo le istruzioni per Mac. A parte il blogpost menzionato sopra, nessuno ha istruzioni per Linux! – Philipp
Non sei il solo. Io uso il mio perché i collegamenti Python IDA Pro sono a 32 bit e non voglio un intero carcere ... l'ho fatto usando il link puntatore sopra e ha funzionato per lo più bene per me. Solo i moduli _bsddb e _tkinter non sono stati creati. Il primo perché ha provato a collegare db-4.7 (che è la mia versione a 64 bit) invece di db-4.8, che è la mia versione a 32 bit. Quest'ultimo perché non ho alcun tk 32 bit. – 246tNt