[Evolution-hackers] Failing to build latest GIT code
Hi all. For the last week or so I've been trying to compile Evolution from the GIT master branch, and it's been failing to compile with this error every time; I waited a week to see if anyone else hit (and fixed) this but apparently it's something broken about my system; the build of all the evo code (e-d-s, etc.) goes OK up until I'm compiling Evo itself, then I get this error: CCLD libevolution-mail-importers.la .libs/libevolution_mail_importers_la-evolution-mbox-importer.o: In function `mbox_getwidget': /home/psmith/src/evo/evo-master/obj/evolution/mail/importers/../../../../evolution/mail/importers/evolution-mbox-importer.c:87: undefined reference to `e_shell_get_default' more undef references to e_shell_view_get_* functions ... collect2: ld returned 1 exit status make[5]: *** [libevolution-mail-importers.la] Error 1 make[5]: Leaving directory `/home/psmith/src/evo/evo-master/obj/evolution/mail/importers' What am I missing here? Cheers! ___ Evolution-hackers mailing list Evolution-hackers@gnome.org http://mail.gnome.org/mailman/listinfo/evolution-hackers
Re: [Evolution-hackers] Failing to build latest GIT code
On Tue, 2009-11-24 at 12:15 -0500, Paul Smith wrote: > What am I missing here? found it. Please apply this patch to fix the build: diff --git a/mail/importers/Makefile.am b/mail/importers/Makefile.am index 8851981..e25857c 100644 --- a/mail/importers/Makefile.am +++ b/mail/importers/Makefile.am @@ -29,6 +29,7 @@ libevolution_mail_importers_la_LDFLAGS = $(NO_UNDEFINED) libevolution_mail_importers_la_LIBADD =\ $(WIN32_BOOTSTRAP_LIBS) \ $(top_builddir)/e-util/libeutil.la \ + $(top_builddir)/shell/libeshell.la \ $(top_builddir)/filter/libfilter.la \ $(top_builddir)/mail/libevolution-mail.la \ $(GNOME_PLATFORM_LIBS) \ ___ Evolution-hackers mailing list Evolution-hackers@gnome.org http://mail.gnome.org/mailman/listinfo/evolution-hackers
Re: [Evolution-hackers] Failing to build latest GIT code
On Tue, 2009-11-24 at 12:25 -0500, Paul Smith wrote: > found it. Please apply this patch to fix the build: Done, thanks for that. http://git.gnome.org/cgit/evolution/commit/?id=6d1bb4ffec7dd204a61810d4182510f29ff4dfad Matthew Barnes ___ Evolution-hackers mailing list Evolution-hackers@gnome.org http://mail.gnome.org/mailman/listinfo/evolution-hackers
[Evolution-hackers] Evo master dumps core: missing GConf key
I've been using Evo from the 2.28 branch (built using my makefile). Now I wanted to switch to using Evo from the master branch. It built and installed OK, along with e-d-s, evo-mapi, openchange, etc. but, when I try to run it it dumps core immediately: (evolution:30186): e-data-server-DEBUG: Loading categories from "/home/psmith/.evolution/categories.xml" (evolution:30186): e-data-server-DEBUG: Loaded 29 categories evolution-shell-ERROR **: No schema for GConf key '/apps/evolution/shell/file_chooser_folder' aborting... Aborted (core dumped) I can send the backtrace but I doubt it's needed: it looks like some part of the Evo code is expecting this gconf key to already exist, but for upgrade, if nothing else, Evo will need to create this key if it doesn't exist yet. Let me know if you'd like me to try any kind of fix or workaround: for now I've dropped back to my evo 2.28 build. ___ Evolution-hackers mailing list Evolution-hackers@gnome.org http://mail.gnome.org/mailman/listinfo/evolution-hackers
Re: [Evolution-hackers] Evo master dumps core: missing GConf key
On Tue, 2009-11-24 at 13:19 -0500, Paul Smith wrote: > but, when I try to run it it dumps core immediately: > > (evolution:30186): e-data-server-DEBUG: Loading categories from > "/home/psmith/.evolution/categories.xml" > (evolution:30186): e-data-server-DEBUG: Loaded 29 categories > > evolution-shell-ERROR **: No schema for GConf key > '/apps/evolution/shell/file_chooser_folder' > aborting... > Aborted (core dumped) Run this as yourself (not super user): gconftool-2 --install-schema-file .../shell/apps_evolution_shell.schemas Matthew Barnes ___ Evolution-hackers mailing list Evolution-hackers@gnome.org http://mail.gnome.org/mailman/listinfo/evolution-hackers
Re: [Evolution-hackers] Evo master dumps core: missing GConf key
On Tue, 2009-11-24 at 16:08 -0500, Paul Smith wrote: > I've never needed to do this before when going to a newer version of > Evo; is this supposed to happen automatically some how when a newer > version starts up? Evolution is now extracting information from those schemas as part of a new centralized settings management subsystem, so the schemas have to be there whereas before they didn't (and in fact we were missing quite a few in older versions). The Makefiles are set up automatically install schema files, but only if you are -NOT- using a custom install prefix, which I assume you are (I am too). I'm not sure I fully understand the rationale for that, but I looked at some other GNOME modules that I consider to be well maintained and they're using similar logic. I assume the intent is to help avoid screwing up your GConf settings. > Should I run --install-schema-file for all the *.schema files in that > directory, just in case, or might that break things? I think just as needed is fine. I've been careful to only add new schemas and not change or remove existing ones. I suspect there's a better way to manage this, but it hasn't occurred to me yet. Matthew Barnes ___ Evolution-hackers mailing list Evolution-hackers@gnome.org http://mail.gnome.org/mailman/listinfo/evolution-hackers
Re: [Evolution-hackers] Evo master dumps core: missing GConf key
On Tue, 2009-11-24 at 16:53 -0500, Matthew Barnes wrote: > The Makefiles are set up automatically install schema files, but only if > you are -NOT- using a custom install prefix, which I assume you are (I > am too). I'm not sure I fully understand the rationale for that, but I > looked at some other GNOME modules that I consider to be well maintained > and they're using similar logic. I assume the intent is to help avoid > screwing up your GConf settings. I am, yes. But I don't get your last sentence: is there a way to use these without screwing up the GConf settings (using an alternate gconf database for example)? Because if the choice is screwing up GConf settings or dumping core, that doesn't seem like much of a choice to me :-). On the other hand, I actually do agree that running "make install" should NOT mess with your GConf settings; that definitely feels wrong. I was actually thinking that running "evolution" (the first time) would handle the transitions for you. > > Should I run --install-schema-file for all the *.schema files in that > > directory, just in case, or might that break things? > > I think just as needed is fine. I've been careful to only add new > schemas and not change or remove existing ones. OK, as long as I'm not getting any kind of UI breakage or problems due to missing schema files. Next question: what's the right thing to do with bugs or issues I find? Do they go in bugzilla, even though the code is not released yet? Or do you prefer to see issues here on this list? ___ Evolution-hackers mailing list Evolution-hackers@gnome.org http://mail.gnome.org/mailman/listinfo/evolution-hackers
Re: [Evolution-hackers] Evo master dumps core: missing GConf key
On Tue, 2009-11-24 at 19:15 -0500, Paul Smith wrote: > I am, yes. But I don't get your last sentence: is there a way to use > these without screwing up the GConf settings (using an alternate gconf > database for example)? In fact there is: see the "Configuration Sources" section of [1]. But I think the Makefile.am logic is oriented to the more common case, where you have a system-wide, let's call it "official" Evolution install and one or more private builds -- possibly of differing versions -- for testing or hacking or whatever. All of these builds, regardless of installation prefix, by default install their GConf schema files to ~/.gconf. So I assume the Makefile.am logic is trying to determine whether it's an "official" build or not, and only allow "official" builds to overwrite the previous schema files in ~/.gconf. But in this age of pre-compiled binary distribution the policy seems outdated, unless I'm totally off the mark here. Most distros block "make install" from installing schema files and do it themselves in a "post-install" phase. If someone on the list is reading this and knows more about it, please do jump in here. The GConf schema install policy is clearly an idiom among GNOME modules, but I'm fuzzy on the origins and rationale for it. [1] http://projects.gnome.org/gconf/ > On the other hand, I actually do agree that running "make install" > should NOT mess with your GConf settings; that definitely feels wrong. > I was actually thinking that running "evolution" (the first time) would > handle the transitions for you. When you say "GConf settings", keep in mind the distinction between the -value- of a GConf key and the -schema- for a GConf key. The schema provides the key's type, default value, and a translated description of what it's used for. The -user- sets the value (what I assume you mean by "setting"). Installing a schema file never alters the values. The problems arise when the value and schema are inconsistent (e.g. value is a string, schema expects an integer). Evolution can't handle that. > Next question: what's the right thing to do with bugs or issues I find? > Do they go in bugzilla, even though the code is not released yet? Or do > you prefer to see issues here on this list? You mean bugs or issues in git master? Use your best judgment. Safe answer is always Bugzilla. But if it's something that worked yesterday and now suddenly doesn't (build breakage or some other careless boo-boo), posting to the list will usually get you a quick response. Matthew Barnes ___ Evolution-hackers mailing list Evolution-hackers@gnome.org http://mail.gnome.org/mailman/listinfo/evolution-hackers
Re: [Evolution-hackers] Evo master dumps core: missing GConf key
On Tue, 2009-11-24 at 15:01 -0500, Matthew Barnes wrote: > Run this as yourself (not super user): > > gconftool-2 > --install-schema-file .../shell/apps_evolution_shell.schemas That worked, although it still dumped core until I also added the evolution-mail.schemas file. Now it starts OK. I do see a few weird things (minor glitches) in the presentation so I wonder if there are more of these I need to do? I've never needed to do this before when going to a newer version of Evo; is this supposed to happen automatically some how when a newer version starts up? Should I run --install-schema-file for all the *.schema files in that directory, just in case, or might that break things? Cheers! ___ Evolution-hackers mailing list Evolution-hackers@gnome.org http://mail.gnome.org/mailman/listinfo/evolution-hackers