如何解决conan 用户权限被拒绝
我有一个使用箭头和镶木地板的项目。我下载并构建了所需的库,然后成功构建了我的库。现在我想迁移它以使用 conan,以简化构建过程。
我面临的问题是,大多数(如果不是全部)箭头的预构建二进制文件都不包含镶木地板,至少对于 Windows。
这可能意味着柯南会下载配方并构建它。但是,一旦我将镶木地板添加到我的 conanfile.txt 中,就会出现错误
这是我的 conanfile.txt
[requires]
arrow/2.0.0
rapidjson/cci.20200410
catch2/2.13.6
[generators]
cmake
[options]
arrow:shared=False
arrow:parquet=True
这些是我在使用 conan install 时遇到的错误
>conan install ..
Configuration:
[settings]
arch=x86_64
arch_build=x86_64
build_type=Release
compiler=Visual Studio
compiler.runtime=MD
compiler.version=14
os=Windows
os_build=Windows
[options]
[build_requires]
[env]
WARN: thrift/0.13.0: requirement boost/1.76.0 overridden by arrow/2.0.0 to boost/1.74.0
WARN: libevent/2.1.12: requirement openssl/1.1.1j overridden by thrift/0.13.0 to openssl/1.1.1k
ERROR: Permission denied for user: 'None'. [Remote: bincrafters:]
从错误中,我假设配方有一些版本冲突并且无法继续,并且我需要执行类似 Using override 的操作,但我不知道如何有效地执行此操作。
其他答案,包括 a very similar question 中的一个,假设将柯南更新到最新版本可以解决这个问题,但我已经更新到 1.38 版,但无济于事。
有什么提示吗?
编辑 1:
我发现的第一件事是我的 remotes.json 已过时,指向 bincrafters。这可能确实是破坏我构建的东西。稍后我会发布我发现的内容
解决方法
我发现的第一件事是我的 remotes.json 已过时,指向 bincrafters。这可能确实是破坏我构建的东西。稍后我会发布我发现的内容
是的,你说得对。此信息和操作已在此处共享:https://bincrafters.github.io/2020/04/19/infrastructure-changes-and-required-actions/
根据错误,我假设配方存在一些版本冲突并且无法继续,并且我需要执行诸如使用覆盖之类的操作,但我不知道如何有效地执行此操作。
由于所有配方都是手动更新的,所以版本冲突时有发生。此处记录了您问题的正确修复方法:https://docs.conan.io/en/latest/faq/troubleshooting.html#error-incompatible-requirements-obtained-in-different-evaluations-of-requirements
除此之外,您可以在此处打开一个请求版本更新的问题:https://github.com/conan-io/conan-center-index/issues
,我想我应该记录我的发现,因为这些信息不容易获得:
首先
ERROR: Permission denied for user: 'None'. [Remote: bincrafters:]
这表明 remotes.json 有一个错误的配置。 bincrafters 不再存在,但是如果无法访问其中一个遥控器,conan 会停止(配置是几年前由其他人创建的,它是自定义的,因为它也指向公司存储库)。
第二:
清除第一个错误后,第二个答案就有些明显了:
我更新了我的 conanfile.txt 以强制我的配方使用最新的 boost 和 openssl(从而绕过版本冲突)
[requires]
arrow/2.0.0
rapidjson/cci.20200410
catch2/2.13.6
boost/1.76.0
openssl/1.1.1k
[generators]
cmake
[options]
arrow:shared=False
arrow:parquet=True
arrow:with_snappy=True
然后继续安装 conan 依赖项,构建缺少的依赖项:
conan install .. --build=arrow
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。