OVH Cloud OVH Cloud

mod_python chez quels hebergeurs ?

27 réponses
Avatar
Dr. Marco
Bonjour à tous,

je suis en train de chercher s'il existe des hébergeurs de pages web
gratuits chez lesquels l'utilisation de mod_python serait possible.
Avez-vous des recommandations ?

Ce serait pour faire tourner un site avec Django.

Un grand merci d'avance, bien cordialement,
--
Dr. Marco

10 réponses

1 2 3
Avatar
Bertrand B

J'ai déjà réussi une cross-compilation avec Python 2.4.2.


Ok je vais essayer 2.4.2 surtout si tu me donne un lien sur le patch qui
va bien (j'ai du passer les chunk à la main).

Avatar
NicolasP

J'ai déjà réussi une cross-compilation avec Python 2.4.2.


Ok je vais essayer 2.4.2 surtout si tu me donne un lien sur le patch qui
va bien (j'ai du passer les chunk à la main).

Je vais essayer de le retrouver.



Avatar
NicolasP
Ok je vais essayer 2.4.2 surtout si tu me donne un lien sur le patch qui
va bien (j'ai du passer les chunk à la main).


Tout est là :
https://sourceforge.net/tracker/?funcÞtail&atid05470&aid06238&group_idT70

Le lien de download est tout en bas de la page.
Je te recommande la lecture des messages. C'est très instructif.

Bonne cross-compilation.

Nicolas

Avatar
Bertrand B
Ok je vais essayer 2.4.2 surtout si tu me donne un lien sur le patch
qui va bien (j'ai du passer les chunk à la main).


Tout est là :
https://sourceforge.net/tracker/?funcÞtail&atid05470&aid06 238&group_idT70


Le lien de download est tout en bas de la page.
Je te recommande la lecture des messages. C'est très instructif.

Bonne cross-compilation.

Nicolas

C'est mieux mais c'est toujours pas ça ... :

powerpc-linux-gcc -shared build/temp.linux-i686-2.4/binascii.o
-L/usr/local/lib -L/home/bertrand/dsm/toolchain_powerpc/usr/lib
-L/home/bertrand/dsm/toolchain_powerpc/lib -o
build/lib.linux-i686-2.4/binascii.so
*** WARNING: renaming "binascii" since importing it failed:
build/lib.linux-i686-2.4/binascii.so: ELF file data encoding not
little-endian

je ne sais pas ce que me fout l'usine à gaz Setup.py mais il insiste à
vouloir utiliser les library de mon système hôte pour construire les
modules et bien sur il ignore royalement celles de ma toolchain


Avatar
Bertrand B
Ok je vais essayer 2.4.2 surtout si tu me donne un lien sur le patch
qui va bien (j'ai du passer les chunk à la main).


Tout est là :
https://sourceforge.net/tracker/?funcÞtail&atid05470&aid0 6238&group_idT70


Le lien de download est tout en bas de la page.
Je te recommande la lecture des messages. C'est très instructif.

Bonne cross-compilation.

Nicolas

C'est mieux mais c'est toujours pas ça ... :

powerpc-linux-gcc -shared build/temp.linux-i686-2.4/binascii.o
-L/usr/local/lib -L/home/bertrand/dsm/toolchain_powerpc/usr/lib
-L/home/bertrand/dsm/toolchain_powerpc/lib -o
build/lib.linux-i686-2.4/binascii.so
*** WARNING: renaming "binascii" since importing it failed:
build/lib.linux-i686-2.4/binascii.so: ELF file data encoding not
little-endian

je ne sais pas ce que me fout l'usine à gaz Setup.py mais il insiste à
vouloir utiliser les library de mon système hôte pour construire le s
modules et bien sur il ignore royalement celles de ma toolchain
Je viens de comprendre une chose .... la compilation éventuellement se

comporte pas mal ... mais comme setup.py essaye d'importer le module
compiler et qu'il estlancé par un python i686 ça coince et donc cet â ne
me renomme le fichier pas glop.



Avatar
Bertrand B
Ok je vais essayer 2.4.2 surtout si tu me donne un lien sur le patch
qui va bien (j'ai du passer les chunk à la main).


Tout est là :
https://sourceforge.net/tracker/?funcÞtail&atid05470&aid0 6238&group_idT70


Le lien de download est tout en bas de la page.
Je te recommande la lecture des messages. C'est très instructif.

Bonne cross-compilation.

Nicolas

C'est mieux mais c'est toujours pas ça ... :

powerpc-linux-gcc -shared build/temp.linux-i686-2.4/binascii.o
-L/usr/local/lib -L/home/bertrand/dsm/toolchain_powerpc/usr/lib
-L/home/bertrand/dsm/toolchain_powerpc/lib -o
build/lib.linux-i686-2.4/binascii.so
*** WARNING: renaming "binascii" since importing it failed:
build/lib.linux-i686-2.4/binascii.so: ELF file data encoding not
little-endian

je ne sais pas ce que me fout l'usine à gaz Setup.py mais il insiste à
vouloir utiliser les library de mon système hôte pour construire le s
modules et bien sur il ignore royalement celles de ma toolchain
on progresse par contre je ne vois pas vraiment pourquoi

# LD_LIBRARY_PATH=/usr/local/lib /mnt/HD_a2/python/bin/python2.4
Python 2.4.2 (#1, Dec 2 2006, 10:55:18)
[GCC 3.3.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
import md5
Segmentation fault




a priori le dyn_loader a un soucis des pistes ?



Avatar
NicolasP
Ok je vais essayer 2.4.2 surtout si tu me donne un lien sur le patch
qui va bien (j'ai du passer les chunk à la main).


Tout est là :
https://sourceforge.net/tracker/?funcÞtail&atid05470&aid06238&group_idT70


Le lien de download est tout en bas de la page.
Je te recommande la lecture des messages. C'est très instructif.

Bonne cross-compilation.

Nicolas

C'est mieux mais c'est toujours pas ça ... :

powerpc-linux-gcc -shared build/temp.linux-i686-2.4/binascii.o
-L/usr/local/lib -L/home/bertrand/dsm/toolchain_powerpc/usr/lib
-L/home/bertrand/dsm/toolchain_powerpc/lib -o
build/lib.linux-i686-2.4/binascii.so
*** WARNING: renaming "binascii" since importing it failed:
build/lib.linux-i686-2.4/binascii.so: ELF file data encoding not
little-endian

je ne sais pas ce que me fout l'usine à gaz Setup.py mais il insiste à
vouloir utiliser les library de mon système hôte pour construire les
modules et bien sur il ignore royalement celles de ma toolchain


Je ne pense pas que ce soit un problème avec setup.py. Si je me rapelle bien, setup.py n'est pas utilisé lors de la compilation et du link.
Quelles commandes a tu utilisées pour compiler/linker/installer ?



Avatar
Bertrand B
Ok je vais essayer 2.4.2 surtout si tu me donne un lien sur le patch
qui va bien (j'ai du passer les chunk à la main).


Tout est là :
https://sourceforge.net/tracker/?funcÞtail&atid05470&aid 06238&group_idT70


Le lien de download est tout en bas de la page.
Je te recommande la lecture des messages. C'est très instructif.

Bonne cross-compilation.

Nicolas

C'est mieux mais c'est toujours pas ça ... :

powerpc-linux-gcc -shared build/temp.linux-i686-2.4/binascii.o
-L/usr/local/lib -L/home/bertrand/dsm/toolchain_powerpc/usr/lib
-L/home/bertrand/dsm/toolchain_powerpc/lib -o
build/lib.linux-i686-2.4/binascii.so
*** WARNING: renaming "binascii" since importing it failed:
build/lib.linux-i686-2.4/binascii.so: ELF file data encoding not
little-endian

je ne sais pas ce que me fout l'usine à gaz Setup.py mais il insiste à
vouloir utiliser les library de mon système hôte pour construire l es
modules et bien sur il ignore royalement celles de ma toolchain


Je ne pense pas que ce soit un problème avec setup.py. Si je me rapel le
bien, setup.py n'est pas utilisé lors de la compilation et du link.
Quelles commandes a tu utilisées pour compiler/linker/installer ?

Grace à toi et au patch que tu m'as indiqué ça compile et ça link par

contre le problème maintenant se situe sur la machine cible. Je ne sais
pas réelment à quoi cela peut être lié il va certainement falloir que je
descende dans les sources de python pour comprendre.

sur la mchine cible lorque j'import un mdule en forme de librairie
dynamique exemple md5 -> segmentation fault
lorsque j'importe une autre librairie pas de pb
j'ai testé aussi
import sys
help(sys) -> segmentation fault

L'environnement de la machine cible étant très réduit il me manque pet
être un lbrairie ou un exécutable quelconque ... mais là pour l'ins tant
je sèche.

Sinon setup.py est bien utilisé à la compilation et à l'instalation ...
groumpf

regarde le contenu du patch
*** python-cvs-pristine/dist/src/setup.py Sun Mar 21 12:59:46 2004
--- python/dist/src/setup.py Mon Apr 5 15:20:55 2004
***************
*** 200,205 ****
--- 200,209 ----
self.announce('WARNING: skipping import check for
Cygwin-based "%s
"'
% ext.name)
return
+ if os.environ.get('CROSS_COMPILE') == 'yes':
+ self.announce('WARNING: skipping import check for cross
compiled "
%s"'
+ % ext.name)
+ return
ext_filename = os.path.join(
self.build_lib,
self.get_ext_filename(self.get_ext_fullname(ext.name)))




Avatar
NicolasP

sur la mchine cible lorque j'import un mdule en forme de librairie
dynamique exemple md5 -> segmentation fault
lorsque j'importe une autre librairie pas de pb
j'ai testé aussi
import sys
help(sys) -> segmentation fault

L'environnement de la machine cible étant très réduit il me manque pet
être un lbrairie ou un exécutable quelconque ... mais là pour l'instant
je sèche.


Perso, j'ai fait tourner Python 2.4.2 sur une machine à ressources très réduites également. Sans problèmes particulier. J'avais un serveur WEB qui fonctionnait bien. Le serveur était motorisé avec Karrigell et utilisait PIL intensément. J'ai abandonné à cause des performances. Le processeur n'était pas assez puissant et le système manquait de RAM. Mais ça marchait.


Sinon setup.py est bien utilisé à la compilation et à l'instalation ...
groumpf


Exact. Je me suis mélangé les pieds entre les commandes que l'on lance et celles lancées automatiquement.
Par contre, je crois qu'il faut que tu ais la même version de python fonctionnelle et accessible sur le système sur lequel tu compiles (utilisé lors de la compilation).
Ceci parce que lorsque tu compiles Python, une sorte de noyau est compilé classiquement puis c'est setup.py qui fait le reste en utilisant la partie de python qui vient d'être compilée. En cross-compilation, ça pose un problème puisque tu ne peux pas exécuter ce qui vient d'être compilé. Le patch fait en sorte que ce soit le python natif à la machine sur laquelle tu compiles qui est utilisé pour continuer la cross-compilation.

J'espère que tu ceci t'aideras.

Nicolas

Avatar
Bertrand B
Après pas mal de tâtonnement et grace au PATCH de Nicolas plus quelqu es
retouche manuelles. La cross compilation a fonctionné
Mais comme un âne j'appelais python par "LD_LIBRARY_PATH=/usr/local/l ib
python" ce qui générais le segmentation fault puisque libdl.so n'ét ait
pas dans le chemin. en utilisant "LD_LIBRARY_PATH=/lib:/usr/local/lib"
it works (je n'ai pas de directory /usr/lib sur la machine hôte)

Merci Nicolas.
1 2 3