在开发和部署期间如何使发布版本可用?

时间:2019-08-06 11:16:10

标签: cmake conan

我们的开发工作流程迫使我们始终在发布模式下部署特定的第三方依赖关系,无论我们是在开发还是发布最终产品。

我希望能够在开发时使该特定版本可用,即,所有库均以调试模式部署,而在发布期间,所有内容均以发布模式部署。

我当前正在设置self.info_build.settings.build_type = "Any",但是在Debug模式下进行部署时该库不可用。解决方案是具有两个软件包,一个在Release中,一个在Debug模式中,然后强制CMake始终创建Release版本,还是有另一种方法?

1 个答案:

答案 0 :(得分:1)

您可以创建多个配置文件,每个阶段一个:

# develop profile
[settings]
os=Linux
os_build=Linux
arch=x86_64
arch_build=x86_64
compiler=gcc
compiler.version=9
compiler.libcxx=libstdc++11
build_type=Debug
third_party:build_type=Release
[options]
[build_requires]
[env]
# deploy profile
include(develop)

[settings]
build_type=Release

这些配置文件将强制您按照以前的要求将第三方构建为发布模式。所有其他库将遵循常规的构建类型。

要构建项目,您也可以使用柯南命令,但要使用显式配置文件:

conan install .. -p develop # for development
conan install .. -p deploy # for deployment

使用此解决方案,无论使用哪种常规构建类型,您都可以在发布模式下使用第三方。

您可以在此处了解有关柯南个人资料的更多信息: https://docs.conan.io/en/latest/reference/profiles.html

致谢!