From michael at dynamine.net Wed Jan 2 17:19:16 2008 From: michael at dynamine.net (Michael S. Fischer) Date: Wed, 2 Jan 2008 14:19:16 -0800 Subject: [Ruburple-development] Compilation against libpurple-devel 2.3.1 (and 2.2) fails Message-ID: <86db848d0801021419o29ada13fo8f9c2babacf0a1fb@mail.gmail.com> Hi there, Whenever I do a build against libpurple-devel > 2.0 (specifically, 2.3.1), I get the following compilation error: Building native extensions. This could take a while... ERROR: Error installing ruburple: ERROR: Failed to build gem native extension. /home/y/bin/ruby1.8 extconf.rb install ruburple -i /home/mfischer/ruburple/yinst checking for pkg-config... yes checking for main() in -lglib-2.0... yes checking for #include ... yes checking for purple_core_init() in -lpurple... yes creating Makefile make gcc -I. -I. -I/home/y/lib/ruby/1.8/i686-linux -I. -fPIC -g -O2 -fPIC -g -gdwarf-2 -g3 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include - lglib-2.0 -c ruburple_ext.c In file included from /usr/include/libpurple/buddyicon.h:34, from /usr/include/libpurple/blist.h:79, from /usr/include/libpurple/status.h:112, from /usr/include/libpurple/connection.h:62, from /usr/include/libpurple/account.h:43, from ruburple_ext.c:18: /usr/include/libpurple/prpl.h:412: error: syntax error before "G_GNUC_NULL_TERMINATED" /usr/include/libpurple/prpl.h:452: error: syntax error before "G_GNUC_NULL_TERMINATED" Could you please fix this? Compiling against libpurple-devel 2.0.1 works fine. Best regards, --Michael -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/ruburple-development/attachments/20080102/f8a05a00/attachment.html From joe.edelman at gmail.com Wed Jan 2 18:03:33 2008 From: joe.edelman at gmail.com (Joe Edelman) Date: Wed, 2 Jan 2008 18:03:33 -0500 Subject: [Ruburple-development] Compilation against libpurple-devel 2.3.1 (and 2.2) fails In-Reply-To: <86db848d0801021419o29ada13fo8f9c2babacf0a1fb@mail.gmail.com> References: <86db848d0801021419o29ada13fo8f9c2babacf0a1fb@mail.gmail.com> Message-ID: <20080102230333.GD13853@fkr.local> Hi Michael, That looks like maybe it's not a problem with Ruburple, but rather with libpurple on your system. I've compiled against libpurple 2.2.1 on freebsd and os x. --Joe -- J.E. -- http://nxhx.org -- 413.250.8007 > Hi there, > Whenever I do a build against libpurple-devel > 2.0 (specifically, 2.3.1), > I get the following compilation error: > Building native extensions. This could take a while... > ERROR: Error installing ruburple: > ERROR: Failed to build gem native extension. > /home/y/bin/ruby1.8 extconf.rb install ruburple -i > /home/mfischer/ruburple/yinst > checking for pkg-config... yes > checking for main() in -lglib-2.0... yes > checking for #include > ... yes > checking for purple_core_init() in -lpurple... yes > creating Makefile > make > gcc -I. -I. -I/home/y/lib/ruby/1.8/i686-linux -I. -fPIC -g -O2 -fPIC -g > -gdwarf-2 -g3 -I/usr/include/glib- 2.0 -I/usr/lib/glib-2.0/include > -lglib-2.0 -c ruburple_ext.c > In file included from /usr/include/libpurple/buddyicon.h:34, > from /usr/include/libpurple/blist.h:79, > from /usr/include/libpurple/status.h:112, > from /usr/include/libpurple/connection.h:62, > from /usr/include/libpurple/account.h:43, > from ruburple_ext.c:18: > /usr/include/libpurple/prpl.h:412: error: syntax error before > "G_GNUC_NULL_TERMINATED" > /usr/include/libpurple/prpl.h:452: error: syntax error before > "G_GNUC_NULL_TERMINATED" > Could you please fix this? Compiling against libpurple-devel 2.0.1 works > fine. > Best regards, > --Michael >_______________________________________________ >Ruburple-development mailing list >Ruburple-development at rubyforge.org >http://rubyforge.org/mailman/listinfo/ruburple-development From joe.edelman at gmail.com Mon Jan 7 09:51:58 2008 From: joe.edelman at gmail.com (Joe Edelman) Date: Mon, 7 Jan 2008 09:51:58 -0500 Subject: [Ruburple-development] Ruburple In-Reply-To: <4781CEA9.7010209@uci.edu> References: <4781CEA9.7010209@uci.edu> Message-ID: <20080107145158.GB23291@fkr.local> Hi Nathan, It looks like maybe the mkmf makefile is trying to build a universal version of the ruburple extension, whereas you have an i386-only version of the libpurple dylib. You could try removing -arch ppc from the generated makefile before running it. Or figure out how to keep mkmf from putting it there in the first place and submit a patch. I have a powerbook, so I didn't have that problem. But for the record, the way that I built my libpurple was, I checked out the sources to pidgin (I used version 2.2.2), cd'ed into the libpurple directory, and ran make. I think maybe that worked right away. I can't remember if I had to tweak anything. --Joe -- J.E. -- http://nxhx.org -- 413.250.8007 > Hey Joe, > > I don't mean to bother you but I could really use your help. I just got a > new MacBook with Leopard and I am trying to install ruburple so I can > develop my application. I am having some serious trouble getting it working. > > I installed pidgin using MacPorts using > > $ sudo port install pidgin > > The install appeared to work properly. I then checked out the ruburple > source and ran > > $ ruby ext/extconf.rb > > That failed to work with this error: > > <------------------ > > checking for pkg-config... yes > checking for main() in -lglib-2.0... yes > checking for #include > ... yes > checking for purple_core_init() in -lpurple... no > -------------------------------------------------- > extconf failure: libpurple needed 2 > -------------------------------------------------- > *** ext/extconf.rb failed *** > Could not create Makefile due to some reason, probably lack of > necessary libraries and/or headers. Check the mkmf.log file for more > details. You may need configuration options. > > ----------------- > > > I also tried to compile libpurple from source: > > <----------- > > GMSGFMT=/opt/local/bin/msgfmt MSGFMT=/opt/local/bin/msgfmt ./configure > --disable-gtkui --disable-consoleui --disable-screensaver > --disable-startup-notification --disable-sm --disable-gtkspell > --disable-gevolution --disable-cap --disable-gstreamer --disable-tcl > --disable-tk --disable-doxygen --disable-perl > --with-gnutls-includes=/usr/include/ --with-gnutls-libs=/usr/lib/ > > make clean > make > make install > > ------------> > > When I tried compiling ruburple, I still ran into the exact same error. > > Please help me figure out what I have to do to get this working on a mac. > > I have attached my mkmf.log file. I know I have to be missing something > simple. I really appreciate the help! > > - Nathan From joe.edelman at gmail.com Sun Jan 13 16:32:14 2008 From: joe.edelman at gmail.com (Joe Edelman) Date: Sun, 13 Jan 2008 16:32:14 -0500 Subject: [Ruburple-development] extconf.rb changed NEEDS TESTING Message-ID: <20080113213214.GB1437@fkr.local> Hi Everyone, Would someone verify that the latest SVN head still builds on Linux? I feel almost sure that it does, but I had to make a little change to extconf.rb to improve OS X support. --Joe -- J.E. -- http://nxhx.org -- 413.250.8007 From zond at troja.ath.cx Sun Jan 13 16:41:33 2008 From: zond at troja.ath.cx (Martin Kihlgren) Date: Sun, 13 Jan 2008 22:41:33 +0100 Subject: [Ruburple-development] extconf.rb changed NEEDS TESTING In-Reply-To: <20080113213214.GB1437@fkr.local> References: <20080113213214.GB1437@fkr.local> Message-ID: <20080113214133.GB1818@troja.ath.cx> Seems to work for me. I took the time to fix the annoying unused linker flags too, by separating --cflags and --libs in $CFLAGS and $LIBS :) //Martin On Sun, Jan 13, 2008 at 04:32:14PM -0500, Joe Edelman wrote: > Hi Everyone, > > Would someone verify that the latest SVN head still builds on Linux? > I feel almost sure that it does, but I had to make a little change to > extconf.rb to improve OS X support. > > --Joe > > -- > J.E. -- http://nxhx.org -- 413.250.8007 > > _______________________________________________ > Ruburple-development mailing list > Ruburple-development at rubyforge.org > http://rubyforge.org/mailman/listinfo/ruburple-development -- ################################################################### :barathrum: an abyss; an insatiable person -- International House of Logorrhea -- ################################################################### From plaggypig at gmail.com Sun Jan 13 17:46:42 2008 From: plaggypig at gmail.com (andy) Date: Sun, 13 Jan 2008 22:46:42 +0000 Subject: [Ruburple-development] extconf.rb changed NEEDS TESTING In-Reply-To: <20080113214133.GB1818@troja.ath.cx> References: <20080113213214.GB1437@fkr.local> <20080113214133.GB1818@troja.ath.cx> Message-ID: <45a9deeb0801131446v4cdc8ae0j780bc9377ff49eb5@mail.gmail.com> Just to confirm that it builds fine for me on Linux too. Joe - it's great that you helped Nathan out and got it building on OS X :) - Andy. On Jan 13, 2008 9:41 PM, Martin Kihlgren wrote: > > Seems to work for me. I took the time to fix the annoying unused > linker flags too, by separating --cflags and --libs in $CFLAGS and > $LIBS :) > > //Martin > > On Sun, Jan 13, 2008 at 04:32:14PM -0500, Joe Edelman wrote: > > Hi Everyone, > > > > Would someone verify that the latest SVN head still builds on Linux? > > I feel almost sure that it does, but I had to make a little change to > > extconf.rb to improve OS X support. > > > > --Joe > > > > -- > > J.E. -- http://nxhx.org -- 413.250.8007 > > > > _______________________________________________ > > Ruburple-development mailing list > > Ruburple-development at rubyforge.org > > http://rubyforge.org/mailman/listinfo/ruburple-development > > -- > ################################################################### > :barathrum: > an abyss; an insatiable person > > -- International House of Logorrhea -- > ################################################################### > _______________________________________________ > Ruburple-development mailing list > Ruburple-development at rubyforge.org > http://rubyforge.org/mailman/listinfo/ruburple-development > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/ruburple-development/attachments/20080113/aff1a2bf/attachment.html From joe.edelman at gmail.com Mon Jan 21 11:07:45 2008 From: joe.edelman at gmail.com (Joe Edelman) Date: Mon, 21 Jan 2008 11:07:45 -0500 Subject: [Ruburple-development] mac os x notes Message-ID: <20080121160745.GE9601@fkr.local> Hi Folks, I worked with Nathan Esquenazi about a week ago to get ruburple compiling on his system. We had difficulty: (1) because 10.5 "Leopard" tries to build universal binaries of ruby extensions even when their dependent libraries are not universal binaries; (2) because MacPorts does not adjust the system wide library path to find libraries installed through it; and (3) because gthread needs to explicitly linked on some mac systems because of two level namespace issues. The resulting install notes have been added to SVN as "INSTALL.macos". http://ruburple.rubyforge.org/svn/trunk/ruburple/INSTALL.macos --Joe -- J.E. -- http://nxhx.org -- 413.250.8007 From zond at troja.ath.cx Mon Jan 21 11:15:07 2008 From: zond at troja.ath.cx (Martin Kihlgren) Date: Mon, 21 Jan 2008 17:15:07 +0100 Subject: [Ruburple-development] mac os x notes In-Reply-To: <20080121160745.GE9601@fkr.local> References: <20080121160745.GE9601@fkr.local> Message-ID: <20080121161507.GA2708@troja.ath.cx> Great that you added more instructions! However, I moved around the code in extconf.rb a bit so that find_executable("pkg-config") is run before `pkg-config....` to create a nicer error message. //Martin On Mon, Jan 21, 2008 at 11:07:45AM -0500, Joe Edelman wrote: > Hi Folks, > > I worked with Nathan Esquenazi about a week ago to get ruburple > compiling on his system. We had difficulty: (1) because 10.5 "Leopard" > tries to build universal binaries of ruby extensions even when their > dependent libraries are not universal binaries; (2) because MacPorts > does not adjust the system wide library path to find libraries installed > through it; and (3) because gthread needs to explicitly linked on some > mac systems because of two level namespace issues. > > The resulting install notes have been added to SVN as "INSTALL.macos". > > http://ruburple.rubyforge.org/svn/trunk/ruburple/INSTALL.macos > > --Joe > > -- > J.E. -- http://nxhx.org -- 413.250.8007 > > _______________________________________________ > Ruburple-development mailing list > Ruburple-development at rubyforge.org > http://rubyforge.org/mailman/listinfo/ruburple-development -- ################################################################### :ligyrophobia: fear of loud noises -- International House of Logorrhea -- ################################################################### From zond at troja.ath.cx Mon Jan 28 03:27:15 2008 From: zond at troja.ath.cx (Martin Kihlgren) Date: Mon, 28 Jan 2008 09:27:15 +0100 Subject: [Ruburple-development] [Ruburple-submits] [54] trunk/ruburple/ext/ruburple_ext.c: This is kind of an unsavory patch, but it makes ruburple work with Gmail Chat. In-Reply-To: <20080128013943.BF1BA185863A@rubyforge.org> References: <20080128013943.BF1BA185863A@rubyforge.org> Message-ID: <20080128082715.GA10293@troja.ath.cx> Good work! Here is an improvement, though, if you have the time: Make it so that it is at least configurable if this happens, or - even better - make it a callback-method so that you can define a ruby method that gets called on (preferably all, but that is probably too much work, so lets begin with this one only) purple_request_-calls and then that method can handle the pressing of accept or ok. //Martin On Sun, Jan 27, 2008 at 08:39:43PM -0500, nobody at rubyforge.org wrote: > Revision: 54 > Author: joe_edelman > Date: 2008-01-27 20:39:43 -0500 (Sun, 27 Jan 2008) > > Log Message: > ----------- > This is kind of an unsavory patch, but it makes ruburple work with Gmail Chat. > Google's SSL certificates are for the hostname "gmail.com", but XMPP connections > are for "talk.google.com" or the like. libpurple thinks that's worth putting up > a dialog box and asking the user for confirmation. ruburple doesn't support the > purple_request_* family of user interaction functions. > > What this patch does is blindly press the first button of any dialog box that > libpurple wants to show. Throughout the libpurple code, the first button is the > one that means "continue" (e.g., "accept", "ok) so that's not an entirely > unreasonable thing to do. > > Modified Paths: > -------------- > trunk/ruburple/ext/ruburple_ext.c > > Modified: trunk/ruburple/ext/ruburple_ext.c > =================================================================== > --- trunk/ruburple/ext/ruburple_ext.c 2008-01-21 16:15:28 UTC (rev 53) > +++ trunk/ruburple/ext/ruburple_ext.c 2008-01-28 01:39:43 UTC (rev 54) > @@ -27,6 +27,7 @@ > #include > #include > #include > +#include > #include > #include > #include > @@ -351,7 +352,25 @@ > }; > /*** End of the eventloop functions. ***/ > > + > +/* this function blindly presses the first button of whatever dialogue box > + libpurple wants us to show! That's crazy! */ > static gpointer > +ruburple_request_blindly_accept(const char *title, const char *primary, const char *secondary, > + int default_action, > + PurpleAccount *account, const char *who, PurpleConversation *conv, > + void *user_data, size_t action_count, va_list actions) > +{ > + GCallback ok_cb; > + char *button_text; > + /* Get the first callback, skipping over the title */ > + button_text = va_arg(actions, char *); > + printf("Automatically pressing: %s\nin dialogue%s\n%s\n", button_text, primary, secondary); > + ok_cb = va_arg(actions, GCallback); > + ((PurpleRequestActionCb)ok_cb)(user_data, default_action); > +} > + > +static gpointer > ruburple_notify_message(PurpleNotifyMsgType type, > const char *title, > const char *primary, > @@ -391,6 +410,20 @@ > NULL, > }; > > +static PurpleRequestUiOps request_ops = > + { > + NULL, > + NULL, > + ruburple_request_blindly_accept, > + NULL, > + NULL, > + NULL, > + NULL, > + NULL, > + NULL, > + }; > + > + > static gpointer > run_the_loop(gpointer data) > { > @@ -411,6 +444,8 @@ > > purple_notify_set_ui_ops(¬ify_ops); > > + purple_request_set_ui_ops(&request_ops); > + > /* Now that all the essential stuff has been set, let's try to init the core. It's > * necessary to provide a non-NULL name for the current ui to the core. This name > * is used by stuff that depends on this ui, for example the ui-specific plugins. */ > > > _______________________________________________ > Ruburple-submits mailing list > Ruburple-submits at rubyforge.org > http://rubyforge.org/mailman/listinfo/ruburple-submits -- ################################################################### Removing the straw that broke the camel's back does not necessarily allow the camel to walk again. ###################################################################