gimp symbol lookup error


(Gabriele ) #1

Hi, I download from ellestone’s git bab/gegl/gimp. During compiling all was ok.
When I launch gimp-2.9 I have:
gimp-2.9: symbol lookup error: gimp-2.9: undefined symbol: colorant_data

Can anyone help me ?

Cheers
Gabriele


(Elle Stone) #2

It’s a bit difficult to troubleshoot without more information. But “colorant_data” is one of the very first variables that is set when the “cce” version of gimp is started. If colorant_data is undefined, then my first thought is that gimp-cce isn’t linking with babl-cce, but instead with default babl. Is it possible that you changed the way you set up the prefix? Or maybe default babl is installed somewhere else on your computer and maybe gimp-cce is finding the wrong version of babl?

Getting prefixes crossed up is very easy to do - this morning I compiled code for two different versions of GIMP in two different prefixes and accidentally pasted commands for compiling the first prefix into the terminal for the other prefix - not good!

Where is the prefix located? Is it in your home folder? (preferably yes)? or in /usr/local or /opt (can cause issues when running more than one version of GIMP)?


(Carmelo Dr Raw) #3

Alternatively, and if you want to avoid the troubles of compiling from sources, you can try to download and run the CCE appimage from the “community built” page in this very same forum… I am keeping it up-to-date with the gimp developments.


(Gabriele ) #4

Hi All,
My prefix is /usr/local and I installed gimp-cce a lot of times without problems…
I tried to compile with attention to PKG_CONFIG_PATH variable and it was set to /usr/local/lib/pkgconfig where babl gegl cce pc files are installed.
Into config.log I see a lot of cce babl references but when all is compiled with ldd command on gimp-2.9 executable I have:
libbabl-0.1.so.0 => /usr/lib64/libbabl-0.1.so.0 (0x00007f74674a2000)

It points to default babl, and I do not know because it’s so.

For me it’s very strange
Any hints???

Cheers
Gabriele


(Elle Stone) #5

Hmm, I know someone who installed gimp-cce a lot of time without problems, in /opt. And I know someone else (me) who installed gimp-cce in /usr/local without problems.

In both cases eventually “something” went wrong and the easiest way to get back to a working installation was to completely uninstall everything from /usr/local and from /opt and instead install in a prefix in the home folder.

Just to make sure, did you follow the instructions on this page regarding setting up the prefix? http://ninedegreesbelow.com/photography/build-gimp-in-prefix-for-artists.html#prefix

Specifically this line:
export GIO_EXTRA_MODULES=/usr/lib/gio/modules

as per this discussion? https://mail.gnome.org/archives/gimp-developer-list/2015-February/msg00052.html

I agree it’s strange and very annoying to have a setup that works just fine suddenly stop working. Perhaps there was a problem in how the last install was done, in which case completely uninstalling and deleting any remnant files from the install folder is the first step. It’s a lot easier to do this when installing in a prefix in the home folder than it is when installing in /usr/local or in /opt.

Hope some of the above helps!


(Carmelo Dr Raw) #6

First thing to check: do you have /usr/local/lib at the beginning of your LD_LIBRARY_PATH variable?


(Gabriele ) #7

Hi Carmelo and Elle,
thanks you for your time but I want discover because I can’t install in /usr/local…( until March I installed into /usr/local without trouble)
Elle, I set GIO_EXTRA_MODULES ( I didn’t set it) but gimp points to default babl into /usr/lib64…
Carmelo, LD_LIBRARY_PATH was not set, but after set gimp points to default babl into /usr/lib64, too.

I deleted default babl and compiled bab/gegl/gimp (CCE) but when I launch gimp it says lib is not found . It 's very strange.

Now I reinstalled old my version but I want to be up to date …
Other hints?

Cheers
Gabriele


(Gabriele ) #8

Hi All,
I solved with LDFLAGS="-Wl,-rpath,/usr/local/lib" which forces to embed -rpath into executable.
i don’t know because if I set PKG_CONFIG_PATH to pkgconfig of gimp-cce il doesn’t work (ldd show babl and gegl CCE libs but not gimp). I am not in front of PC and could be I don’t remember well something.
Cheers
Gabriele


(Gabriele ) #9

For information…

I removed all babl+gegl+gimp versions from my pc included the one of my distro and recompiled all.
Now all works fine.
Because I’m not an expert in compiling and setting all environment variables I think something pointed to the distro libs .

Cheers