【发布时间】:2021-12-12 18:48:55
【问题描述】:
一周以来,我一直在尝试为我的项目构建柯南包。我一直在阅读文档,但仍有很多地方让我感到困惑。
我认为有 4 个文件非常重要:
- conanfile.py
- conanfile.txt
- 柯南个人资料
- settings.yml
每个文件的用途是什么?每个文件应该放在哪里?哪些可以互换?
我有以下conanfile.py 生成柯南包:
from conans import ConanFile, CMake
class mylibConan(ConanFile):
name = "mylib"
version = "1.16.0"
generators = "cmake"
settings = "os", "arch", "compiler", "build_type"
options = {"shared": [True, False]}
default_options = "shared=False"
exports_sources = ["*"]
url = ""
license = ""
description = "The mylib HAL library."
def configure(self):
self.options.shared = False
def build(self):
cmake = CMake(self)
cmake.configure()
cmake.build()
def package(self):
libs_build_dir = "lib_mylib/" + str(self.settings.build_type)
api_dir = "modules/mylib/lib/api/"
self.copy(pattern="lib_mylib.lib", dst="lib", src=libs_build_dir)
self.copy(pattern="*", dst="include", src=api_dir)
def package_info(self):
self.cpp_info.includedirs = ['include']
self.cpp_info.libdirs = ['lib']
self.cpp_info.libs = ['mylib']
...以及以下conanfile.txt 在我使用柯南包的主项目中:
[requires]
mylib/1.16.0@demo/testing
[generators]
cmake
visual_studio_multi
我需要将cl 版本定义为14.24.28314,这样它就不会与消费项目冲突。
我应该在哪里定义cl 版本?
【问题讨论】: