linux-source-tools / gimp-plugin-vtf

VTF plugin for Gimp on Linux
53 stars 13 forks source link

The Plugin Doesn't Work #11

Open Afacanc38 opened 1 year ago

Afacanc38 commented 1 year ago

Plugin compiled on Fedora and installed on GIMP. But it doesn't recognize the file. resim The compile log:

g++ -Wall -g -Wno-write-strings -o file-vtf vtf.cpp gimp-plugin-vtf.cpp `pkg-config --cflags --libs gimp-2.0 gimpui-2.0 gtk+-2.0` -Ilibsquish/include -Llibsquish/lib -lsquish -lboost_iostreams
vtf.cpp: In member function 'void Vtf::HiresImageResource::read(std::istream&, uint32_t, Vtf::Format, uint16_t, uint16_t, uint16_t, uint8_t, uint16_t)':
vtf.cpp:250:56: UYARI: 'void operator delete(void*, std::size_t)' called on pointer returned from a mismatched allocation function [-Wmismatched-new-delete]
  250 |                                                 delete data;
      |                                                        ^~~~
vtf.cpp:247:72: bilgi: returned from 'void* operator new [](std::size_t)'
  247 |                                       uint8_t* data = new uint8_t[len];
      |                                                                      ^

vtf.cpp: In member function 'void Vtf::File::load(std::istream&)':
vtf.cpp:495:32: UYARI: 'void operator delete(void*, std::size_t)' called on pointer returned from a mismatched allocation function [-Wmismatched-new-delete]
  495 |                         delete rsrc;
      |                                ^~~~
vtf.cpp:492:76: bilgi: returned from 'void* operator new [](std::size_t)'
  492 |           HeaderResource* rsrc = new HeaderResource[hdr.resourceCount];
      |                                                                      ^

In file included from /usr/include/gtk-2.0/gtk/gtkobject.h:37,
                 from /usr/include/gtk-2.0/gtk/gtkwidget.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkcontainer.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkbin.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkwindow.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkdialog.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkaboutdialog.h:32,
                 from /usr/include/gtk-2.0/gtk/gtk.h:33,
                 from /usr/include/gimp-2.0/libgimp/gimpui.h:22,
                 from gimp-plugin-vtf.cpp:4:
/usr/include/gtk-2.0/gtk/gtktypeutils.h:236:64: UYARI: 'GTypeDebugFlags' is deprecated [-Wdeprecated-declarations]
  236 | void            gtk_type_init   (GTypeDebugFlags    debug_flags);
      |                                                                ^
In file included from /usr/include/glib-2.0/gobject/gobject.h:26,
                 from /usr/include/glib-2.0/gobject/gbinding.h:31,
                 from /usr/include/glib-2.0/glib-object.h:24,
                 from /usr/include/gegl-0.4/gegl.h:22,
                 from /usr/include/gimp-2.0/libgimp/gimp.h:25,
                 from gimp-plugin-vtf.cpp:3:
/usr/include/glib-2.0/gobject/gtype.h:729:3: bilgi: declared here
  729 | } GTypeDebugFlags GOBJECT_DEPRECATED_TYPE_IN_2_36;
      |   ^~~~~~~~~~~~~~~
In file included from /usr/include/gtk-2.0/gtk/gtktoolitem.h:31,
                 from /usr/include/gtk-2.0/gtk/gtktoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtkmenutoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtk.h:126:
/usr/include/gtk-2.0/gtk/gtktooltips.h:73:12: UYARI: 'GTimeVal' is deprecated: Use 'GDateTime' instead [-Wdeprecated-declarations]
   73 |   GTimeVal last_popdown;
      |            ^~~~~~~~~~~~
In file included from /usr/include/glib-2.0/glib/galloca.h:34,
                 from /usr/include/glib-2.0/glib.h:32,
                 from /usr/include/glib-2.0/gobject/gbinding.h:30:
/usr/include/glib-2.0/glib/gtypes.h:578:26: bilgi: declared here
  578 | typedef struct _GTimeVal GTimeVal GLIB_DEPRECATED_TYPE_IN_2_62_FOR(GDateTime);
      |                          ^~~~~~~~
gimp-plugin-vtf.cpp: In function 'gboolean file_vtf_load_layer(Vtf::HiresImageResource*, gint32, gint16)':
gimp-plugin-vtf.cpp:258:52: UYARI: 'GimpDrawable* gimp_drawable_get(gint32)' is deprecated: Use 'gimp_drawable_get_buffer' instead [-Wdeprecated-declarations]
  258 |         GimpDrawable *drawable = gimp_drawable_get (layer);
      |                                  ~~~~~~~~~~~~~~~~~~^~~~~~~
In file included from /usr/include/gimp-2.0/libgimp/gimp.h:41:
/usr/include/gimp-2.0/libgimp/gimpdrawable.h:52:16: bilgi: declared here
   52 | GimpDrawable * gimp_drawable_get                    (gint32         drawable_ID);
      |                ^~~~~~~~~~~~~~~~~
gimp-plugin-vtf.cpp:259:29: UYARI: 'void gimp_pixel_rgn_init(GimpPixelRgn*, GimpDrawable*, gint, gint, gint, gint, gint, gint)' is deprecated: Use 'gimp_drawable_get_buffer' instead [-Wdeprecated-declarations]
  259 |         gimp_pixel_rgn_init (&pixel_rgn, drawable, 0, 0, drawable->width,
      |         ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  260 |                         drawable->height, TRUE, FALSE);
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/gimp-2.0/libgimp/gimp.h:57:
/usr/include/gimp-2.0/libgimp/gimppixelrgn.h:48:11: bilgi: declared here
   48 | void      gimp_pixel_rgn_init       (GimpPixelRgn  *pr,
      |           ^~~~~~~~~~~~~~~~~~~
gimp-plugin-vtf.cpp:261:33: UYARI: 'void gimp_pixel_rgn_set_rect(GimpPixelRgn*, const guchar*, gint, gint, gint, gint)' is deprecated: Use 'gegl_buffer_set' instead [-Wdeprecated-declarations]
  261 |         gimp_pixel_rgn_set_rect (&pixel_rgn, rgba, 0, 0, drawable->width,
      |         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  262 |                         drawable->height);
      |                         ~~~~~~~~~~~~~~~~~
/usr/include/gimp-2.0/libgimp/gimppixelrgn.h:104:11: bilgi: declared here
  104 | void      gimp_pixel_rgn_set_rect   (GimpPixelRgn  *pr,
      |           ^~~~~~~~~~~~~~~~~~~~~~~
gimp-plugin-vtf.cpp:263:30: UYARI: 'void gimp_drawable_detach(GimpDrawable*)' is deprecated [-Wdeprecated-declarations]
  263 |         gimp_drawable_detach (drawable);
      |         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
/usr/include/gimp-2.0/libgimp/gimpdrawable.h:54:16: bilgi: declared here
   54 | void           gimp_drawable_detach                 (GimpDrawable  *drawable);
      |                ^~~~~~~~~~~~~~~~~~~~
gimp-plugin-vtf.cpp: In function 'gint32 file_vtf_load_image(const gchar*, GError**)':
gimp-plugin-vtf.cpp:275:14: UYARI: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  275 |         std::auto_ptr<Vtf::File> vtf (new Vtf::File);
      |              ^~~~~~~~
In file included from /usr/include/c++/13/memory:78,
                 from gimp-plugin-vtf.cpp:2:
/usr/include/c++/13/bits/unique_ptr.h:65:28: bilgi: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
gimp-plugin-vtf.cpp: In function 'GimpPDBStatusType file_vtf_save_image(const gchar*, gint32, gint32, GError**)':
gimp-plugin-vtf.cpp:500:14: UYARI: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
  500 |         std::auto_ptr<Vtf::File> vtf (new Vtf::File);
      |              ^~~~~~~~
/usr/include/c++/13/bits/unique_ptr.h:65:28: bilgi: declared here
   65 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~

GIMP version: resim

ZAQraven commented 1 year ago

Same here. On Fedora 38