Conan Client

From Chorke Wiki
Revision as of 21:17, 24 July 2021 by Shahed (talk | contribs) (→‎References)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Linux

apt install python3-all python3-pip python3-venv
python3 -m venv     ~/.venv/conan
source ~/.venv/conan/bin/activate
python -m pip install -U pip
pip install conan
conan --help

Windows

run as administrator
1. Press ⊞ + R
2. Type in cmd
3. Press Ctrl + Shift + Enter
4. Choose Yes and Press Enter
python -m pip install virtualenv
python -m venv   ~\.venv\conan
~\.venv\conan\Scripts\activate
python -m pip install -U pip
pip install conan
conan --help

Profile

If you are using GCC compiler >= 5.1, Conan will set the compiler.libcxx to the old ABI for backwards compatibility. In the context of this getting started example, this is a bad choice though: Recent gcc versions will compile the example by default with the new ABI and linking will fail without further customization of your cmake configuration. You can avoid this with the following commands:

# generates default profile
conan profile new default --detect

# sets libcxx to C++11 ABI
conan profile update settings.compiler.libcxx=libstdc++11 default 
conan profile remove settings.compiler.libcxx default

cat ~/.conan/profiles/default
ls -la ~/.conan/profiles/

Getting Started

cmake_minimum_required(VERSION 3.19)

Example: 1

cd $ACADEMIA_HOME/wss/ccpp_wss/
git clone https://github.com/conan-io/examples.git
cd examples/libraries/poco/md5/

conan search poco --remote=conancenter
conan inspect poco/1.9.4
cat conanfile.txt

mkdir cmake-build-debug; cd cmake-build-debug
conan install .. -s compiler="Visual Studio" -s compiler.runtime=MDd -s build_type=Debug -s compiler.version=16
conan info .. --graph=graph.html
graph.html

mkdir ../build; cd ../build
conan install ..

Example: 2

cd $ACADEMIA_HOME/wss/ccpp_wss/
git clone https://github.com/drodri/clion_conan.git;cd clion_conan/boost_poco_md5
conan profile remove settings.compiler.libcxx default
mkdir cmake-build-debug; cd cmake-build-debug

conan search poco--remote=conancenter
conan inspect poco/1.11.0

conan search boost --remote=conancenter
conan inspect boost/1.76.0

cat <<EOF > ../conanfile.txt
[requires]
poco/1.11.0
boost/1.76.0

[generators]
cmake
EOF

conan install .. -s compiler="Visual Studio" -s compiler.runtime=MDd -s build_type=Debug -s compiler.version=16
conan info .. --graph=graph.html
graph.html

Knowledge

git clone https://github.com/conan-io/conan.git conan;\
cd conan; python -m pip install -e .
pip install conan --upgrade
ls -la ~/.conan/profiles/
cat ~/.conan/profiles/default
conan info ..
conan search "*"
conan search poco/1.9.4@
conan info .. --graph=file.html
conan install .. --profile=gcc_x86
conan install .. --settings arch=x86
conan install .. --settings os="Linux" --settings compiler="gcc"

References