Download and API Reference
You can install the C SDK from a repository for your platform, download prebuilt binaries, or compile from source.
API reference
The latest API reference can be found at http://docs.couchbase.com/sdk-api/couchbase-c-client-2.4.4/. The API documentation is generated from the source package using the Doxygen utility. See the source README for instructions on how to generate the documentation locally.
Linux quickstart
- Configures your distribution to use Couchbase's software repositories
- Installs the core library distribution
- Installs the command line utilities (cbc and cbc-pillowfight)
- Installs the development files needed for using SDKs that rely on the C SDK
To use the script, you need to have Perl installed on your system. Virtually all Linux distributions already have Perl installed as a core component of the distribution. You will be prompted by the script whenever it needs to make changes to your system or packages.
shell> wget http://packages.couchbase.com/clients/c/couchbase-csdk-setup
shell> sudo perl couchbase-csdk-setup
Linux advanced installation
If you want to manually install the C SDK, either from a static binary package or by manually configuring the repositories, you can use the following procedures.
Common Binary Packages
- libcouchbase2-core: The core library package
- libcouchbase-dev (or libcouchbase-devel): The development package, required if building SDKs which depend on the C SDK
- libcouchbase2-bin: The command line utilities (cbc and cbc-pillowfight)
- libcouchbase2-libevent: Optional but recommended component for I/O performance. Can also be used to integrate with libevent (see Using External Event Loops).
- libcouchbase2-libev: Optional, for use with applications that make use of event loop integration with libev (see Using External Event Loops).
Configuring yum repositories (CentOS, Redhat Enteprise Linux)
This section assumes you know how to add an external yum repository. Refer to Linux quickstart to see the steps it will perform on your distribution. To configure the repository:- Find the appropriate repository location for your distribution in the following
table. CentOS and RHEL allow 32-bit packages to be installed on a 64-bit system.
This is usually not what you want, so ensure that you use the 64-bit repository
for your 64-bit system (unless you specifically want the 32-bit SDK).
Version Architecture Repository 6 32-bit http://packages.couchbase.com/rpm/6.2/i686 6 64-bit http://packages.couchbase.com/rpm/6.2/x86_64 7 64bit http://packages.couchbase.com/rpm/7/x86_64 - Create a couchbase.repo file in your
/etc/yum.repos.d directory. It should look similar to the
following:
[couchbase] enabled = 1 name = Couchbase package repository baseurl = REPLACE THIS WITH THE ACTUAL REPOSITORY FOR YOUR PLATFORM gpgcheck = 1 gpgkey = http://packages.couchbase.com/rpm/couchbase-rpm.key
Configuring APT repositories (Debian, Ubuntu)
This section assumes some knowledge of Apt. Refer to Linux quickstart to see the steps it will perform on your distribution. To configure the repository:
- Download the Couchbase GPG key from http://packages.couchbase.com/ubuntu/couchbase.key.
- Add the key to the list of trusted package keys. Use the apt-key add command. For example, apt-key add couchbase.key
- Create a couchbase.list file in /etc/sources.list.d. The file should contain
the repository for your distribution. Repositories are available for the following
distributions:
Distribution Repository Entry Precise (Ubuntu 12.04) deb http://packages.couchbase.com/ubuntu precise precise/main Trusty (Ubuntu 14.04) deb http://packages.couchbase.com/ubuntu trusty trusty/main Debian Wheezy (Stable) deb http://packages.couchbase.com/ubuntu wheezy wheezy/main
Installing on Mac OS X with Homebrew
brew update # Needed if upgrading to a newer version
brew install libcouchbase
Installing binary packages without a repository
You can install standalone packages by downloading a TAR archive containing the necessary binary packages for your platform. You can locate them at Download links.
Installing RPM packages manually
$ tar xf libcouchbase-2.4.0_centos62_x86_64.tar
$ cd libcouchbase-2.4.0_centos62_x86_64/
$ sudo rpm -ivh libcouchbase-devel-2.4.0-1.el6.x86_64.rpm libcouchbase2-core-2.4.0-1.el6.x86_64.rpm \
libcouchbase2-bin-2.4.0-1.el6.x86_64.rpm libcouchbase2-libevent-2.4.0-1.el6.x86_64.rpm
Preparing... ########################################### [100%]
1:libcouchbase2-core ########################################### [ 25%]
2:libcouchbase-devel ########################################### [ 50%]
3:libcouchbase2-bin ########################################### [ 75%]
4:libcouchbase2-libevent ########################################### [100%]
Installing Debian packages manually
$ tar xf libcouchbase-2.2.0_ubuntu1204_amd64.tar
$ cd libcouchbase-2.2.0_ubuntu1204_amd64
$ sudo dpkg -i libcouchbase2-core_2.2.0-2453_amd64.deb libcouchbase2-libevent_2.2.0-2453_amd64.deb \
libcouchbase-dev_2.2.0-2453_amd64.deb libcouchbase2-bin_2.2.0-2453_amd64.deb
Selecting previously unselected package libcouchbase2-core.
(Reading database ... 28297 files and directories currently installed.)
Unpacking libcouchbase2-core (from libcouchbase2-core_2.2.0-2453_amd64.deb) ...
Selecting previously unselected package libcouchbase2-libevent.
Unpacking libcouchbase2-libevent (from libcouchbase2-libevent_2.2.0-2453_amd64.deb) ...
Selecting previously unselected package libcouchbase-dev.
Unpacking libcouchbase-dev (from libcouchbase-dev_2.2.0-2453_amd64.deb) ...
Selecting previously unselected package libcouchbase2-bin.
Unpacking libcouchbase2-bin (from libcouchbase2-bin_2.2.0-2453_amd64.deb) ...
Setting up libcouchbase2-core (2.2.0-2453) ...
Processing triggers for man-db ...
Setting up libcouchbase2-bin (2.2.0-2453) ...
Setting up libcouchbase2-libevent (2.2.0-2453) ...
Setting up libcouchbase-dev (2.2.0-2453) ...
Processing triggers for libc-bin ...
ldconfig deferred processing now taking place
Installing from source
Source archives can be downloaded from the Download links section. You should first extract the library, configure it, and then install it. For example:$ tar xf libcouchbase-2.4.0.tar.gz
$ cd libcouchbase-2.4.0
$ ./configure
$ sudo make install
Windows binary packages
Windows binary packages can be found at the Download links. Included are the header files, release and debug variants of the DLLs and import libraries, and release and debug variants of the command line tools.
Ensure you select the proper package pertaining to the compiler and architecture your application is using.
Download links
The following tables contain a listing of current and historical downloads for all binaries for the C SDK, including Windows binaries for Windows developers.
Downloads
The following tables contain download links for all versions of the C 2.x SDK.
Platform | Architecture | File |
---|---|---|
Source Archive | Any | libcouchbase-2.4.4.tar.gz |
Ubuntu 12.04 | x86 | libcouchbase-2.4.4_ubuntu1204_i386.tar |
Ubuntu 12.04 | x64 | libcouchbase-2.4.4_ubuntu1204_amd64.tar |
Ubuntu 14.04 | x86 | libcouchbase-2.4.4_ubuntu1404_i386.tar |
Ubuntu 14.04 | x64 | libcouchbase-2.4.4_ubuntu1404_amd64.tar |
Debian Wheezy | x86 | libcouchbase-2.4.4_wheezy_i386.tar |
Debian Wheezy | x64 | libcouchbase-2.4.4_wheezy_amd64.tar |
Enterprise Linux 6 | x86 | libcouchbase-2.4.4_centos62_i686.tar |
Enterprise Linux 6 | x64 | libcouchbase-2.4.4_centos62_x86_64.tar |
Enterprise Linux 7 | x64 | libcouchbase-2.4.4_centos7_x86_64.tar |
Visual Studio 2008 | x86 | libcouchbase-2.4.4_x86_vc9.zip |
Visual Studio 2008 | x64 | libcouchbase-2.4.4_amd64_vc9.zip |
Visual Studio 2010 | x86 | libcouchbase-2.4.4_x86_vc10.zip |
Visual Studio 2010 | x64 | libcouchbase-2.4.4_amd64_vc10.zip |
Visual Studio 2012 | x86 | libcouchbase-2.4.4_x86_vc11.zip |
Visual Studio 2012 | x64 | libcouchbase-2.4.4_amd64_vc11.zip |
Platform | Architecture | File |
---|---|---|
Source Archive | Any | libcouchbase-2.3.1.tar.gz |
Ubuntu 10.04 | x86 | libcouchbase-2.3.1_ubuntu1004_i386.tar |
Ubuntu 10.04 | x64 | libcouchbase-2.3.1_ubuntu1004_amd64.tar |
Ubuntu 12.04 | x86 | libcouchbase-2.3.1_ubuntu1204_i386.tar |
Ubuntu 12.04 | x64 | libcouchbase-2.3.1_ubuntu1204_amd64.tar |
Enterprise Linux 5 | x86 | libcouchbase-2.3.1_centos55_i386.tar |
Enterprise Linux 5 | x64 | libcouchbase-2.3.1_centos55_x86_64.tar |
Enterprise Linux 6 | x86 | libcouchbase-2.3.1_centos62_i686.tar |
Enterprise Linux 6 | x64 | libcouchbase-2.3.1_centos62_x86_64.tar |
Visual Studio 2008 | x86 | libcouchbase-2.3.1_x86_vc9.zip |
Visual Studio 2008 | x64 | libcouchbase-2.3.1_amd64_vc9.zip |
Visual Studio 2010 | x86 | libcouchbase-2.3.1_x86_vc10.zip |
Visual Studio 2010 | x64 | libcouchbase-2.3.1_amd64_vc10.zip |
Visual Studio 2012 | x86 | libcouchbase-2.3.1_x86_vc11.zip |
Visual Studio 2012 | x64 | libcouchbase-2.3.1_amd64_vc11.zip |
Platform | Architecture | File |
---|---|---|
Source Archive | Any | libcouchbase-2.3.0.tar.gz |
Ubuntu 10.04 | x86 | libcouchbase-2.3.0_ubuntu1004_i386.tar |
Ubuntu 10.04 | x64 | libcouchbase-2.3.0_ubuntu1004_amd64.tar |
Ubuntu 12.04 | x86 | libcouchbase-2.3.0_ubuntu1204_i386.tar |
Ubuntu 12.04 | x64 | libcouchbase-2.3.0_ubuntu1204_amd64.tar |
Enterprise Linux 5 | x86 | libcouchbase-2.3.0_centos55_i386.tar |
Enterprise Linux 5 | x64 | libcouchbase-2.3.0_centos55_x86_64.tar |
Enterprise Linux 6 | x86 | libcouchbase-2.3.0_centos62_i686.tar |
Enterprise Linux 6 | x64 | libcouchbase-2.3.0_centos62_x86_64.tar |
Visual Studio 2008 | x86 | libcouchbase-2.3.0_x86_vc9.zip |
Visual Studio 2008 | x64 | libcouchbase-2.3.0_amd64_vc9.zip |
Visual Studio 2010 | x86 | libcouchbase-2.3.0_x86_vc10.zip |
Visual Studio 2010 | x64 | libcouchbase-2.3.0_amd64_vc10.zip |
Visual Studio 2012 | x86 | libcouchbase-2.3.0_x86_vc11.zip |
Visual Studio 2012 | x64 | libcouchbase-2.3.0_amd64_vc11.zip |
Platform | Architecture | File |
---|---|---|
Source Archive | Any | libcouchbase-2.2.0.tar.gz |
Ubuntu 10.04 | x86 | libcouchbase-2.2.0_ubuntu1004_i386.tar |
Ubuntu 10.04 | x64 | libcouchbase-2.2.0_ubuntu1004_amd64.tar |
Ubuntu 12.04 | x86 | libcouchbase-2.2.0_ubuntu1204_i386.tar |
Ubuntu 12.04 | x64 | libcouchbase-2.2.0_ubuntu1204_amd64.tar |
Enterprise Linux 5 | x86 | libcouchbase-2.2.0_centos55_i386.tar |
Enterprise Linux 5 | x64 | libcouchbase-2.2.0_centos55_x86_64.tar |
Enterprise Linux 6 | x86 | libcouchbase-2.2.0_centos62_i686.tar |
Enterprise Linux 6 | x64 | libcouchbase-2.2.0_centos62_x86_64.tar |
Visual Studio 2008 | x86 | libcouchbase-2.2.0_x86_vc9.zip |
Visual Studio 2008 | x64 | libcouchbase-2.2.0_amd64_vc9.zip |
Visual Studio 2010 | x86 | libcouchbase-2.2.0_x86_vc10.zip |
Visual Studio 2010 | x64 | libcouchbase-2.2.0_amd64_vc10.zip |
Visual Studio 2012 | x86 | libcouchbase-2.2.0_x86_vc11.zip |
Visual Studio 2012 | x64 | libcouchbase-2.2.0_amd64_vc11.zip |
Platform | Architecture | File |
---|---|---|
Source Archive | Any | libcouchbase-2.1.3.tar.gz |
Ubuntu 10.04 | x86 | libcouchbase-2.1.3_ubuntu1004_i386.tar |
Ubuntu 10.04 | x64 | libcouchbase-2.1.3_ubuntu1004_amd64.tar |
Ubuntu 12.04 | x86 | libcouchbase-2.1.3_ubuntu1204_i386.tar |
Ubuntu 12.04 | x64 | libcouchbase-2.1.3_ubuntu1204_amd64.tar |
Enterprise Linux 5 | x86 | libcouchbase-2.1.3_centos55_i386.tar |
Enterprise Linux 5 | x64 | libcouchbase-2.1.3_centos55_x86_64.tar |
Enterprise Linux 6 | x86 | libcouchbase-2.1.3_centos62_i686.tar |
Enterprise Linux 6 | x64 | libcouchbase-2.1.3_centos62_x86_64.tar |
Visual Studio 2008 | x86 | libcouchbase-2.1.3_x86_vc9.zip |
Visual Studio 2008 | x64 | libcouchbase-2.1.3_amd64_vc9.zip |
Visual Studio 2010 | x86 | libcouchbase-2.1.3_x86_vc10.zip |
Visual Studio 2010 | x64 | libcouchbase-2.1.3_amd64_vc10.zip |
Visual Studio 2012 | x86 | libcouchbase-2.1.3_x86_vc11.zip |
Visual Studio 2012 | x64 | libcouchbase-2.1.3_amd64_vc11.zip |
Platform | Architecture | File |
---|---|---|
Source Archive | Any | libcouchbase-2.1.2.tar.gz |
Ubuntu 10.04 | x86 | libcouchbase-2.1.2_ubuntu1004_i386.tar |
Ubuntu 10.04 | x64 | libcouchbase-2.1.2_ubuntu1004_amd64.tar |
Ubuntu 12.04 | x86 | libcouchbase-2.1.2_ubuntu1204_i386.tar |
Ubuntu 12.04 | x64 | libcouchbase-2.1.2_ubuntu1204_amd64.tar |
Enterprise Linux 5 | x86 | libcouchbase-2.1.2_centos55_i386.tar |
Enterprise Linux 5 | x64 | libcouchbase-2.1.2_centos55_x86_64.tar |
Enterprise Linux 6 | x86 | libcouchbase-2.1.2_centos62_i686.tar |
Enterprise Linux 6 | x64 | libcouchbase-2.1.2_centos62_x86_64.tar |
Visual Studio 2008 | x86 | libcouchbase-2.1.2_x86_vc9.zip |
Visual Studio 2008 | x64 | libcouchbase-2.1.2_amd64_vc9.zip |
Visual Studio 2010 | x86 | libcouchbase-2.1.2_x86_vc10.zip |
Visual Studio 2010 | x64 | libcouchbase-2.1.2_amd64_vc10.zip |
Visual Studio 2012 | x86 | libcouchbase-2.1.2_x86_vc11.zip |
Visual Studio 2012 | x64 | libcouchbase-2.1.2_amd64_vc11.zip |
Platform | Architecture | File |
---|---|---|
Source Archive | Any | libcouchbase-2.1.1.tar.gz |
Ubuntu 10.04 | x86 | libcouchbase-2.1.1_ubuntu1004_i386.tar |
Ubuntu 10.04 | x64 | libcouchbase-2.1.1_ubuntu1004_amd64.tar |
Ubuntu 12.04 | x86 | libcouchbase-2.1.1_ubuntu1204_i386.tar |
Ubuntu 12.04 | x64 | libcouchbase-2.1.1_ubuntu1204_amd64.tar |
Enterprise Linux 5 | x86 | libcouchbase-2.1.1_centos55_i386.tar |
Enterprise Linux 5 | x64 | libcouchbase-2.1.1_centos55_x86_64.tar |
Enterprise Linux 6 | x86 | libcouchbase-2.1.1_centos62_i686.tar |
Enterprise Linux 6 | x64 | libcouchbase-2.1.1_centos62_x86_64.tar |
Visual Studio 2008 | x86 | libcouchbase-2.1.1_x86_vc9.zip |
Visual Studio 2008 | x64 | libcouchbase-2.1.1_amd64_vc9.zip |
Visual Studio 2010 | x86 | libcouchbase-2.1.1_x86_vc10.zip |
Visual Studio 2010 | x64 | libcouchbase-2.1.1_amd64_vc10.zip |
Visual Studio 2012 | x86 | libcouchbase-2.1.1_x86_vc11.zip |
Visual Studio 2012 | x64 | libcouchbase-2.1.1_amd64_vc11.zip |
Platform | Architecture | File |
---|---|---|
Source Archive | Any | libcouchbase-2.1.0.tar.gz |
Ubuntu 10.04 | x86 | libcouchbase-2.1.0_ubuntu1004_i386.tar |
Ubuntu 10.04 | x64 | libcouchbase-2.1.0_ubuntu1004_amd64.tar |
Ubuntu 12.04 | x86 | libcouchbase-2.1.0_ubuntu1204_i386.tar |
Ubuntu 12.04 | x64 | libcouchbase-2.1.0_ubuntu1204_amd64.tar |
Enterprise Linux 5 | x86 | libcouchbase-2.1.0_centos55_i386.tar |
Enterprise Linux 5 | x64 | libcouchbase-2.1.0_centos55_x86_64.tar |
Enterprise Linux 6 | x86 | libcouchbase-2.1.0_centos62_i686.tar |
Enterprise Linux 6 | x64 | libcouchbase-2.1.0_centos62_x86_64.tar |
Visual Studio 2008 | x86 | libcouchbase-2.1.0_x86_vc9.zip |
Visual Studio 2008 | x64 | libcouchbase-2.1.0_amd64_vc9.zip |
Visual Studio 2010 | x86 | libcouchbase-2.1.0_x86_vc10.zip |
Visual Studio 2010 | x64 | libcouchbase-2.1.0_amd64_vc10.zip |
Visual Studio 2012 | x86 | libcouchbase-2.1.0_x86_vc11.zip |
Visual Studio 2012 | x64 | libcouchbase-2.1.0_amd64_vc11.zip |
Platform | Architecture | File |
---|---|---|
Source Archive | Any | libcouchbase-2.0.7.tar.gz |
Ubuntu 10.04 | x86 | libcouchbase-2.0.7_ubuntu1004_i386.tar |
Ubuntu 10.04 | x64 | libcouchbase-2.0.7_ubuntu1004_amd64.tar |
Ubuntu 12.04 | x86 | libcouchbase-2.0.7_ubuntu1204_i386.tar |
Ubuntu 12.04 | x64 | libcouchbase-2.0.7_ubuntu1204_amd64.tar |
Enterprise Linux 5 | x86 | libcouchbase-2.0.7_centos55_i386.tar |
Enterprise Linux 5 | x64 | libcouchbase-2.0.7_centos55_x86_64.tar |
Enterprise Linux 6 | x86 | libcouchbase-2.0.7_centos62_i686.tar |
Enterprise Linux 6 | x64 | libcouchbase-2.0.7_centos62_x86_64.tar |
Visual Studio 2008 | x86 | libcouchbase-2.0.7_x86_vc9.zip |
Visual Studio 2008 | x64 | libcouchbase-2.0.7_amd64_vc9.zip |
Visual Studio 2010 | x86 | libcouchbase-2.0.7_x86_vc10.zip |
Visual Studio 2010 | x64 | libcouchbase-2.0.7_amd64_vc10.zip |
Visual Studio 2012 | x86 | libcouchbase-2.0.7_x86_vc11.zip |
Visual Studio 2012 | x64 | libcouchbase-2.0.7_amd64_vc11.zip |