Building SynCE with Windows Mobile 2005 support from Subversion


From SynCE-Wiki

Windows Mobile 2005 Support: Installing SynCE, Connecting Your Device, Using SynCE, Troubleshooting

These instructions build Windows Mobile 5 support for SynCE by using the latest bleeding edge software from SynCE's Subversion repository.

You must have a Subversion client installed.

Contents

Distribution-Specific Build Scripts

Some linux distribution's package management tools even allow subversion sources to be managed and uninstalled, therefore if you have one of those, it's probably best to use the package tool to install the wm5 branch of SynCE. If your distribution isn't listed, proceed to the manual instructions below.

Gentoo SVN Ebuilds

SynCE ebuilds are available to pull SynCE from the wm5 subversion repository. Instructions for using them are located here.

Checkout

svn checkout https://synce.svn.sourceforge.net/svnroot/synce/trunk/libsynce
svn checkout https://synce.svn.sourceforge.net/svnroot/synce/trunk/librapi2
svn checkout https://synce.svn.sourceforge.net/svnroot/synce/trunk/odccm
svn checkout https://synce.svn.sourceforge.net/svnroot/synce/trunk/synce-gnome


(In Ubuntu/Debian this commands needs "sudo" prefix)

If you have to update a working copy of this directories checked out before 2006-11-30 see [1]

Compilation and installation

In Ubuntu be sure to use "sudo" prefix for all command below

Before you start

Make sure you've got a recent version of autoconf and automake installed (autoconf >= 2.59, automake >= 1.9, libtool, libslang-dev, libdbus-dev, g++). In Ubuntu/Debian this would include executing:

sudo apt-get install libglib2.0-dev libusb-dev build-essential autoconf automake1.9 libtool libgnet-dev libhal-dev libhal-storage-dev libdbus-glib-1-dev python-sip4-dev python-pyrex python-dev

Note: libdbus-glib-1-dev can be omitted if Desktop Integration is not desired.

libsynce

cd libsynce/
./bootstrap
./configure --enable-desktop-integration
make
sudo make install
cd ..

Note: Please make sure you do --enable-desktop-integration (even if you don't have a desktop!), or you will cause yourself problems in later steps (the device will not be visible for the rapitools). Note: As of the 4/1 SVN tree, you may have to edit lib/synce_config.h after running configure to make sure ENABLE_DESKTOP_INTEGRATION is #define'd to 1, not just #define'd

PROBLEMS IN RHEL5 Compiler does not understand some

#if DESRKTO_INTEGRATIO

in file ./lib/info.c Edit an change

#ifdef DESKTOP_INTEGRATION

librapi2

cd librapi2/
./bootstrap
./configure
make
sudo make install
cd ..

Note for Fedora Core, Gentoo, Slackware (and maybe other distro users): You may need to set PKG_CONFIG_PATH to /usr/local/lib/pkgconfig/: Before ./configure, run:

export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/

Note for Gentoo, you might need to run make like this. (This is not the proper way, just a workaraound. More to come soon) A fix for this has been committed to SVN. If you still need this workaround, please post a message on the mailing list.

make LIBS=/usr/local/lib/libsynce.so


Debian/Ubuntu users type:

echo "/usr/local/lib" | sudo tee -a /etc/ld.so.conf
sudo ldconfig

RHEL5 issues: You need to install pyrex:

http://dag.wieers.com/rpm/packages/pyrex/pyrex-0.9.4.1-1.el5.rf.noarch.rpm

odccm

cd odccm/
./bootstrap
./configure
make
sudo make install
sudo cp data/dbus/odccm.conf /etc/dbus-1/system.d/
cd ..

RHEL5 issues: You need to install gnet2-devel (from dag repostory)

Success

You have just successfully installed SynCE. Next step:

Connecting Your Device