Skip to content

Compiling SyncEvolution From Source – Why?

I know why I compile from source, but why is the source .tar.gz downloaded as often as it is? My goal with providing binaries for as many platforms as possible was that normal users should never have to go through the chore of installing the additional development packages and compiling SyncEvolution. To that end I used different tricks to make the binaries as portable as possible:

  • compiled on stable Linux distribution (Debian Etch) with a comparatively old libc
  • statically linked libstdc++ because that library tends to differ between distributions

So if you compiled from source my question to you is: why? Should I change anything so that you don’t have to in the future?

The reason for asking is a discussion on the Funambol developer mailing list where I explained that I bundle the Funambol client library with release tar balls because I want to simplify the compilation of SyncEvolution. It was argued that the client library always should be downloaded, compiled, installed and perhaps packaged separately. Any thoughts on that? I wouldn’t invest the time to change the way how I build binaries, but I could easily drop the bundled client library from the source tar ball.

{ 7 } Comments

  1. digger | March 18, 2008 at 1:50 am | Permalink

    I have a Powerbook G4, what binaries? With a powerpc you get used to tar balls. :)

    Don’t where you build the packages but I’ve read somewhere that if you have a PPA on Launchpad your packages will be built by all the architectures in the build farm.

    Thanks for all your work.

  2. Patrick Ohly | March 18, 2008 at 12:55 pm | Permalink

    Actually, the binary for Mac OS X *is* a fat binary (is it called like that on Mac OS?) compiled for PPC and x86 (32 bit) – I just couldn’t try it out myself on PPC. That must have been in the release announcement somewhere, but I cannot find it now; it didn’t make it onto the “Installation” web page either.

    Digger, as you have a G4, can you try whether the precompiled binary works?

    I build the packages myself because for some platforms (iPhone, Maemo) the build procedure is a bit special and probably wouldn’t work in a build farm without extra work. The “normal” Linux platforms are built automatically because I want to run them through nightly testing.

  3. Mathias Picker | March 28, 2008 at 10:06 am | Permalink

    What binary? I use FreeBSD, so I need to compile myself – will try next week && hope it works.

  4. Patrick Ohly | March 29, 2008 at 3:20 pm | Permalink

    Mathias, your answer is what I was hoping for: indication which platforms are used which I don’t cover yet. Let me know whether it works and if it requires patches, please send them to me. I’ll probably not compile binaries for FreeBSD myself, but I definitely want the source to work. It worked okay on Mac OS X, so your chances should be good.

  5. Thomas Novin | May 19, 2008 at 12:34 pm | Permalink

    I’m using Ubuntu Hardy with Evolution 2.22.1 but searching the apt archive I can only find syncevolution matching Evolution 2.12. That’s why I have downloaded the source…

  6. Thomas Novin | May 19, 2008 at 9:30 pm | Permalink

    FYI: After reading some more on the subject I found out that there was no Evolution plugin (nothing for the Evo GUI). The 2.12 version worked nicely with Evo 2.22! A plugin/gui sure would be nice though…

  7. Patrick Ohly | June 5, 2008 at 8:56 am | Permalink

    Thanks for your comments so far. I obviously have to explain the available binary releases better. For example, as Thomas confirmed, the binaries compiled for 2.12 do work with 2.10 and any later version, including 2.22. This is now also documented on the Compatibility page.

    Regarding an Evolution plugin, this would indeed be useful and I would be happy to assist any programmer who wants to work on that. I’m afraid I myself won’t have time for it.

Post a Comment

Your email is never published nor shared. Required fields are marked *