Hi,

After an update of some packages on my 64 bits machine, I'm having
problems with my IUP applications. So, I tried with another 64 bits
system to check if something is wrong on my system. Then I install
OpenSUSE Leap 42.1 and I get same problems. Well not exactly the same
problems, but problems. On the initial system (an Ubuntu based distro)
some widgets are not displayed correctly or don't work correctly. On
OpenSUSE some apps simply crash at launch. The problems occurs when the
app link the libraries iupim and im. If I remove those libraries (and
the code that use those libraries), then the application works
prefectly. Here the backtrace I get with one test application:

(gdb) backtrace
#0  0x00007ffff73f62e0 in __longjmp_chk () at /lib64/libc.so.6
#1  0x00007fffeaf0bd6c in  ()
    at /usr/lib64/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-png.so
#2  0x00007ffff4b5b376 in png_error () at /usr/lib64/libim.so
#3  0x00007ffff4b54651 in png_create_read_struct_2 () at
/usr/lib64/libim.so
#4  0x00007fffeaf0bffa in  ()
    at /usr/lib64/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-png.so
#5  0x00007ffff6031241 in  () at /usr/lib64/libgdk_pixbuf-2.0.so.0
#6  0x00007ffff6031af8 in gdk_pixbuf_loader_close ()
    at /usr/lib64/libgdk_pixbuf-2.0.so.0
#7  0x00007ffff602d935 in  () at /usr/lib64/libgdk_pixbuf-2.0.so.0
#8  0x00007ffff602f76c in gdk_pixbuf_new_from_stream ()
    at /usr/lib64/libgdk_pixbuf-2.0.so.0
#9  0x00007ffff6bf7fbd in  () at /usr/lib64/libgtk-3.so.0
#10 0x00007ffff6bfb758 in gtk_icon_info_load_icon ()
    at /usr/lib64/libgtk-3.so.0
#11 0x00007ffff6bfb9dc in gtk_icon_theme_load_icon_for_scale ()
    at /usr/lib64/libgtk-3.so.0
#12 0x00007ffff7b4bc15 in iupdrvImageLoad () at /usr/lib64/libiup.so
#13 0x00007ffff7b030c9 in iupImageGetImage () at /usr/lib64/libiup.so
#14 0x00007ffff7b358b6 in gtkButtonSetPixbuf () at /usr/lib64/libiup.so
#15 0x00007ffff7b3617d in gtkButtonSetImageAttrib () at
/usr/lib64/libiup.so
#16 0x00007ffff7afd9b0 in iupClassObjectSetAttribute () at
/usr/lib64/libiup.so
---Type <return> to continue, or q <return> to quit---
#17 0x00007ffff7aefd31 in iupAttribUpdate () at /usr/lib64/libiup.so
#18 0x00007ffff7af91f4 in IupMap () at /usr/lib64/libiup.so
#19 0x00007ffff7af9210 in IupMap () at /usr/lib64/libiup.so
#20 0x00007ffff7af9210 in IupMap () at /usr/lib64/libiup.so
#21 0x00007ffff7af9210 in IupMap () at /usr/lib64/libiup.so
#22 0x00007ffff7af9210 in IupMap () at /usr/lib64/libiup.so
#23 0x00007ffff7af9400 in IupShow () at /usr/lib64/libiup.so
#24 0x0000000000400c67 in main ()
(gdb)

I tried install the IM, CD and IUP libraries from SVN. But I get an
error with IM:

Tecmake: compiling im_format_png.cpp ...
g++ -c  -Wall -O2 -m64 -fPIC -I. -I../include -Ilibtiff 
-I/usr/include/libpng -Ilibjpeg -Ilibexif -Iliblzf    -DUSE_EXIF 
-DTEC_UNAME=Linux41_64 -DTEC_SYSNAME=Linux -DLinux=4.1 
-DTEC_LITTLEENDIAN -DTEC_64 -DFUNCPROTO=15 -DNDEBUG -o
../obj/Linux41_64/im_format_png.o im_format_png.cpp
im_format_png.cpp: In member function ‘virtual int
imFileFormatPNG::ReadImageInfo(int)’:
im_format_png.cpp:624:27: error: ‘PNG_SKIP_sRGB_CHECK_PROFILE’ was not
declared in this scope
   png_set_option(png_ptr, PNG_SKIP_sRGB_CHECK_PROFILE, 1);
                           ^
../tecmake.mak:1631: recipe for target
'../obj/Linux41_64/im_format_png.o' failed
make[1]: *** [../obj/Linux41_64/im_format_png.o] Error 1
Makefile:12: recipe for target 'im' failed
make: *** [im] Error 2

Currently I only can work in a 32 bits machine, where all works
perfectly. Attached the test application that crash on OpenSUSE, I
compile it with:

gcc c_example7.c -I/usr/include/iup -liup -liupim -lim -liupimglib


Regards.
Germán
#include <stdlib.h>
#include <iup.h>

int main(int argc, char **argv)
{
  Ihandle *dlg, *bt1, *bt2, *bt3, *bt4, *bt5;
  Ihandle *expand, *hbox1, *hbox2, *sbox, *tree, *vbox;

  IupOpen(&argc, &argv);
  IupImageLibOpen();

  // Create the buttons to the expander
  bt1 = IupButton("", NULL);
  IupSetAttribute(bt1, "IMAGE", "IUP_FileNew");
  bt2 = IupButton("", NULL);
  IupSetAttribute(bt2, "IMAGE", "IUP_FileOpen");
  bt3 = IupButton("", NULL);
  IupSetAttribute(bt3, "IMAGE", "IUP_FileSave");

  hbox1 = IupHbox(bt1, bt2, bt3, NULL);
  expand = IupExpander(hbox1);

  // Create the buttons to the sbox
  bt4 = IupButton("Button inside Sbox", NULL);
  bt5 = IupButton("Other button", NULL);

  sbox = IupSbox(bt4);
  hbox2 = IupHbox(sbox, bt5, NULL);

  // Tree
  tree = IupTree();
  
  dlg = IupDialog(IupVbox(expand, hbox2, tree, NULL));  

  IupShow(dlg);

  // Add items to tree
  IupSetAttribute(tree, "NAME","Figures");
  IupSetAttribute(tree, "ADDBRANCH","3D");
  IupSetAttribute(tree, "ADDBRANCH","2D");
  IupSetAttribute(tree, "ADDLEAF","test");
  IupSetAttribute(tree, "ADDBRANCH1","parallelogram");
  IupSetAttribute(tree, "ADDLEAF2","diamond");
  IupSetAttribute(tree, "ADDLEAF2","square");
  IupSetAttribute(tree, "ADDBRANCH1","triangle");
  IupSetAttribute(tree, "ADDLEAF2","scalenus");
  IupSetAttribute(tree, "ADDLEAF2","isoceles");
  IupSetAttribute(tree, "ADDLEAF2","equilateral");
  IupSetAttribute(tree, "VALUE","6");

  IupMainLoop();
  IupClose();
  return EXIT_SUCCESS;
}
------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
_______________________________________________
Iup-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/iup-users

Reply via email to