Changes

4,354 bytes added ,  10:39, 24 April 2014
Added page about Libcarddav, TDE and Slackware 14.0
Welcome to Simone Giustetti's wiki pages.


Languages: '''English''' - [http://www.giustetti.net/wiki/index.php?title=TDE_libcarddav Italiano]

----

== LIBCARDDAV ==
[[En/trinity_desktop_environment#Base_Packages]]

'''Libcarddav''' is a software library supporting the '''CardDAV''' protocol developed specifically for KDE and, at present, for the '''Trinity Desktop Environment'''. '''CardDAV''' is a '''client / server''' protocol whose definition can be found in the [http://www.rfc-editor.org/rfc/rfc6352.txt rfc6352] document, which allows users to share address books thorough a network. '''CardDAV''' is based on '''WebDAV''', which is itself based on the '''HTTP''' protocol and uses the '''vCard''' format to store data. The [http://en.wikipedia.org/wiki/VCard vCard] format for contacts is supported by many mobile devices and is therefore suitable to export, import and synchronize address books with a large number of cell phones and tablets. The libcarddav library fully supports data manipulation functionality for the latest official CardDAV protocol standard.

=== Libcarddav and Slackware ===

'''Slackware does not ship a libcarddav library package''' therefore there is no build script to use as a reference. The library source code is not released as a compressed archive and can be downloaded form the Trinity project [http://git.trinitydesktop.org/cgit/libcarddav/ GIT repository] only. Two ways exist to download it:

* Connect to the repository through a web browser and download a compressed archive of the last available version of the ''master'' branch. [http://git.trinitydesktop.org/cgit/libcarddav/snapshot/libcarddav-master.tar.gz libcarddav-master.tar.gz]
* Install GIT on your machine and use the following commands:
:# Move in the directory You wish to download the files to
:# Run command '''git''' ''clone'' http://anonymous@scm.trinitydesktop.org/scm/git/libcarddav
:# Rename the root source code directory: '''mv''' libcarddav libcarddav-master (This is only needed to copy the naming convention of the file downloaded with the previously described method)
:# Build an archive of the source code files: '''tar''' ''-zcf'' libcarddav-master.tar.gz libcarddav-master
Whatever the method, we will use the resulting libcarddav-master.tar.gz file to build a working libcarddav package as described further below.

The source code '''uses autotools for configuring'''. Once configured the package can be built running '''make''' followed by '''make''' ''install'' to copy the output binary files in the package directory tree. In short:

'''Specifically set Qt libraries paths''' to be consistent with previously built packages:
# Add temporary paths to handle new libraries during build
export QTDIR=/opt/trinity
export PATH=/opt/trinity/bin:/usr/bin:$PATH
export LIBDIR=/usr/lib${LIBDIRSUFFIX}
export LD_LIBRARY_PATH=/usr/lib${LIBDIRSUFFIX}:/opt/trinity/lib${LIBDIRSUFFIX}
export PKG_CONFIG_PATH=:/usr/lib${LIBDIRSUFFIX}/pkgconfig:/opt/trinity/lib${LIBDIRSUFFIX}/pkgconfig:$PKG_CONFIG_PATH

Run command:
# Configure the package
LDFLAGS="${SLKLDFLAGS}" \
CFLAGS="${SLKCFLAGS}" \
CXXFLAGS="${SLKCFLAGS}" \
../${PRGNAM}-${VERSION}/configure \
--prefix=${PREFIX} \
--sysconfdir="/etc/trinity" \
--libdir=${LIBDIR} \
2>&1 | tee -a ${OUTPUT}/${PRGNAM}_configure.log
to configure the build environment.

Then run command '''make''' with no option.

A SlackBuild script including all of the instructions and hacks needed by the build procedure can be downloaded from the following [http://www.giustetti.net/resource/slackbuild/tde/35132/libcarddav.tar.gz link]. The output package can be installed using command '''installpkg''' as usual in Slackware Linux.


For any feedback, questions, errors and such, please e-mail me at ''studiosg [at] giustetti [dot] net''


External Links
----
* [http://www.trinitydesktop.org/wiki/bin/view/Developers/HowToBuild TDE build guide]
* [http://git.trinitydesktop.org/cgit/libcarddav/ The libcarddav TDE GIT repository]
* [http://en.wikipedia.org/wiki/CardDAV The Wikipedia CardDAV related page]
* [http://carddav.calconnect.org/ The CardDAV protocol specification]
* [http://www.rfc-editor.org/rfc/rfc6352.txt The rfc6352 document]

----

Languages: '''English''' - [http://www.giustetti.net/wiki/index.php?title=TDE_libcarddav Italiano]