Conan Recipe

From GNU Radio
Jump to: navigation, search

These are notes for the process of getting a conan recipe for GNU Radio, the recipe is not yet fully functional

conanfile.py:

from conans import ConanFile, CMake
from conans.tools import os_info, SystemPackageTool

class PocoTimerConan(ConanFile):
   settings = "os", "compiler", "build_type", "arch"
   requires = ["boost/1.73.0",
               "gmp/6.1.2", 
               "fftw/3.3.8",
               "zmq/4.2.5@bincrafters/stable",
               "doxygen/1.8.17",
               "swig/4.0.1",
               "log4cplus/2.0.4",
               "qt/5.15.0@bincrafters/stable",
               "xorg/system"] # had to add this, conan yelled at me for not having it
   generators = "cmake"#, "gcc", "txt"


Stuff I had to do to get this to work:

The build process is the same except you do

  1. conan install .. (which installs the dependencies and sets up cmake)
  2. cmake ..
  3. make
  4. make install

When the "conan install .." command runs, settings in ~/.conan/profiles/default file are applied, which might get fishy. you can also change stuff via cmd args "conan config install" is designed to share these settings/profiles with others

generate a pretty graph of dependency tree with:

conan info .. --graph=file.html

Search for recipes in conan-center with:

conan search "*xyz*" --remote=conan-center