I think I've gotten geary to build with the new webkit. I changed two things in src/CMakeLists.txt:
        set(LIB_PATHS ${DEPS_LIBRARY_DIRS} /home/rschroll/webkit/lib)
and a few lines later I added to VALAC_OPTIONS
        --girdir=/home/rschroll/webkit/share/gir-1.0
Unfortunately, I can't complete the compilation; now I'm getting errors about libsecret:

[ 74%] Building C object src/CMakeFiles/geary.dir/client/secret-mediator.c.o
/home/rschroll/geary/src/client/secret-mediator.c:17:30: fatal error: libsecret/secret.h: No such file or directory

I'm not sure why it can't find the header file, since it is installed.

$ locate secret.h
/usr/include/libsecret-1/libsecret/secret.h

Can someone with more CMake knowledge point me in the right direction?

Just to see if the webkit was squared away, I tried compiling 3198df0d, the commit where webkit 1.10 is required, but right before libsecret was added. I can get geary to compile, but when I run it, I get a seg fault as soon as it tries to put something in the webview. Here's the relevant part of the backtrace:

#0  0x00007ffff42d5350 in g_type_check_instance_cast ()
   from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#1  0x00007ffff5e8b13d in WebKit::core(_WebKitDOMDOMTokenList*) ()
   from /home/rschroll/webkit/lib/libwebkitgtk-3.0.so.0
#2  0x00007ffff5e8b784 in webkit_dom_dom_token_list_add ()
   from /home/rschroll/webkit/lib/libwebkitgtk-3.0.so.0
#3  0x00000000004b3ac9 in conversation_viewer_add_message (self=0xaaa140,
    email=0x7fff844c4e60)
    at /home/rschroll/geary/src/client/views/conversation-viewer.vala:223
#4 0x0000000000457048 in geary_controller_do_show_message_co (_data_=0xf94030)
    at /home/rschroll/geary/src/client/geary-controller.vala:654

This worries me, but I don't know what to do about it.

Any help is appreciated,
Robert


On 04/19/2013 12:42 PM, Robert Schroll wrote:
Progress!  I've gotten WebKit to build.  Now I need to figure out how to
tell Geary to use the new WebKit in place of the system one.  (And I
think I have to get the GIR files from somewhere else.)

For the record, here's what I did:
- Get a tarball from the webkitgtk releases
(http://webkitgtk.org/releases/), not from the main webkit site.  (That
was what was causing my confusion about build systems last night.)  I
chose 1.10.2, the most recent of the 1.10 series.
- Get the build dependencies:
sudo apt-get build-dep webkit

- Install some GL libraries (for reasons that will come apparent later)
sudo apt-get install libgl1-mesa-dev mesa-common-dev

- Upgrade libsoup.  12.04 has 2.38.1, WebKit wants 2.40 or greater.  I
did this by adding ppa:laney/webkit-backports and choosing to upgrade
libsoup2.4-1.  This ended up requiring upgrades of:
     gir1.2-soup-2.4
     glib-networking
     glib-networking-common
     glib-networking-services
     glib-networking:i386
     libglib2.0-0
     libglib2.0-0:i386
     libglib2.0-bin
     libglib2.0-dev
     libpcre3
     libpcre3-dev
     libpcre3:i386
     libpcrepp0
     libsoup2.4-1
     libsoup2.4-1:i386
     libsoup2.4-dev
I am slightly worried about upgrading libglib, but no ill effects so far.
- Configure with
./configure --prefix="$HOME/webkit" --disable-video --disable-xslt
--disable-webkit2

At first, I tried to disable almost everything that seemed unnecessary,
but this kept leading to compilation errors.  Then I tried disabling
just the four modules that Eric recommended (the three above plus
webGL).  This got all the way through to the linker, where it failed
with a message about being unable to find some GL symbols.  So I added
webGL back in.
- Make with make
make

This took an hour or two.
- Install to ~/webkit
make install

The only binary installed was the javascript console, which does work.
  Now to see about compiling Geary against this.  Any and all hints
appreciated.

Thanks for the help,
Robert



_______________________________________________
Geary mailing list
[email protected]
http://lists.yorba.org/cgi-bin/mailman/listinfo/geary

Reply via email to