Aller au contenu

Corriger une petite erreur de suivi : Photoshop vs Gimp . Question ?


Messages recommandés

Posté

@m27trognondepomme

J'ai testé un "from ctypes import *" directement dans la console python-fu de gimp et j'ai le même message d'erreur, don a priori le problème n'est pas dans ton code

>>> from ctypes import *
Traceback (most recent call last):
  File "<input>", line 1, in <module>
  File "/Applications/Gimp.app/Contents/Resources/lib/python2.7/ctypes/__init__.py", line 556, in <module>
    _reset_cache()
  File "/Applications/Gimp.app/Contents/Resources/lib/python2.7/ctypes/__init__.py", line 276, in _reset_cache
    CFUNCTYPE(c_int)(lambda: None)
MemoryError

 

En cherchant un peu sur le net je suis tombé sur cela 

https://stackoverflow.com/questions/5914673/python-ctypes-memoryerror-in-fcgi-process-from-pil-library/6620077

 

J'ai appliqué la modification dans "/Applications/Gimp.app/Contents/Resources/lib/python2.7/ctypes/__init__.py"

Après la modification le "from ctypes import *" ne renvoi pas d'erreur

 

Au lancement de gimp j'ai toujours les erreurs "/Applications/Gimp.app/Contents/MacOS/gimp: LibGimpBase-AVERTISSEMENT: gimp: gimp_wire_read(): error" et pas de pygap-M27 dans le menu Filtres

 

Le contenu du fichier "pyGapM27_stdout.txt" est différent:

MLS-MBP:~ stephane$ cat pyGapM27_stdout.txt
Traceback (most recent call last):
  File "/Users/stephane/pygap-m27/pythonfu/Color_Accentuation1.py", line 28, in <module>
    import gp2_func as gimp
  File "/Users/stephane/pygap-m27/gimp2/gp2_func.py", line 14, in <module>
    from libgimp2  import gimp2
  File "/Users/stephane/pygap-m27/gimp2/libgimp2.py", line 27, in <module>
    gimp2 = load_library ('libgimp-2.0')
  File "/Users/stephane/pygap-m27/gimp2/libgimp2.py", line 23, in load_library
    raise BaseException ("TODO")
BaseException: TODO

 

 

Posté (modifié)

mince , je ne gère pas  pas  le chargement de librairie sur  MacOS ( TODO)

if faudrait tester dans libgimp2.py (ligne:17)

    if platform == "linux" or platform == "linux2" or platform == "darwin":

 

Modifié par m27trognondepomme
Posté

J'ai fait la modif, j'obtiens cela dans le fichier  "pyGapM27_stdout.txt"

MLS-MBP:~ stephane$ cat pyGapM27_stdout.txt
Traceback (most recent call last):
  File "/Users/stephane/pygap-m27/pythonfu/Color_Accentuation1.py", line 28, in <module>
    import gp2_func as gimp
  File "/Users/stephane/pygap-m27/gimp2/gp2_func.py", line 14, in <module>
    from libgimp2  import gimp2
  File "/Users/stephane/pygap-m27/gimp2/libgimp2.py", line 27, in <module>
    gimp2 = load_library ('libgimp-2.0')
  File "/Users/stephane/pygap-m27/gimp2/libgimp2.py", line 25, in load_library
    return CDLL(library_name)
  File "/Applications/Gimp.app/Contents/Resources/lib/python2.7/ctypes/__init__.py", line 366, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: dlopen(libgimp-2.0.so.0, 6): image not found

 

Je pense que c'est parce que sur MacOS les librairies dynamiques ne sont pas des fichiers ".so" comme sur linux mais des fichiers ".dylib"

Dans la distribution Gimp voici ce que je trouve:

MLS-MBP:Gimp.app stephane$ pwd
/Applications/Gimp.app
MLS-MBP:Gimp.app stephane$ find . -name libgimp-2.0.*
./Contents/Resources/lib/libgimp-2.0.0.dylib
MLS-MBP:Gimp.app stephane$ 

 

Puis j'ai modifié ton fichier "libgimp2.py " pour traiter le cas MacOS et charger la librairie avec le bon nom de fichier

    if platform == "linux" or platform == "linux2":
        library_name = library_name + '.so.0'
    elif platform == "win32":
        from ctypes.util import find_library
        library_name = find_library (library_name + "-0")
    elif platform == "darwin":
        library_name = library_name + '.0.dylib'
    else:
        raise BaseException ("TODO")

 

J'obtiens toujours les messages "LibGimpBase-AVERTISSEMENT: gimp: gimp_wire_read(): error", mais maintenant "pygap-m27" apparaît bien dans le menu Filtres

Lorsque je tente d'initialiser le menu, j'obtiens un message d'erreur:

1356447242_Capturedcran2021-12-3001_30_28.png.f975df876789ffdd81939859746b1980.png

Mais contre toute attente, le menu semble bien initialisé

1859274804_Capturedcran2021-12-3001_32_13.png.6c8cf1d4db8d844d5b8e0fb2891cda58.png

 

 

Au final j'ai tenté une amelioration "Ciel noir" sur une de mes photos, j'obtiens une erreur

1959460071_Capturedcran2021-12-3001_36_42.png.7894d1c2a8086e0489190ee269035e7e.png

Le dernier contenu du fichier "pyGapM27_stdout.txt" (au vu de la date de modification du fichier, cela se passe lors du chargement de Gimp, pas lorsque je tente l'amélioration "Ciel Noir")

loading GapM27ColorAccent1
Traceback (most recent call last):
  File "/Users/stephane/pygap-m27/pythonfu/Color_Accentuation1.py", line 99, in <module>
    app.register()
  File "/Users/stephane/pygap-m27/gimp2/gp2_plugin.py", line 86, in register
    PLUG_IN_INFO = GimpPlugInInfo (void_FUNC_void (self.query), GimpRunProc (self.run))
MemoryError

 

Cordialement

Posté (modifié)

@rmor51 peux vérifier si le fichier "pythonfu/Tools_Moveto.py" existe et que les  droits en écriture sont -rwxr-xr-x  .

 

peux-tu faire dans le dossier pygapm27 :

touch *.py */*.py */*scm

 et relancer GIMP

si tu n'as  pas  le fichier, récupère la dernière version en faisant : git clone https://gitlab.com/free-astro/pygap-m27.git

@rmor51 quelle est ta version de  ubuntu  pour que je puisse faire le test dans  un VM ?

Modifié par m27trognondepomme
Posté
il y a une heure, m27trognondepomme a dit :

pourrais-tu faire récupérer la version de la branche dev/macos-py3 sous gitlab .

Je viens de tester. J'obtiens le message d'erreur suivant (autant de fois que cela tente de charger de plugins...)

 

Python path configuration:
  PYTHONHOME = '/Applications/Gimp.app/Contents/Resources'
  PYTHONPATH = '/Applications/Gimp.app/Contents/Resources/lib/python2.7:/Applications/Gimp.app/Contents/Resources/lib/gimp/2.0/python'
  program name = '/usr/local/bin/python3'
  isolated = 0
  environment = 1
  user site = 1
  import site = 1
  sys._base_executable = '/usr/local/bin/python3'
  sys.base_prefix = '/Applications/Gimp.app/Contents/Resources'
  sys.base_exec_prefix = '/Applications/Gimp.app/Contents/Resources'
  sys.platlibdir = 'lib'
  sys.executable = '/usr/local/bin/python3'
  sys.prefix = '/Applications/Gimp.app/Contents/Resources'
  sys.exec_prefix = '/Applications/Gimp.app/Contents/Resources'
  sys.path = [
    '/Applications/Gimp.app/Contents/Resources/lib/python2.7',
    '/Applications/Gimp.app/Contents/Resources/lib/gimp/2.0/python',
    '/Applications/Gimp.app/Contents/Resources/lib/python39.zip',
    '/Applications/Gimp.app/Contents/Resources/lib/python3.9',
    '/Applications/Gimp.app/Contents/Resources/lib/python3.9/lib-dynload',
  ]
Fatal Python error: init_fs_encoding: failed to get the Python codec of the filesystem encoding
Python runtime state: core initialized
  File "/Applications/Gimp.app/Contents/Resources/lib/python2.7/encodings/__init__.py", line 123
    raise CodecRegistryError,\
                            ^
SyntaxError: invalid syntax

Current thread 0x000000010a2df5c0 (most recent call first):
<no Python frame>
/Applications/Gimp.app/Contents/MacOS/gimp: LibGimpBase-AVERTISSEMENT: gimp: gimp_wire_read(): error

 

A priori il lance bien un python3 (soit la version 3.9 sur mon mac), mais il semble ne chercher les librairies seulement dans la distribution de Gimp, pas là où est réellement installé le python 3.9

J'ai tenté de faire un lien "/Applications/Gimp.app/Contents/Resources/lib/python3.9" pour pointer vers "/usr/local/Cellar/python@3.9/3.9.9/Frameworks/Python.framework/Versions/3.9/lib/python3.9" mais pas de changement..

J'ai tenté le lien car:

"/usr/local/bon/python3" est un lien vers "usr/local/Cellar/python@3.9/3.9.9/bin/python3" qui lui même est un lien vers "/usr/local/Cellar/python@3.9/3.9.9/Frameworks/Python.framework/Versions/3.9/bin/python3"

 

note: le menu pygap-m27 n'apparait plus dans gimp...

 

Posté (modifié)

il faudrait  peut-être modifier le fichier  ...\ GIMP 2\lib\gimp\2.0\interpreters\pygimp.interp

python=C:\Program Files\GIMP 2\bin\pythonw.exe
python2=C:\Program Files\GIMP 2\bin\pythonw.exe
/usr/bin/python=C:\Program Files\GIMP 2\bin\pythonw.exe
:Python:E::py::python:

en mettant  les chemins du python3 .

ça devient un peu compliqué :(

 

 

*** mise à jour ***

j'ai fait  le test sous windows

python=C:\awin\Python\python-3.10.1-64\pythonw.exe
python2=C:\awin\Python\python-3.10.1-64\pythonw.exe
/usr/bin/python=C:\awin\Python\python-3.10.1-64\pythonw.exe
:Python:E::py::python:

ça fonctionne le changement de  python

Modifié par m27trognondepomme
Posté

Je suis sous Ubuntu 20.04.3LTS. Après récupération de l'archive en zip, toujours pas de script Moveto et pas de dossier Tools dans l'archive.

 

touch: impossible de faire un touch '*/*scm': Aucun fichier ou dossier de ce type

Posté

je viens de tester sous ubuntu en VM . Le fichier "Tools_Moveto.py" existe bien. et  la fonction apparait dans le  menu ( voir copie d'écran)

lubuntu@lubuntu:~$ git clone https://gitlab.com/free-astro/pygap-m27.git
Cloning into 'pygap-m27'...
remote: Enumerating objects: 2146, done.
remote: Total 2146 (delta 0), reused 0 (delta 0), pack-reused 2146
Receiving objects: 100% (2146/2146), 1.54 MiB | 4.93 MiB/s, done.
Resolving deltas: 100% (1581/1581), done.
lubuntu@lubuntu:~$ ls pygap-m27/
data   i18n            lib      note.txt     pythonfu
gimp2  intf_gimp2.pyx  LICENSE  pyGapM27.py  README.md
lubuntu@lubuntu:~$ ls -l pygap-m27/pythonfu/
total 388
-rwxrwxr-x 1 lubuntu lubuntu  4215 déc.  30 12:30 Color_Accentuation1.py
-rwxrwxr-x 1 lubuntu lubuntu  4437 déc.  30 12:30 Color_Accentuation2.py
-rwxrwxr-x 1 lubuntu lubuntu  4657 déc.  30 12:30 Color_Accentuation3.py
  
.....

-rwxrwxr-x 1 lubuntu lubuntu  4206 déc.  30 12:30 Tools_LayerDivideFlat2.py
-rwxrwxr-x 1 lubuntu lubuntu  2739 déc.  30 12:30 Tools_MaskLayer.py
-rwxrwxr-x 1 lubuntu lubuntu  2407 déc.  30 12:30 Tools_MergeAll.py
-rwxrwxr-x 1 lubuntu lubuntu  2945 déc.  30 12:30 Tools_MergeChannels.py
-rwxrwxr-x 1 lubuntu lubuntu  5408 déc.  30 12:30 Tools_Moveto.py
-rwxrwxr-x 1 lubuntu lubuntu  3184 déc.  30 12:30 Tools_SplitChannels2.py
-rwxrwxr-x 1 lubuntu lubuntu  3073 déc.  30 12:30 Tools_StackLayers.py
lubuntu@lubuntu:~$ 

 

J'ai lancé  GIMP et  mis  les configurations des chemins des scripts  :

screen01.jpg.6c7f6cce3f17a114bb9972131294baba.jpg

screen02.jpg.c8224606e015fcc3ba85329f4b6e6c76.jpg

 

J'ai relancé GIMP et la fonction "MoveTo" (Déplacer) apparait bien dans le  menu :

screen.jpg.67cc503db35096c05a5bc957950ad89c.jpg

 

 

Posté (modifié)

Bon j'ai merdé un max. Je n'ai plus le menu pygap. J'ai supprimé des chemins dans plugins et script du menu Dossiers. Les entrées scriptfu et pythonfu du menu Filtre ont disparu. Je n'ai jamais réussi à avoir ton menu complet après avoir suivi tes recommandations.

Modifié par rmor51
Posté (modifié)

@rmor51 je ne sais pas quoi te dire  pour t'aider. Sur ma VM, LXUBUNTU 20.4,  je n'ai rien fait de spécial: cloner le dépot pyGapM27, lancer GIMP, configurer les dossiers , puis redémarrer GIMP.

 

sur  les copies d'écran, j'ai l'impression que tu pointais sur un vieux répertoire pyGapM27 car le menu "xx Aides xx" n'existe plus depuis belle lurette.

Modifié par m27trognondepomme
Posté

Sur mon portable ça a fonctionné comme sur des roulettes. Je pense réinstaller mon desktop du coup, car j'ai vu qu'il me manquait certains répertoires, d'où les problèmes rencontrés. Merci pour ton aide et bon réveillon!

  • J'aime 1

Rejoignez la conversation !

Vous pouvez répondre maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous pour poster avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

  • En ligne récemment   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.