Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

An error occurred running python_fu_heal_selection #10

Open
mattpopovich opened this issue Mar 13, 2021 · 13 comments
Open

An error occurred running python_fu_heal_selection #10

mattpopovich opened this issue Mar 13, 2021 · 13 comments

Comments

@mattpopovich
Copy link

mattpopovich commented Mar 13, 2021

I had this error occur once on my main Mac running Catalina 10.15.7 (Intel i7). I have a spare with a fresh build of Catalina 10.15.7 (older i7) that returned the same issue. I am running GIMP 2.10.22 (revision 3) on Mac.

I downloaded ResynthesizerPlugin-Gimp-2.10-osx.tgz from the "Continuous build" release.

I then extracted the archive to both /Users/username/Library/Application Support/GIMP/2.10/plug-ins and /Applications/GIMP-2.10.app/Contents/Resources/lib/gimp/2.0/plug-ins. Both locations resulted in the same error.

When trying to run Filters -> Enhance -> Heal selection… I get:

Calling error for procedure 'gimp-procedural-db-proc-info':
Procedure 'plug-in-resynthesizer' not found

And

An error occurred running python_fu_heal_selection
error: procedure not found

Traceback (most recent call last):
  File "/Applications/GIMP-2.10.app/Contents/Resources/lib/gimp/2.0/python/gimpfu.py", line 740, in response
    dialog.res = run_script(params)
  File "/Applications/GIMP-2.10.app/Contents/Resources/lib/gimp/2.0/python/gimpfu.py", line 361, in run_script
    return apply(function, params)
  File "/Applications/GIMP-2.10.app/Contents/Resources/lib/gimp/2.0/plug-ins/plugin-heal-selection.py", line 148, in heal_selection
    pdb.plug_in_resynthesizer(timg, tdrawable, 0,0, useBorder, work_drawable.ID, -1, -1, 0.0, 0.117, 16, 500)
error: procedure not found

GIMP Message

I’ve made sure that all the files I exported from the archive have executable permission via chmod u+x

mattpopovich@Matts-MacBook-Pro-2 ~/.../GIMP/2.10/plug-ins % ll *
-rwxr-xr-x@ 1 mattpopovich  staff   6.5K Apr 28  2019 plugin-heal-selection.py*
-rwxr-xr-x@ 1 mattpopovich  staff   3.1K Apr 28  2019 plugin-heal-transparency.py*
-rwxr-xr-x@ 1 mattpopovich  staff    17K Apr 28  2019 plugin-map-style.py*
-rwxr-xr-x@ 1 mattpopovich  staff   7.5K Apr 28  2019 plugin-render-texture.py*
-rwxr-xr-x@ 1 mattpopovich  staff   3.2K Apr 28  2019 plugin-resynth-enlarge.py*
-rwxr-xr-x@ 1 mattpopovich  staff   3.5K Apr 28  2019 plugin-resynth-fill-pattern.py*
-rwxr-xr-x@ 1 mattpopovich  staff   3.2K Apr 28  2019 plugin-resynth-sharpen.py*
-rwxr-xr-x@ 1 mattpopovich  staff   5.9K Apr 28  2019 plugin-uncrop.py*
-rwxr-xr-x@ 1 mattpopovich  staff    38K Apr 28  2019 resynthesizer*
-rwxr-xr-x@ 1 mattpopovich  staff    27K Apr 28  2019 resynthesizer_gui*

ResynthesizerPlugin:
total 0
drwxr-xr-x@  3 mattpopovich  staff    96B Apr 28  2019 ./
drwxr-xr-x  14 mattpopovich  staff   448B Mar 13 13:32 ../
drwxr-xr-x@  6 mattpopovich  staff   192B Apr 28  2019 lib/
mattpopovich@Matts-MacBook-Pro-2 ~/.../GIMP/2.10/plug-ins % ll */*
total 5920
drwxr-xr-x@ 6 mattpopovich  staff   192B Apr 28  2019 ./
drwxr-xr-x@ 3 mattpopovich  staff    96B Apr 28  2019 ../
-rwxr--r--@ 1 mattpopovich  staff   1.9M Apr 28  2019 libcrypto.1.0.0.dylib*
-rwxr--r--@ 1 mattpopovich  staff   122K Apr 28  2019 libgraphite2.3.2.1.dylib*
-rwxr--r--@ 1 mattpopovich  staff   414K Apr 28  2019 libpcre.1.dylib*
-rwxr--r--@ 1 mattpopovich  staff   460K Apr 28  2019 libssh.4.7.4.dylib*

Looks like others are having a similar issue judging from the newest comments on this YouTube video.

I’m going to try and mess around and build the files myself instead of just taking them from the release (which was 3 years ago).

@mattpopovich
Copy link
Author

mattpopovich commented Mar 14, 2021

I tried to build from source, which I needed intltool, which was easy enough to install brew install intltool. Then I needed GIMP development libraries, which there's apparently no straightforward way to install? I found @ryan-robeson's comment that he made a homebrew installation. Unfortunately, that fails due to needing resource "python@2".

So... after that (and more), I think I'm just going to stick to the heal / clone tools manually for now haha.

@mattpopovich
Copy link
Author

mattpopovich commented Mar 14, 2021

Actually, I was able to finally fix this by making a symbolic link to "fake" having a newer dynamically linked library.

cd /usr/local/lib
ln -s libintl.8.dylib libintl.9.dylib

Major thanks to http://homepage.agrl.ethz.ch/eugsterw/knowhow/gimp-resynthesizer/


UPDATE: My old comment is above, but keep reading to my newer comment here for a more robust solution.

@pqs0103
Copy link

pqs0103 commented Mar 26, 2021

So rebuild the plugin from source solved the original problem of running pythyon_fu_heal_selection error?

@dralquinta
Copy link

I have the exact same issue, however none of the solutions given above is actually working. I'm running latest gimp provided by brew (2.10) and running on BigSur M1 silicon.
It seems plugin is correctly installed, as the windows and everything is working properly, however when executing python_fu_heal_selection script from Gimp Interface, this falls with error:

Traceback (most recent call last):
File "/Applications/GIMP-2.10.app/Contents/Resources/lib/gimp/2.0/python/gimpfu.py", line 740, in response
dialog.res = run_script(params)
File "/Applications/GIMP-2.10.app/Contents/Resources/lib/gimp/2.0/python/gimpfu.py", line 361, in run_script
return apply(function, params)
File "/Applications/GIMP-2.10.app/Contents/Resources/lib/gimp/2.0/plug-ins/plugin-heal-selection.py", line 148, in heal_selection
pdb.plug_in_resynthesizer(timg, tdrawable, 0,0, useBorder, work_drawable.ID, -1, -1, 0.0, 0.117, 16, 500)
error: procedure not found

Is there a chance that the build is having issues?

@mattpopovich mattpopovich changed the title An error occurred running pythyon_fu_heal_selection An error occurred running python_fu_heal_selection Apr 5, 2021
@mattpopovich
Copy link
Author

mattpopovich commented Apr 6, 2021

@pqs0103 I was able to solve the python_fu_heal_selection error by creating the symbolic link as mentioned above. Just make sure you have libintl.8.dylib available in /usr/local/lib. If you don't have that available, install brew and make sure it is updated and upgraded.

Additionally, I made a pretty thorough (probably too thorough for GitHub users) tutorial walking you through installing GIMP to installing the resynthesizer plugin to fixing the plugin libraries (symbolic link) to running heal selection. @dralquinta might be worth a try for you, but no guarantees with the M1 chip:


UPDATE:
All that is needed is

cd /Applications/GIMP-2.10.app/Contents/Resources/lib
ln -s libintl.8.dylib libintl.9.dylib

Confirmed to work on

  • Intel Mac Catalina (10.15.7)
  • M1 Mac Big Sur (11.6.8)
  • Intel Mac Big Sur (11.7)
  • M1 Mac Monterey (12.6)

Additional information at:

@pqs0103
Copy link

pqs0103 commented Apr 9, 2021

I was able to fix the problem after brew install some software to finally bring in the libintl.8.dylib into my laptop and do the symbolic link trick. Thank you @mattpopovich

@saintsim
Copy link

saintsim commented May 8, 2022

I found that I needed to add the symlink from this location instead, which is also suggested on: https://gitlab.gnome.org/GNOME/gimp/-/issues/6529 Hoping this tip helps others.

cd /Applications/GIMP-2.10.app/Contents/Resources/lib

ln -s libintl.8.dylib libintl.9.dylib

@cyberfunk
Copy link

ln -s libintl.8.dylib libintl.9.dylib

THANK YOU! On MacOS Monterey and this is the only solution that worked!

@mattpopovich
Copy link
Author

I guess I should leave this open as while I have found a solution, it's not actually "fixed"...

@mattpopovich mattpopovich reopened this Oct 22, 2022
@OdysseyScorpio
Copy link

I have this same issue, but I am on Windows.

@KCapwell
Copy link

KCapwell commented Dec 8, 2022

@mattpopovich

I had to reinstall GIMP recently due to lockups when loading more complex files. After reinstalling GIMP 2.10.32-1, the Resynthesizer plug-in will give an error. I removed GIMP, the GIMP folder from Application Support, and the GIMP preference file. Then I did the following:

Installed: GIMP Version: 2.10.32 (revision 1)
Operating System: macOS Monterey 12.6.1
System: MBP 2019 - Intel i9
Resynthesizer Plugin: aferrero2707 ResynthesizerPlugin-Gimp-2.10-osx.tgz
Plugin location: /Applications/GIMP.app/Contents/Resources/lib/gimp/2.0/plug-ins
Plugin quarantine: sudo xattr -rd com.apple.quarantine [plug-in files]
Symbolic Link fix: /Applications/GIMP.app/Contents/Resources/lib
ln -s libintl.8.dylib libintl.9.dylib

Steps tried: reinstalling GIMP, removing GIMP, tried with HomeBrew install -- all failed with the Resynthesizer plug-in.
I tried brew uninstall gettext and brew install gettext -- for reinstalling libintl.8.dylib

Python error:
Traceback (most recent call last):
File "/Applications/GIMP.app/Contents/Resources/lib/gimp/2.0/python/gimpfu.py", line 741, in response
dialog.res = run_script(params)
File "/Applications/GIMP.app/Contents/Resources/lib/gimp/2.0/python/gimpfu.py", line 362, in run_script
return apply(function, params)
File "/Applications/GIMP.app/Contents/Resources/lib/gimp/2.0/plug-ins/plugin-heal-selection.py", line 148, in heal_selection
pdb.plug_in_resynthesizer(timg, tdrawable, 0,0, useBorder, work_drawable.ID, -1, -1, 0.0, 0.117, 16, 500)
error: procedure not found

Gimp error:
Calling error for procedure 'gimp-procedural-db-proc-info':
Procedure 'plug-in-resynthesizer' not found

I must be missing something obvious. This all worked with the previous version of GIMP.

Thank you for your input.

@vnnegt
Copy link

vnnegt commented Mar 21, 2024

@OdysseyScorpio @KCapwell i was able to "fix" this by downloading intl.dll and placing it in GIMP's bin directory

i'm using the latest GIMP Portable

@jbhoward-dublin
Copy link

With macOS Monterey 12.7.5 and Gimp 2.10.32, I was able to get the plugin working thus:

find /opt/ -name 'libintl*'
/opt//local/lib/libintl.dylib
/opt//local/lib/libintl.8.dylib
/opt//local/lib/libintl.a
cd /Applications/GIMP-2.10.app/Contents/Resources/lib
ln -s /opt//local/lib/libintl.8.dylib libintl.9.dylib

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

9 participants