So yesterday i started out with the will and wish to delve into libgoocanvasmm and maybe even get the Glom relationship overview dialog to use it.
But no! The libgoocanvasmm used a patched version of goocanvas, but hey, there was included patches so that sholdn't pose much of a problem, but alas!
The patches wouldn't apply on my latest goocanvas (version 0.4), and that really seemed to be the most current version according to the homepage - i spent an entire evening trying to get the damn patches to apply.
That is, when i finally found that goocanvas has a cvs repository on freedesktop.org, there was a link to SourceForge on the homepage, but there was no code there.
So, finally i had the correct goocanvas (we are now talking this evening) so now i just needed to build it - but damn! More snags, it needed version 2.10 or later of the Gtk+ toolkit and the latest in Debian was version 2.8.20 - i checked the cvs logs, and it seemed that the only thing it needed was the GtkUnit enum, so i hacked that into the goocanvas source, and finally it compiled.
By that time i wasn't really ready to fight libgoocanvasmm yet, so i thought i would just try to get the goocanvas code in Glom compiling for the cvs goocanvas.
But i had some trouble getting the latest Glom source using the launchpad vcs-import which i had used in the past - after some surfing i found the answer: Gnome has changed from cvs to svn, great news, subversion is far superior to cvs in my opinion.
So now i knew how to get the newest Glom code, and was ready to build that, but it needed a new libgda (which wasn't in Debian either), checkout, autogen.sh, compile, install, try compiling Glom, needs libgdamm for the new libgda, checkout, autogen.sh, compile, install, and YES! finally Glom compiles.
So after two "days" of work i am now finally ready to begin working, but now Glom won't connect to my PostgreSQL server, this is what i get:
rto@kubrick - ~/work/glom/trunk-gnome-svn $ glom glom.glom debug: ConnectionPool::set_user(): user is empty. Glom: trying to connect on port=5433 ConnectionPool::connect() Attempt to connect to database failed on port=5433, database=glom_example_project_manager_v1 ConnectionPool::connect() Attempting to connect without specifying the database. Glom: connecting. ConnectionPool::connect() connection also failed when not specifying database. (Could not connect even to the default database on port=5433, database=glom_example_project_manager_v1 Glom: trying to connect on port=5432 ConnectionPool::connect() Attempt to connect to database failed on port=5432, database=glom_example_project_manager_v1 ConnectionPool::connect() Attempting to connect without specifying the database. Glom: connecting. ConnectionPool::connect() connection also failed when not specifying database. (Could not connect even to the default database on port=5432, database=glom_example_project_manager_v1 ** (glom:16938): WARNING **: ConnectionPool::connect() throwing exception. (Could not connect even to the default database on any port. database=glom_example_project_manager_v1 ** (glom:16938): WARNING **: Frame_Glom::connection_request_password_and_attempt(): caught exception. debug: calling stop_self_hosting_of_document_database() Glom: trying to connect on port=5433 ConnectionPool::connect() Attempt to connect to database failed on port=5433, database=glom_example_project_manager_v1 ConnectionPool::connect() Attempting to connect without specifying the database. Glom: connecting. ConnectionPool::connect() connection also failed when not specifying database. (Could not connect even to the default database on port=5433, database=glom_example_project_manager_v1 Glom: trying to connect on port=5432 ConnectionPool::connect() Attempt to connect to database failed on port=5432, database=glom_example_project_manager_v1 ConnectionPool::connect() Attempting to connect without specifying the database. Glom: connecting. ConnectionPool::connect() connection also failed when not specifying database. (Could not connect even to the default database on port=5432, database=glom_example_project_manager_v1 ** (glom:16938): WARNING **: ConnectionPool::connect() throwing exception. (Could not connect even to the default database on any port. database=glom_example_project_manager_v1 Glom: exception: Glom database connection failed. rto@kubrick - ~/work/glom/trunk-gnome-svn $
I can connect to the database just fine using the psql client in the terminal:
rto@kubrick - ~/work/glom/trunk-gnome-svn $ psql glom_example_project_manager_v1 Welcome to psql 8.1.7, the PostgreSQL interactive terminal. Type: \copyright for distribution terms \h for help with SQL commands \? for help with psql commands \g or terminate with semicolon to execute query \q to quit glom_example_project_manager_v1=> \dt List of relations Schema | Name | Type | Owner --------+----------------------------+-------+------- public | contacts | table | rto public | glom_system_autoincrements | table | rto public | glom_system_preferences | table | rto public | project_teams | table | rto public | projects | table | rto public | team_members | table | rto public | teams | table | rto (7 rows) glom_example_project_manager_v1=> \q rto@kubrick - ~/work/glom/trunk-gnome-svn $
Maybe tomorrow i will fix this next hurdle on the way to getting the thing working. Or hopefully the self-hosting PostgreSQL code of Glom will have improved from the last time i tried it, and i could just use that.
Right now (well not right now but as soon as i post this), i'm pouring myself a well deserved glass of red wine, and i'm going to put some soothing music on and then go to bed.
Oh, and just one more thing before puring that glass, my evolution plugin is chucking along nicely, still a lot of false positives - i'm beginning to think that it might be a good idea to train on all incoming mail rather than just false-positives and false-negatives.
And now for that wine and music...
Comments (2)
[HTML_REMOVED] The libgoocanvasmm used a patched version of goocanvas
No, it doesn't. For some reason there's a copy of goocanvas in the repository, but as I mentioned on your blog yesterday, I just updated the libgoocanvasmm in that repository for the latest goocanvas API.
Here's how to get the latest goocanvas code: cvs -d:pserver:anonymous@cvs.cairographics.org:/cvs/cairo co goocanvas
(Yes, that should be clearly stated. Not my fault.)
About glom, maybe there's a problem with your self-compiled libgda. Maybe the postgres libgda backend was not built. You might try the examples.
[HTML_REMOVED] but it needed a new libgda (which wasn't in Debian either),
Please file a debug bug. There's hope they might update it.
I (and I'm sure the goocanvas developers) would like to help you. Your blog isn't the best place for me to do that.
Hi Murray
I have now subscribed to the Glom developer maillinglist, i agree that this would be an easier way to discuss things.
I also filed a wishlist bug with the libgda2 package in Debian.
I will start by making the current Relationship Dialog work with the goocanvas cvs, then we will have to see about the libgoocanvasmm code.
Post comment
If you wish, you can use markdown syntax in the comment field.