Command Line Interface

Buckaroo provides a command-line interface for managing your project’s dependencies. The following commands are the recommended way to use Buckaroo.


buckaroo init

Init is used to generate a project file in the current directory.


buckaroo quickstart

Quickstart is similar to Init, but also generates the necessary boiler-plate for a new C++ project. You should use Quickstart when starting a new project.


buckaroo resolve

Reads the project file in the working directory and runs the dependency resolution algorithm, storing the results in the lock file. If there is already a lock file present, then it is overwritten. No dependencies are actually installed.


Install adds and installs dependencies to your project.

buckaroo install google/gtest

or just

buckaroo i google/gtest

Install can be used to add dependencies to your project. Since introducing a new dependency can result in a versioning conflict, the resolution process is run again. This may overwrite your lock file.

Furthermore you can also ommit the organization name and list more than one package at the same time

buckaroo install gtest boost/asio

Install can also fetch buckaroo compatible projects from GitHub, BitBucket and GitLab using the following syntax:

buckaroo install github+loopperfect/neither
buckaroo install bitbucket+org/example
buckaroo install gitlab+org/example

If you do not supply a module name, then the existing dependencies of the project are fetched and installed. If there is no lock file present, then the resolution process will be run first.

buckaroo install


Resolves the dependencies and regenerates the lock-file (buckaroo.lock.json). The lock-file specifies the exact versions of all dependencies to ensure the reproducibility of your project.

Resolve is automatically called when installing or uninstalling a dependency. You may want to run this if one of your dependencies updates.


buckaroo uninstall google/gtest


buckaroo u google/gtest

Uninstall can be used to remove a dependency from your project. Note that the remaining dependencies are recomputed since their resolved versions may have changed as a result. This may overwrite your lock file.


buckaroo upgrade

Upgrades the installed dependencies to the latest compatible version.


buckaroo update

Updates the cook-books installed on your system. This allows you to use benefit from recipe improvements, additions and fixes since you first installed Buckaroo.


buckaroo version

Outputs the version of Buckaroo that is installed.


buckaroo help