Conan C/C++ package manager
A distributed, open source, package manager.
|master (linux/osx)||develop (linux/osx)||master (windows)||develop (windows)|
|Coverage develop||Coverage master||Coverage graph|
We have installers for most platforms here but you can run conan from sources if you want
Conan is compatible with Python 2 and Python 3.
- Install pip following pip docs
- Install conan:
$ pip install conan
From Homebrew (OSx)
- Install Homebrew following brew homepage.
$ brew update $ brew install conan
You can run conan client and server in Windows, MacOS, and Linux.
Install python and pip, search in google instructions for your operating system.
Clone conan repository
$ git clone https://github.com/conan-io/conan.git
Install python requirements
For running the client:
$ sudo pip install -r conans/requirements.txt
$ sudo apt-get install python-dev $ sudo pip install -r conans/requirements_server.txt
$ sudo pip install -r conans/requirements_dev.txt
Running the tests
Make sure that the Python requirements have been installed.
Before you can run the tests, you need to set a few environment variables first.
$ export PYTHONPATH=$PYTHONPATH:$(pwd)
On Windows it would be (while being in the conan root directory):
$ export PYTHONPATH=.
Ensure that your cmake has version 2.8 or later. You can see the version with the following command:
$ cmake --version
The appropriate values of CONAN_COMPILER and CONAN_COMPILER_VERSION depend on your operating system and your requirements.
These should work for the GCC from build-essential on Ubuntu 14.04:
$ export CONAN_COMPILER=gcc $ export CONAN_COMPILER_VERSION=4.8
These should work for OS X:
$ export CONAN_COMPILER=clang $ export CONAN_COMPILER_VERSION=3.5
Finally, there are some tests that use conan to package Go-lang libraries, so you might need to install go-lang in your computer and add it to the path.
You can run the actual tests like this:
$ nosetests .
There are a couple of test attributes defined, as slow, or golang that you can use to filter the tests, and do not execute them:
$ nosetests . -a !golang
A few minutes later it should print OK:
.................................................................................................................................................. ---------------------------------------------------------------------- Ran 146 tests in 50.993s OK
Create a launcher
Conan entry point is “conans.conan.main” module. Fill the absolute path of the cloned repository folder:
#!/usr/bin/env python import sys sys.path.append('/home/user/conan') # EDIT!! from conans.conan import main main(sys.argv[1:])
If you are a Windows user, you can name this file “conan.py” and create a file “conan.bat” that calls the python module:
CALL python C:/Users/user/conan.py %*
Then add that ‘conan’ file to your PATH and you are ready:
$ conan --help Conan commands. Type $conan "command" -h for help build calls your project conanfile.py "build" method. export copies a conanfile.py and associated (export) files to your local store, install install in the local store the given requirements. remove Remove any folder from your local/remote store search show local/remote packages test build and run your package test. Must have conanfile.py with "test" upload uploads a conanfile or binary packages from the local store to any remote. user shows or change the current user