Packaging

Les propositions de correctifs ou d'exercices pour Pyromaths.

Modérateur : Développeurs

Avatar de l’utilisateur
Yves
Messages : 472
Inscription : 21 janv. 2009, 20:40
Contact :

Re: Packaging

Message par Yves » 26 avr. 2013, 18:53

Yves a écrit :avec python-2.6, je retrouve à nouveau mes fichiers debug inutiles que j'éliminais avec standalone.sh
En fait, avec python 2.7 également. Dans ta version i386/python2.7, py2app n'a pas ajouté les fichiers debug ou bien tu les as supprimé ?
On peut également supprimer les fichiers .prl sans affecter le bon fonctionnement de l'application.

Avatar de l’utilisateur
Yves
Messages : 472
Inscription : 21 janv. 2009, 20:40
Contact :

Re: Packaging

Message par Yves » 27 avr. 2013, 09:14

J'ai continué ma traque des fichiers inutiles que j'efface avec standalone.sh mis à jour; il est peut-être possible d'exclure les fichiers .so dans dlib-dynload directement dans setup.py ;) .
#!/bin/sh

# standalone.sh
# Automatise la réalisation de Pyromaths.app.
# Copyright (C) 2010 Yves Gesnel
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.

# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.

# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.

mac=`/usr/bin/dirname $0`
cd $mac/../..
pyromaths=$PWD

# Utiliser py2app:
cd $mac
python setup.py py2app

# Supprimer les fichiers debug des frameworks
rm $mac/dist/Pyromaths.app/Contents/Frameworks/*.framework/Versions/4/*_debug
rm $mac/dist/Pyromaths.app/Contents/Frameworks/*.framework/*_debug*
rm $mac/dist/Pyromaths.app/Contents/Frameworks/*.framework/*.prl

# Supprimer le dossier linux et les images inutiles 
rm $mac/dist/Pyromaths.app/Contents/Resources/data/images/pyromaths-banniere.png
rm $mac/dist/Pyromaths.app/Contents/Resources/data/images/pyromaths.ico
rm -rf $mac/dist/Pyromaths.app/Contents/Resources/data/linux

# Supprimer les fichiers inutiles dans Contents
rm $mac/dist/Pyromaths.app/Contents/PkgInfo

# Supprimer les fichiers .so inutiles
rm $mac/dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/_AE.so
rm $mac/dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/_codecs_cn.so
rm $mac/dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/_codecs_hk.so
rm $mac/dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/_codecs_iso2022.so
rm $mac/dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/_codecs_jp.so
rm $mac/dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/_codecs_kr.so
rm $mac/dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/_codecs_tw.so
rm $mac/dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/_Evt.so
rm $mac/dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/_File.so
rm $mac/dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/_hashlib.so
rm $mac/dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/_heapq.so
rm $mac/dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/_locale.so
rm $mac/dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/_multibytecodec.so
rm $mac/dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/_Res.so
rm $mac/dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/_ssl.so
rm $mac/dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/array.so
rm $mac/dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/bz2.so
rm $mac/dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/cPickle.so
rm $mac/dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/datetime.so
rm $mac/dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/gestalt.so
rm $mac/dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/MacOS.so
rm $mac/dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/pyexpat.so
rm $mac/dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/resource.so
rm $mac/dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/strop.so
rm $mac/dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/unicodedata.so

# Supprimer les fichiers inutiles dans Python.framework
rm $mac/dist/Pyromaths.app/Contents/Frameworks/Python.framework/Versions/Current
rm -rf $mac/dist/Pyromaths.app/Contents/Frameworks/Python.framework/Versions/2.7/include
rm -rf $mac/dist/Pyromaths.app/Contents/Frameworks/Python.framework/Versions/2.7/lib
rm -rf $mac/dist/Pyromaths.app/Contents/Frameworks/Python.framework/Versions/2.7/Resources

# Supprimer les fichiers inutiles dans QtCore.framework
rm $mac/dist/Pyromaths.app/Contents/Frameworks/QtCore.framework/QtCore
rm -rf $mac/dist/Pyromaths.app/Contents/Frameworks/QtCore.framework/Contents
rm $mac/dist/Pyromaths.app/Contents/Frameworks/QtCore.framework/Versions/4.0
rm $mac/dist/Pyromaths.app/Contents/Frameworks/QtCore.framework/Versions/Current

# Supprimer les fichiers inutiles dans QtGui.framework
rm $mac/dist/Pyromaths.app/Contents/Frameworks/QtGui.framework/QtGui
rm -rf $mac/dist/Pyromaths.app/Contents/Frameworks/QtGui.framework/Contents
rm $mac/dist/Pyromaths.app/Contents/Frameworks/QtGui.framework/Versions/4.0
rm $mac/dist/Pyromaths.app/Contents/Frameworks/QtGui.framework/Versions/Current

# Supprimer les fichiers inutiles dans Resources
rm $mac/dist/Pyromaths.app/Contents/Resources/qt.conf
rm -rf $mac/dist/Pyromaths.app/Contents/Resources/include
rm -rf $mac/dist/Pyromaths.app/Contents/Resources/lib/python2.7/config
rm $mac/dist/Pyromaths.app/Contents/Resources/lib/python2.7/site.pyc

# copier le script setenv.sh et le rendre exécutable
cp $mac/setenv.sh $mac/dist/Pyromaths.app/Contents/MacOS/
chmod +x $mac/dist/Pyromaths.app/Contents/MacOS/setenv.sh

# Remplacer le CFBundleExecutable pyromaths par le script setenv.sh dans Info.plist
sed -i '' '23s/pyromaths/setenv.sh/' $mac/dist/Pyromaths.app/Contents/Info.plist

# Suppression du code 64 bits et déplacement de Pyromaths finalisé sur le bureau
ditto --rsrc --arch i386 --hfsCompression $mac/dist/Pyromaths.app ~/Desktop/Pyromaths.app

# nettoyage
rm -rf $mac/dist/
rm -rf $mac/build

Avatar de l’utilisateur
djinn
Messages : 183
Inscription : 03 mars 2013, 10:38

Re: Packaging

Message par djinn » 27 avr. 2013, 14:39

Yves a écrit :Sur mon environnement, je suis obligé de spécifier le chemin complet des frameworks pour que ça fonctionne.
Il est important de spécifier le nom du "vrai" fichier librairie (et pas d'un symlink vers cette librairie). Ensuite, le PATH ou d'autres variables d'environnement peuvent venir compliquer la découverte automatique des librairies spécifiées si plusieurs sont disponibles -- ce qu'un chemin complet permet de résoudre.
Yves a écrit :Dans ta version i386/python2.7, py2app n'a pas ajouté les fichiers debug ou bien tu les as supprimé ?
py2app ne les a pas ajoutés semble-t-il (je n'ai rien supprimé).
Yves a écrit :J'ai continué ma traque des fichiers inutiles que j'efface avec standalone.sh mis à jour
Beau travail! :)
J'ai hâte de voir combien pèsera la nouvelle version de pyromaths…

J'ai fait la proposition de patch py2app à Ronald, et il a pas l'air chaud-chaud! Il conseille plutôt l'usage d'une libxml alternative, construite pour notre usage. Du coup, je me suis lancé dans cette direction, avec pas beaucoup de résultats à ce stade (si ce n'est retomber sur les problèmes que tu as déjà eu à la compil de lxml/libxml). À suivre…

D'un point de vue plus général, et pour revenir momentanément au sujet de ce fil, je crois qu'on pont considérer que l'objectif d'un unique setup.py multi-plateformes en tête de gondole est atteignable.
Pour autant, je ne suis pas certain qu'on doive y inclure tous les hacks destinés à corriger certains excès de py2app, notamment. Sachant que, de toute manière, on aura toujours besoin d'un dossier dédié à chaque plateforme pour y héberger icône et autres fichiers spécifiques de config/doc, etc. Peut-être vaudrait-il mieux se contenter d'un setup.py qui puisse produire un py2app fonctionnel, et reléguer les hacks/nettoyages supplémentaires dans un autre fichier (comme standalone.sh)?
Je pense que l'objectif qu'on pourrait se donner pour le setup.py commun, c'est de pouvoir l'appeler avec les commandes habituelles (sdist, bdist, py2exe, py2app…), tel qu'un nouveau-venu pourrait l'espérer, et d'aboutir à un résultat fonctionnel. Les optimisations ultérieures étant reléguées dans d'autres scripts. Qu'est-ce que vous en pensez?

Avatar de l’utilisateur
Yves
Messages : 472
Inscription : 21 janv. 2009, 20:40
Contact :

Re: Packaging

Message par Yves » 27 avr. 2013, 16:46

Encore une curiosité de py2app ces fichiers debug :roll:

Le dmg pèse 13 Mo, on pourrait arriver à 12 Mo avec un simple zip, mais je trouve que l'image disque avec son background et le raccourci vers le dossier Applications est plus user friendly ;)

C'est dommage pour ta proposition de patch. Je suis persuadé que ça aurait été utile à beaucoup de monde.
On va donc se contenter d'utiliser frameworks=['/usr/local/lib/libxml2.2.dylib'] .
djinn a écrit :D'un point de vue plus général, et pour revenir momentanément au sujet de ce fil, je crois qu'on pont considérer que l'objectif d'un unique setup.py multi-plateformes en tête de gondole est atteignable.
Pour autant, je ne suis pas certain qu'on doive y inclure tous les hacks destinés à corriger certains excès de py2app, notamment. Sachant que, de toute manière, on aura toujours besoin d'un dossier dédié à chaque plateforme pour y héberger icône et autres fichiers spécifiques de config/doc, etc. Peut-être vaudrait-il mieux se contenter d'un setup.py qui puisse produire un py2app fonctionnel, et reléguer les hacks/nettoyages supplémentaires dans un autre fichier (comme standalone.sh)?
Je pense que l'objectif qu'on pourrait se donner pour le setup.py commun, c'est de pouvoir l'appeler avec les commandes habituelles (sdist, bdist, py2exe, py2app…), tel qu'un nouveau-venu pourrait l'espérer, et d'aboutir à un résultat fonctionnel. Les optimisations ultérieures étant reléguées dans d'autres scripts. Qu'est-ce que vous en pensez?
OK avec ta proposition :)

Avatar de l’utilisateur
Yves
Messages : 472
Inscription : 21 janv. 2009, 20:40
Contact :

Re: Packaging

Message par Yves » 27 avr. 2013, 16:58

Je voudrais mettre à jour la documentation, mais Django m'affiche l'erreur suivante:
Sorry, but the requested page is unavailable due to a server hiccup.

Our engineers have been notified, so check back later.

Avatar de l’utilisateur
Arnaud
Critique officiel de pyromaths
Messages : 609
Inscription : 26 août 2006, 21:49
Localisation : Allemagne
Contact :

Re: Packaging

Message par Arnaud » 27 avr. 2013, 20:22

Quel article précisément ?

Avatar de l’utilisateur
Yves
Messages : 472
Inscription : 21 janv. 2009, 20:40
Contact :

Re: Packaging

Message par Yves » 27 avr. 2013, 21:28

Cet article: http://www.pyromaths.org/contribuer/dev ... -mac-os-x/

mais le message d'erreur est présent quel que soit l'article.

Avatar de l’utilisateur
Arnaud
Critique officiel de pyromaths
Messages : 609
Inscription : 26 août 2006, 21:49
Localisation : Allemagne
Contact :

Re: Packaging

Message par Arnaud » 27 avr. 2013, 22:31

C'est apparemment un problème avec markitup ou autoslug, mais je ne peux pas voir le message d'erreur de manière sécurisée.
Jérôme devrait avoir eu des mails avec les messages d'erreurs précis, il peut me les transférer pour que je m'en occupe.

Avatar de l’utilisateur
Jérôme
Administrateur - Site Admin
Messages : 1130
Inscription : 26 août 2006, 13:10
Localisation : Nantes
Contact :

Re: Packaging

Message par Jérôme » 28 avr. 2013, 10:19

En effet, j'ai reçu un certain nombre de mail m'informant d'un soucis avec une création/modification d'article. Je viens de tout envoyer à Arnaud.
Bon dimanche.
Pyromaths génère des fiches d'exercices et leur corrigé en toute simplicité.
Un programme multi-plateformes libre et gratuit sous licence GPL

Avatar de l’utilisateur
Arnaud
Critique officiel de pyromaths
Messages : 609
Inscription : 26 août 2006, 21:49
Localisation : Allemagne
Contact :

Re: Packaging

Message par Arnaud » 28 avr. 2013, 14:28

On peut à nouveau éditer les articles, ou en ajouter, mais la barre d'outils javascript ne s'affiche toujours pas ( faudra tout faire à la main ), et je n'ai pas de messages d'erreurs.
Là je dois m'occuper des enfants, je regarde à nouveau ce soir.

Avatar de l’utilisateur
djinn
Messages : 183
Inscription : 03 mars 2013, 10:38

Re: Packaging

Message par djinn » 28 avr. 2013, 15:17

Ayé, plus besoin de hack py2app, j'ai une version de pyromaths avec lxml compilé statiquement:
$ file dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/lxml/etree.so
dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/lxml/etree.so: Mach-O bundle i386
$ otool -L dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/lxml/etree.so 
dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/lxml/etree.so:
	/usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.5)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 159.1.0)
	/usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1105.0.0)
$ ls -l dist/Pyromaths.app/Contents/Frameworks/
total 96
drwxr-xr-x  3 olivier  staff  16384 28 avr 13:59 Python.framework
drwxr-xr-x  4 olivier  staff  16384 28 avr 13:59 QtCore.framework
drwxr-xr-x  4 olivier  staff  16384 28 avr 13:59 QtGui.framework
Il suffit de télécharger les sources et de compiler comme suit:

Code : Tout sélectionner

$ git clone git://github.com/lxml/lxml.git
$ cd lxml
$ env CFLAGS=-m32 CXXFLAGS=-m32; python setup.py build --static-deps
$ sudo python setup.py install
libxml et libxslt sont automatiquement téléchargées, compilées pour une architecture 32 bits, et linkées statiquement à lxml.
NB: Ne pas oublier d'enlever l'option frameworks, désormais inutile, de notre setup.py mac.


Pour information, j'ai aussi essayé en installant moi-même libxml et libxslt à partir de leurs sources officielles (git encore). Compilation avec les mêmes flags -m32 (plus: env LDFLAGS=/usr/local/lib CPPFLAGS=/usr/local/include/lxml pour que libxslt puisse être linké à la libxml qu'on vient d'installer). Installation dans /usr/local.
Puis compilation et installation de lxml sans --static-deps cette fois (et iirc avec un: env DYLD_LIBRARY_PATH=/usr/local/lib pour que lxml utilise mes libs au lieu d'installer quand-même les siennes).
J'obtiens un pyromaths fonctionnel avec lxml linké dynamiquement à mes versions de libxml et libxslt:
$ otool -L dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/lxml/etree.so
dist/Pyromaths.app/Contents/Resources/lib/python2.7/lib-dynload/lxml/etree.so:
	@executable_path/../Frameworks/libxslt.1.dylib (compatibility version 3.0.0, current version 3.28.0)
	@executable_path/../Frameworks/libexslt.0.dylib (compatibility version 9.0.0, current version 9.17.0)
	@executable_path/../Frameworks/libxml2.2.dylib (compatibility version 12.0.0, current version 12.1.0)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 159.1.0)
	/usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1105.0.0)
$ ls -l dist/Pyromaths.app/Contents/Frameworks/
total 4240
drwxr-xr-x  3 olivier  staff    16384 28 avr 13:43 Python.framework
drwxr-xr-x  4 olivier  staff    16384 28 avr 13:43 QtCore.framework
drwxr-xr-x  4 olivier  staff    16384 28 avr 13:43 QtGui.framework
-rwxr-xr-x  1 olivier  staff    96292 28 avr 13:43 libexslt.0.dylib
-rwxr-xr-x  1 olivier  staff  1700384 28 avr 13:43 libxml2.2.dylib
-rwxr-xr-x  1 olivier  staff   290560 28 avr 13:43 libxslt.1.dylib
La première méthode au moins devrait donner un pyromaths qui tourne même sur OSX 10.5. 8-)
Je t'ai mis une version de chaque en ligne:NB: Aucune des deux n'utilise encore ton standalone.sh amélioré. :P

Avatar de l’utilisateur
Yves
Messages : 472
Inscription : 21 janv. 2009, 20:40
Contact :

Re: Packaging

Message par Yves » 28 avr. 2013, 16:40

Jérôme a écrit :En effet, j'ai reçu un certain nombre de mail m'informant d'un soucis avec une création/modification d'article. Je viens de tout envoyer à Arnaud.
Bon dimanche.
Arnaud a écrit :On peut à nouveau éditer les articles, ou en ajouter, …
Merci à tout les deux :) Avant d'éditer l'article, je vais attendre de voir ce que donnent les dernières investigations de djinn ;)
djinn a écrit :Ayé, plus besoin de hack py2app, j'ai une version de pyromaths avec lxml compilé statiquement
Bravo ! :)
djinn a écrit :La première méthode au moins devrait donner un pyromaths qui tourne même sur OSX 10.5. 8-)
Je t'ai mis une version de chaque en ligne:
Tes versions fonctionnent sur OS X 10.6, 10.7 et 10.8 mais pas sur 10.5:
$ /Users/administrateur/Desktop/Pyromaths-i386\ 2.app/Contents/MacOS/pyromaths ; exit;
Running…
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/texbin:/usr/X11/bin
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/texbin:/usr/X11/bin
Traceback (most recent call last):
  File "/Users/administrateur/Desktop/Pyromaths-i386 2.app/Contents/Resources/__boot__.py", line 316, in <module>
    _run()
  File "/Users/administrateur/Desktop/Pyromaths-i386 2.app/Contents/Resources/__boot__.py", line 311, in _run
    exec(compile(source, path, 'exec'), globals(), globals())
  File "/Users/administrateur/Desktop/Pyromaths-i386 2.app/Contents/Resources/pyromaths.py", line 2, in <module>
    pyromaths.main()
  File "pyromaths/pyromaths.pyc", line 33, in main
  File "pyromaths/outils/System.pyc", line 25, in <module>
  File "lxml/etree.pyc", line 14, in <module>
  File "lxml/etree.pyc", line 10, in __load
ImportError: dlopen(/Users/administrateur/Desktop/Pyromaths-i386 2.app/Contents/Resources/lib/python2.7/lib-dynload/lxml/etree.so, 2): Library not loaded: @executable_path/../Frameworks/libxml2.2.dylib
  Referenced from: /Users/administrateur/Desktop/Pyromaths-i386 2.app/Contents/Resources/lib/python2.7/lib-dynload/lxml/etree.so
  Reason: Incompatible library version: etree.so requires version 12.0.0 or later, but libxml2.2.dylib provides version 9.0.0
2013-04-28 16:06:03.142 pyromaths[2534:10b] Pyromaths Error
et aussi un problème avec Python 2.7, la version 2.6 devrait résoudre ce deuxième problème:
$ /Users/administrateur/Desktop/Pyromaths-i386.app/Contents/MacOS/python ; exit;
Could not find platform independent libraries <prefix>
Could not find platform dependent libraries <exec_prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
ImportError: No module named site

Avatar de l’utilisateur
Arnaud
Critique officiel de pyromaths
Messages : 609
Inscription : 26 août 2006, 21:49
Localisation : Allemagne
Contact :

Re: Packaging

Message par Arnaud » 28 avr. 2013, 17:52

Arnaud a écrit :On peut à nouveau éditer les articles, ou en ajouter, mais la barre d'outils javascript ne s'affiche toujours pas ( faudra tout faire à la main ), et je n'ai pas de messages d'erreurs.
Problème apparemment réglé : cela fonctionne sous firefox, mais pas sous chrome chez moi, alors que d'après le code source, il n'y a aucune raison.

Avatar de l’utilisateur
Yves
Messages : 472
Inscription : 21 janv. 2009, 20:40
Contact :

Re: Packaging

Message par Yves » 28 avr. 2013, 17:56

djinn a écrit :Il suffit de télécharger les sources et de compiler comme suit:

Code : Tout sélectionner

$ git clone git://github.com/lxml/lxml.git
$ cd lxml
$ env CFLAGS=-m32 CXXFLAGS=-m32; python setup.py build --static-deps
$ sudo python setup.py install
Sur mon environnement, en essayant de compiler lxml avec tes indications, j'obtiens l'erreur suivante:
Traceback (most recent call last):
  File "setup.py", line 218, in <module>
    **setup_extra_options()
  File "setup.py", line 130, in setup_extra_options
    STATIC_CFLAGS, STATIC_BINARIES)
  File "/Users/administrateur/lxml/setupinfo.py", line 79, in ext_modules
    PACKAGE_PATH, module))
RuntimeError: ERROR: Trying to build without Cython, but pre-generated 'src/lxml/lxml.etree.c' is not available (pass --without-cython to ignore this error).
Et avec l'option --without-cython:
i686-apple-darwin10-gcc-4.2.1: src/lxml/lxml.etree.c: No such file or directory
i686-apple-darwin10-gcc-4.2.1: no input files
i686-apple-darwin10-gcc-4.2.1: src/lxml/lxml.etree.c: No such file or directory
i686-apple-darwin10-gcc-4.2.1: no input files
lipo: can't figure out the architecture type of: /var/folders/dc/h02jdx1d1ws_ycd3sgldcskr0000gn/T//ccwIfwsD.out
error: command 'gcc-4.2' failed with exit status 1
j'ai retrouvé les mêmes erreurs ici.

Avatar de l’utilisateur
Yves
Messages : 472
Inscription : 21 janv. 2009, 20:40
Contact :

Re: Packaging

Message par Yves » 28 avr. 2013, 17:59

Arnaud a écrit :Problème apparemment réglé : cela fonctionne sous firefox, mais pas sous chrome chez moi, alors que d'après le code source, il n'y a aucune raison.
Merci, ça fonctionne avec Safari :)

Répondre