检查包是否正确完成后,可以在本地缓存中生成包。请注意,将再次生成包,以确保此步骤始终可重现。
此参数采用与package() 相同的参数。
Input folders | Output folders |
---|---|
source-folder install-folder build-folder package-folder |
- |
有两种操作模式:
- 使用
source-folder
和build-folder
将使用package()
方法从那些文件夹中提取工件并直接在Conan本地缓存中创建包。 严格来说,它不需要直接执行conan软件包,因为它直接从这些source文件夹和build文件夹中进行打包,尽管在开发流程中仍建议使用conan软件包来调试package()方法。 - 使用
package-folder
参数(与上述2不兼容)将不使用package()
方法,它将创建所提供文件夹的精确副本。 假定该软件包已经由先前的conan package命令创建,或者已通过带有conan build命令并带有运行cmake.install()的build()方法创建。 ```shell $ conan export-pkg . user/channel —source-folder=tmp/source —build-folder=tmp/build —profile=myprofile
Packaging to 6cc50b139b9c3d27b3e9042d5f5372d327b3a9f7 hello/1.1@user/channel: Generating the package hello/1.1@user/channel: Package folder C:\Users\conan.conan\data\hello\1.1\user\channel\package\6cc50b139b9c3d27b3e9042d5f5372d327b3a9f7 hello/1.1@user/channel: Calling package() hello/1.1@user/channel package(): Copied 2 ‘.lib’ files: greet.lib, hello.lib hello/1.1@user/channel package(): Copied 2 ‘.lib’ files: greet.lib, hello.lib hello/1.1@user/channel: Package ‘6cc50b139b9c3d27b3e9042d5f5372d327b3a9f7’ created ```