compiler_args
This is the reference page for compiler_args generator.
Go to Integrations/Compilers on command line if you want to learn how to integrate your project calling
your compiler in the command line.
Generates a file named conanbuildinfo.args containing a command line parameters to invoke gcc, clang or cl compiler.
You can use the compiler_args generator directly to build simple programs:
gcc/clang:
> g++ timer.cpp @conanbuildinfo.args -o bin/timer
cl:
$ cl /EHsc timer.cpp @conanbuildinfo.args
With gcc or clang
FLAG  | 
MEANING  | 
|---|---|
-DXXX  | 
Corresponding to requirements defines  | 
-IXXX  | 
Corresponding to requirements include dirs  | 
-Wl,-rpathXXX  | 
Corresponding to requirements lib dirs  | 
-LXXX  | 
Corresponding to requirements lib dirs  | 
-lXXX  | 
Corresponding to requirements libs and system_libs  | 
-m64  | 
For x86_64 architecture  | 
-m32  | 
For x86 architecture  | 
-DNDEBUG  | 
For Release builds  | 
-s  | 
For Release builds (only gcc)  | 
-g  | 
For Debug builds  | 
-D_GLIBCXX_USE_CXX11_ABI=0  | 
When setting libcxx == “libstdc++”  | 
-D_GLIBCXX_USE_CXX11_ABI=1  | 
When setting libcxx == “libstdc++11”  | 
-framework XXX  | 
Corresponding to requirements frameworks (OSX)  | 
-F XXX  | 
Corresponding to requirements framework dirs (OSX)  | 
Other flags  | 
cxxflags, cflags, sharedlinkflags, exelinkflags (applied directly)  | 
With cl (Visual Studio)
FLAG  | 
MEANING  | 
|---|---|
/DXXX  | 
Corresponding to requirements defines  | 
/IXXX  | 
Corresponding to requirements include dirs  | 
/LIBPATH:XX  | 
Corresponding to requirements lib dirs  | 
/MT, /MTd, /MD, /MDd  | 
Corresponding to Runtime  | 
-DNDEBUG  | 
For Release builds  | 
/Zi  | 
For Debug builds  | 
Directly inside a recipe
 from conans import ConanFile
 class PocoTimerConan(ConanFile):
     settings = "os", "compiler", "build_type", "arch"
     requires = "poco/1.9.4"
     generators = "compiler_args"
     default_options = {"poco:shared": True, "openssl:shared": True}
     def build(self):
         self.run("mkdir -p bin")
         command = 'g++ timer.cpp @conanbuildinfo.args -o bin/timer'
         self.run(command)