RE: Failed to install Gtk2 module on windows
I run your script. While running Makefile.PL for Glib, it claims no glib library was included: Including generated API documentation...Note (probably harmless): No library found for -lgobject-2.0Note (probably harmless): No library found for -lgthread-2.0Note (probably harmless): No library found for -lglib-2.0Note (probably harmless): No library found for -lintlWriting Makefile for Glib and while compiling Glib, at the linking stage, it seems no glib library was included, and it cried out a lot of undefined names. This is the compiling parameters: g++ -o blib\arch\auto\Glib\Glib.dll -Wl,--base-file -Wl,dll.base -mdll -s -LD:\strawberry\perl\lib\CORE -LD:\strawberry\c\lib Glib.o GError.o GUtils.o GLog.o GType.o GBoxed.o GObject.o GValue.o GClosure.o GSignal.o GMainLoop.o GIOChannel.o GParamSpec.o GKeyFile.o GOption.o GBookmarkFile.o gperl-gtypes.o -Wl,--image-base,0x6908 D:\strawberry\perl\lib\CORE\libperl512.a D:\strawberry\c\i686-w64-mingw32\lib\libmoldname.a D:\strawberry\c\i686-w64-mingw32\lib\libkernel32.a D:\strawberry\c\i686-w64-mingw32\lib\libuser32.a D:\strawberry\c\i686-w64-mingw32\lib\libgdi32.a D:\strawberry\c\i686-w64-mingw32\lib\libwinspool.a D:\strawberry\c\i686-w64-mingw32\lib\libcomdlg32.a D:\strawberry\c\i686-w64-mingw32\lib\libadvapi32.a D:\strawberry\c\i686-w64-mingw32\lib\libshell32.a D:\strawberry\c\i686-w64-mingw32\lib\libole32.a D:\strawberry\c\i686-w64-mingw32\lib\liboleaut32.a D:\strawberry\c\i686-w64-mingw32\lib\libnetapi32.a D:\strawberry\c\i686-w64-mingw32\lib\libuuid.a D:\strawberr y\c\i686-w64-mingw32\lib\libws2_32.a D:\strawberry\c\i686-w64-mingw32\lib\libmpr.a D:\strawberry\c\i686-w64-mingw32\lib\libwinmm.a D:\strawberry\c\i686-w64-mingw32\lib\libversion.a D:\strawberry\c\i686-w64-mingw32\lib\libodbc32.a D:\strawberry\c\i686-w64-mingw32\lib\libodbccp32.a D:\strawberry\c\i686-w64-mingw32\lib\libcomctl32.a dll.exp Date: Tue, 17 Jul 2012 18:38:18 +0200 From: martin.schlem...@nwu.ac.za To: jianding...@msn.com CC: gtk-perl-list@gnome.org Subject: Re: Failed to install Gtk2 module on windows On 7/17/2012 at 3:51 AM, YangXi jianding...@msn.com wrote: Hi, everyone! I use strawberry perl which contains mingw. I also downloaded gtk+-bundle-X.zip from Gtk website, uncompress it, and added its bin directory to Path. While compiling the perl Pango module via cpan -if Pango, it got the following linking error message: [ LD blib\arch\auto\Pango\Pango.dll ]xs/PangoCairo.o:PangoCairo.c:(.text+0x5b7): undefined reference to `cairo_reference'xs/PangoCairo.o:PangoCairo.c:(.text+0x9a5): undefined reference to `cairo_font_options_copy'xs/PangoCairo.o:PangoCairo.c:(.text+0x1722): undefined reference to `cairo_scaled_font_reference'collect2: ld returned 1 exit status These functions are from cairo, so I modified pangocairo.pc: Libs: -L${libdir} -lpangocairo-1.0 -lcairo and compiled again, but the error still occur. The pkg-config seems working well: pkg-config --libs pangocairo-LD:/Gtk-2.0/lib -lpangocairo-1.0 -lpango-1.0 -lcairo -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lglib-2.0 -lintl Thanks!!! The problem is perl-Cairo's import library interfere with Cairo's (the way MakeMaker handles them). Copy attached to the directory that contains the gtk+-bundle, and rebuild Cairo, then try building Pango again. Regards, Martin Vrywaringsklousule / Disclaimer: http://www.nwu.ac.za/it/gov-man/disclaimer.html ___ gtk-perl-list mailing list gtk-perl-list@gnome.org https://mail.gnome.org/mailman/listinfo/gtk-perl-list
Failed to install Gtk2 module on windows
Hi, everyone! I use strawberry perl which contains mingw. I also downloaded gtk+-bundle-X.zip from Gtk website, uncompress it, and added its bin directory to Path. While compiling the perl Pango module via cpan -if Pango, it got the following linking error message: [ LD blib\arch\auto\Pango\Pango.dll ]xs/PangoCairo.o:PangoCairo.c:(.text+0x5b7): undefined reference to `cairo_reference'xs/PangoCairo.o:PangoCairo.c:(.text+0x9a5): undefined reference to `cairo_font_options_copy'xs/PangoCairo.o:PangoCairo.c:(.text+0x1722): undefined reference to `cairo_scaled_font_reference'collect2: ld returned 1 exit status These functions are from cairo, so I modified pangocairo.pc: Libs: -L${libdir} -lpangocairo-1.0 -lcairo and compiled again, but the error still occur. The pkg-config seems working well: pkg-config --libs pangocairo-LD:/Gtk-2.0/lib -lpangocairo-1.0 -lpango-1.0 -lcairo -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lglib-2.0 -lintl Thanks!!! ___ gtk-perl-list mailing list gtk-perl-list@gnome.org https://mail.gnome.org/mailman/listinfo/gtk-perl-list
[no subject]
http://unitedpostcard.com/productphotos/ytnjfvk.htm ___ gtk-perl-list mailing list gtk-perl-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-perl-list
[no subject]
http://ourdogbrock.com/review/upload/2011/06/12/thumbnail/zpnwgklh.htm ___ gtk-perl-list mailing list gtk-perl-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-perl-list
[no subject]
http://theturnoverdoctor.com/wp-content/themes/carrington-business/_carrington-build/module-options/custom-classes/idmaild.htm?iwyp=iwyp ___ gtk-perl-list mailing list gtk-perl-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-perl-list
RE: generic refcounted object perl binding
Another question about wrapper design, in function gperl_new_object() where an new wrapper is newly created: ..obj = (SV *)g_object_get_qdata (object, wrapper_quark); if (!obj) {..// created a hashobj = (SV *)newHV (); _gperl_attach_mg (obj, object);g_object_ref (object); // created a SV wrapper for the hashsv = newRV_noinc (obj); sv_bless (sv, stash);..}.. Why don't bless the HV directly, but instead creating another SV wrapping the HV, and bless that SV instead?Why use noinc to create the wrapper? Shouldn't the SV wrapper holding a reference for HV? Thanks! Date: Tue, 18 Oct 2011 09:35:43 +0200 From: kaffeeti...@gmx.de To: gtk-perl-list@gnome.org Subject: Re: generic refcounted object perl binding On 18.10.2011 04:49, YangXi wrote: Why the SV wrapper for a GObject keeps alive until both are freed? This is so that we always hand out an SV referencing the same HV for the same GObject. Glib::Object allows you to store your own data directly in the referenced hash, and this mechanism makes sure that you will find this data again when you look at the same GObject later, with no need to store the SV in between. ___ gtk-perl-list mailing list gtk-perl-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-perl-list ___ gtk-perl-list mailing list gtk-perl-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-perl-list
RE: generic refcounted object perl binding
Beside those C++-specific things, I still have many question about gobject wrapper. Why the SV wrapper for a GObject keeps alive until both are freed? Date: Fri, 14 Oct 2011 11:04:50 +0200 From: kaffeeti...@gmx.de To: gtk-perl-list@gnome.org Subject: Re: generic refcounted object perl binding On 14.10.2011 05:03, YangXi wrote: I'm asking a question about how to wrapping a refcounted class inside perl. I ask the question here because Gtk is such kind of system. Well, gtk+ is a C library, not C++. Wrapping C++ in XS has its own set of peculiarities. I, for one, don't have any experience wrapping C++ code. The perl-xs mailing list may be the better place for your question: http://lists.perl.org/list/perl-xs.html. ___ gtk-perl-list mailing list gtk-perl-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-perl-list ___ gtk-perl-list mailing list gtk-perl-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-perl-list
generic refcounted object perl binding
Hi, everyone! I'm asking a question about how to wrapping a refcounted class inside perl. I ask the question here because Gtk is such kind of system. I have some experience on embedding perl in C++, but have little knowledge on perl XS, and I found perldoc perlxs really puzzled. Firstly, I have an simple refcounted C++ base class like this: class Referenced {public:Referenced():refcnt(0) { } virtual ~Referenced() {} void refInc() { refcnt++; } void refDec() {if (--refcnt=0) delete this;} protected:int refcnt;}; In my wrapper, I want to have following functions:- able to construct my object within perl, like My::Class-new();- able to construct my object in C++, and pass it to perl sub as argument;- handle ref count correctly; So, is these things correct for my XS: Referenced::new(class)PREINIT:const char* class;Referenced* obj;SV* obj_wrap;SV* sv; CODE:// create objectobj = new Referenced; obj-refInc();// store pointer as unsigned int?obj_wrap = newSV(0);sv_setuv(obj_wrap, (uv)obj); // we always wrap 2 layers SVs for a class? Should I do these things manually?sv = newSVrv(obj_wrap, class);RETVAL = sv; OUTPUT:RETVAL // is this correct?// I don't really understand when would Perl do automatic scalar conversion, and when should I manually do that.Referenced::DESTROY(self) PREINIT:Referenced* self;CODE:self-refDec(); ___ gtk-perl-list mailing list gtk-perl-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-perl-list
[no subject]
http://pokercinho.com/wp-content/uploads/vfsng.htm ___ gtk-perl-list mailing list gtk-perl-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-perl-list
What is GtkAccelFlags?
in function gtk_accel_group_connect, what does the accel_flags parameter do? I can't find enough info in the documentation.Thanks! ___ gtk-perl-list mailing list gtk-perl-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-perl-list