SliTaz SliTaz Forum

You are not logged in.

#1 2025-10-18 21:00:25

Ceel
Administrator
Registered: 2011-04-02
Posts: 1,424

[Rolling] imlib2 does not load .png files

Hi,

I cooked the WM e16 for Rolling and Current.

In Current, e16 works fine; in Rolling, borders, button, cursors, etc... are not displayed (but active).

Running it from the tty with [c]startx[/c] the console displays for each [c].png[/c] that should be loaded a message like this one:

[c]ImagestateRealize: Hmmm... is->im is NULL (im_file=menustyles/images/menu-arrow.png real_file=/usr/share/e16/themes/winter/menustyles/images/menu-arrow.png)[/c]

Current uses imlib2 v1.12.2, Rolling v1.10.0. So I cooked v1.12.2 in Rolling (using [c]gcc83[/c] like Current) but no differences.

[c]imlib2.log[/c] in Rolling shows:

[...]
  CC       png_la-loader_png.lo
loader_png.c: In function 'info_callback':
loader_png.c:210:7: warning: implicit declaration of function 'png_longjmp'; did you mean 'siglongjmp'? [-Wimplicit-function-declaration]
       png_longjmp(png_ptr, 1);
       ^~~~~~~~~~~
       siglongjmp
loader_png.c: In function 'row_callback':
loader_png.c:232:14: warning: implicit declaration of function 'PNG_PASS_START_COL' [-Wimplicit-function-declaration]
         x0 = PNG_PASS_START_COL(pass);
              ^~~~~~~~~~~~~~~~~~
loader_png.c:233:14: warning: implicit declaration of function 'PNG_PASS_COL_OFFSET' [-Wimplicit-function-declaration]
         dx = PNG_PASS_COL_OFFSET(pass);
              ^~~~~~~~~~~~~~~~~~~
loader_png.c:234:14: warning: implicit declaration of function 'PNG_PASS_START_ROW' [-Wimplicit-function-declaration]
         y0 = PNG_PASS_START_ROW(pass);
              ^~~~~~~~~~~~~~~~~~
loader_png.c:235:14: warning: implicit declaration of function 'PNG_PASS_ROW_OFFSET' [-Wimplicit-function-declaration]
         dy = PNG_PASS_ROW_OFFSET(pass);
              ^~~~~~~~~~~~~~~~~~~
loader_png.c:256:45: warning: implicit declaration of function 'PNG_PASS_ROWS'; did you mean 'PNG_FREE_ROWS'? [-Wimplicit-function-declaration]
         done = pass >= 6 && (int)row_num >= PNG_PASS_ROWS(im->h, pass) - 1;
                                             ^~~~~~~~~~~~~
                                             PNG_FREE_ROWS
loader_png.c:279:19: warning: implicit declaration of function 'png_process_data_pause'; did you mean 'png_process_data'? [-Wimplicit-function-declaration]
                   png_process_data_pause(png_ptr, 0);
                   ^~~~~~~~~~~~~~~~~~~~~~
                   png_process_data
  CCLD     png.la
[...]
These messages are not present in the log in Current; why this difference, [c]glibc[/c] too old in Rolling?

I cooked the latest release of [c]imlib2[/c] for each last 1.x series; v1.7.5 compiles without warnings and e16 works as expected; v1.8.1 compiles with warnings and e16 "failed".

Note that when cooked with [c]gcc-4.6.3[/c], [c]imlib2.log[/c] shows a lot of other warnings that don't exist when compiled with [c]gcc83[/c]. IMHO, the receipt should be modified to use [c]gcc83[/c]. The [c]ChangeLog[/c] in [c]ìmlib2[/c]sources doesn't give precise informations about this.

Nobody else meets issue with [c]imlib2[/c]? ie in [c]icewm[/c]?

Offline

#2 2025-10-19 20:06:29

shann
Administrator
Registered: 2011-04-01
Posts: 1,296
Website

Re: [Rolling] imlib2 does not load .png files

Hi Ceel,

If understand, we need to downgrade imlib2 to 1.7.5 with gcc83 for e16 build and work ?

Downgrade imlib2 could be impact packages depend on it hmm

I see enlightenment is 0.17.5 on rolling, maybe we could be imlib2-175 and add as depend in your receipt.

Offline

#3 2025-10-19 22:15:54

Ceel
Administrator
Registered: 2011-04-02
Posts: 1,424

Re: [Rolling] imlib2 does not load .png files

Hi shann,

If understand, we need to downgrade imlib2 to 1.7.5 with gcc83 for e16 build and work ?

This is the workaround I found when I understood that [c]imlib2[/c] was the problem; messages [c]warning: implicit declaration of function[/c] appear for each of releases 1.10.0, 1.9.1 and 1.8.1 when compiling [c]png_la-loader_png.lo[/c] and none of them load png files.

Compiling with [c]gcc-4.6.3[/c] (Rolling) there are a lot of warnings that don't exist when compiling with gcc83. I don't know if these  messages are important or not, I am singularly lacking in skills in this area hmm. Look at the log in the cooker.

Downgrade imlib2 could be impact packages depend on it hmm

Yes. But do all of these packages work correctly... I'm quite sure no. Tomorow, rainy day. I should find time to test some apps that use [c]imlib2[/c] and tell you.

I see enlightenment is 0.17.5 on rolling

"E16 is predecessor of the current E25 Enlightenment Window Manager, which is rather complete rewrite than incremental update of E16. Although most of the current development focus goes to E25, E16 is still under independent active development and some users prefer it to E25. In this sense E16 will keep its name while incrementing the versions from 1.0.0." (https://www.enlightenment.org/e16 ).

I find it pleasant, quite fast and light.

maybe we could be imlib2-175 and add as depend in your receipt

Well, that's what I've done wink

Offline

#4 2025-10-20 12:06:23

shann
Administrator
Registered: 2011-04-01
Posts: 1,296
Website

Re: [Rolling] imlib2 does not load .png files

Hi Ceel,

If we use imlib2-175, not problem to keep imlib2 as it, but of course need to be sure that e16 use libImlib2.so.1.12.2 and not symlink libImlib2.so.1

But infact need to be sure that imlib2-175 not override imlib2 files.

Thanks for information, not follow development, i know e16 and e17 only wink

Offline

#5 2025-10-20 17:20:46

Ceel
Administrator
Registered: 2011-04-02
Posts: 1,424

Re: [Rolling] imlib2 does not load .png files

Hi shann,

Difficult to say if the [c]imlib2[/c] package of the repo works or not.

If [c]icewm[/c] installs some png icons it uses xpm icons for its display. [c]icewm[/c] works fine.

I tested with [c]qiv[/c] (Quick Image Viewer) but whatever the extension of the image, it returns the messages

[c]Gdk-CRITICAL **: IA__gdk_drawable_set_colormap: assertion 'cmap == NULL || gdk_drawable_get_depth (drawable) == cmap->visual->depth' failed
Gdk-CRITICAL **: IA__gdk_window_set_back_pixmap: assertion 'pixmap == NULL || gdk_drawable_get_depth (window) == gdk_drawable_get_depth (pixmap)' failed[/c]
and displays a black "image". hmm

Finally wanted to replace [c]openbox[/c] with [c]openbox-imlib2[/c] that allows icons in the menu but [c]openbox-imlib2[/c] has disappeared of the repo... hmm

e16 uses the symlink [c]libImlib2.so.1[/c] to start and yes, installing [c]imlib2-175[/c] will overwrite all the [c]imlib2-1.10.0[/c] files even [c]libImlib2.so.1.10.0[/c].

Here is the list of files installed by [c]imlib2-175[/c]:

[c]/usr/lib/imlib2/filters/bumpmap.so
/usr/lib/imlib2/filters/testfilter.so
/usr/lib/imlib2/filters/colormod.so
/usr/lib/imlib2/loaders/gif.so
/usr/lib/imlib2/loaders/png.so
/usr/lib/imlib2/loaders/xbm.so
/usr/lib/imlib2/loaders/tiff.so
/usr/lib/imlib2/loaders/pnm.so
/usr/lib/imlib2/loaders/tga.so
/usr/lib/imlib2/loaders/lbm.so
/usr/lib/imlib2/loaders/zlib.so
/usr/lib/imlib2/loaders/bmp.so
/usr/lib/imlib2/loaders/id3.so
/usr/lib/imlib2/loaders/argb.so
/usr/lib/imlib2/loaders/ff.so
/usr/lib/imlib2/loaders/jpeg.so
/usr/lib/imlib2/loaders/xpm.so
/usr/lib/imlib2/loaders/ico.so
/usr/lib/imlib2/loaders/bz2.so
/usr/lib/libImlib2.so.1.7.5
/usr/bin/imlib2_bumpmap
/usr/bin/imlib2_conv
/usr/bin/imlib2_grab
/usr/bin/imlib2_colorspace
/usr/bin/imlib2_show
/usr/bin/imlib2_poly
/usr/bin/imlib2_test
/usr/bin/imlib2_load
/usr/bin/imlib2_view
/usr/lib/libImlib2.so.1
/usr/lib/libImlib2.so[/c]

Offline

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.017 seconds, 7 queries executed - Memory usage: 1.55 MiB (Peak: 1.77 MiB) ]