Gradle可用于编译C ++代码。
当然,可以定义第三方库的依赖关系,例如boost,例如:
repositories {
libs(PrebuiltLibraries) {
boost_thread {
binaries.withType(StaticLibraryBinary) {
staticLibraryFile = file("third_party/boost/lib/libboost_system.a")
}
headers.srcDir "third_party/boost/include/"
}
}
根据我对标题的理解,这有点类似于包含:
-Ithird_party/boost/include
然而,通过调用:
也可以实现目录包含(至少在clang 3.4中)-isystem third_party/boost/include
有益于在头文件中消除警告。
所以问题是如何以正确的方式做到这一点?
我想我可以省略libs(PrebuiltLibraries)部分中的headers目录并手动将它们添加到编译器args中,但这似乎更像是一种解决方法。