-
Notifications
You must be signed in to change notification settings - Fork 166
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
Error building with GIMP3-RC2 #140
Comments
Thanks. GimpDrawable is a subclass of GimpItem. Using GObject classes, you often need to cast. I think gimp_item_get_image( (GimpItem*) d) would fix it. I think it compiled without error and worked before, when compiled not checking for incompatible pointer types. I could be wrong, this is just my initial diagnosis. |
With this change on --- a/enginePlugin/drawable.c
+++ b/enginePlugin/drawable.c
@@ -57,7 +57,7 @@ get_selection(GimpDrawable * d)
// selection is a new drawable derived from image of a drawable
// TODO this is not right for v3 ??
// return gimp_image_get_selection(gimp_item_get_image(d->drawable_id));
- return gimp_image_get_selection(gimp_item_get_image(d));
+ return gimp_image_get_selection(gimp_item_get_image((GimpItem*)d));
}
gboolean I get this error while building:
Full build log with all versions of packages used and steps taken to reproduce. |
Probably a similar fix as earlier in the thread. Cast the result (GimpDrawable*) A selection is a mask, a pixmap where every pixel is an 8-bit degree of selection. I would guess that the class GimpSelection is a relatively recent change to GIMP. |
OK, that helped. Now, I have only a problem with
Should I open a new ticket? |
Yes please open a new ticket. I usually avoid messing with the prefix, instead let meson decide where to find/install many things, from platform standard places. This builds a library and installs it in the usual place for libraries. The engine plugin uses the library. The engine plugin executable is installed where GIMP app expects to find it. Not sure about meson... is libdir telling where libraries might be found, or should be installed? Also, what is the platform? I recall a path like that on Ubuntu, which I think is slightly different from other distributions re the "standard" for directory structure. I have started to build the branch. Again, for the first time in a long time. But , for now, away from my build computer. |
The build seems to stop at the step: install the .scm scripts. One problem is it references the dir ../gimp/2.0/... but that should be 3.0 if building with GIMP3.0rc1 or later. The scripts should be installed in the user's configuration directory for GIMP. (Alternately, they could be installed in /scripts, the "old-style". I don't know why "x86-64" is part of the path. I don't know the causes yet, and unable to test myself until back at my dev computer. |
The cause is that the top resynthesizer/meson.build incorrectly The build file should do something more general and sophisticated: You can probably hardcode a path that works for you. If you find a more general fix, please submit an MR. A more general fix requires more knowledge of meson, how to declare in meson the path to a user's config directory, |
I have opened #141, and I will continue the discussion there. In terms of pure building of binaries, I think, we are done here. |
Thank you SO much. I was able to build the resynthesizer3 branch on Ubuntu 24.04 and its clang compiler with warnings where you cited errors. Anyway, thanks for fixing and I will merge soon. I also am not sure the install of the .scm scripts is correct, or that the scripts themselves are correct. I will work on that. Also, I think your patch installs a built resynthesizer to the directories for all users? Is your role as a maintainer of the resynthesizer package on OpenSuse. |
Fixed by MR #142 |
The text was updated successfully, but these errors were encountered: