.github
.husky
assets
docs
adb.md
adobe-lightroom.md
adobe-photoshop.md
adobe-xd.md
android-studio.md
ansible.md
apt.md
ascii-code.md
aspect-ratio.md
awk.md
bash.md
blender.md
bun.md
c.md
canvas.md
cargo.md
chatgpt.md
chmod.md
chown.md
cmake.md
cmd.md
cocoapods.md
colors-named.md
conan.md
conda.md
cpp.md
cron.md
cs.md
css.md
curl.md
dart.md
django.md
docker-compose.md
docker.md
dockerfile.md
ejs.md
elasticsearch.md
electron.md
elixir.md
emacs.md
emmet.md
emoji.md
erlang.md
es6.md
expressjs.md
fastapi.md
feds.md
ffmpeg.md
figma.md
find.md
finder.md
firefox.md
flask.md
flutter.md
ftp.md
gdb.md
git.md
github-actions.md
github-cli.md
github-copilot.md
github.md
gitlab-ci.md
gitlab.md
glances.md
gmail.md
golang.md
google-chrome.md
graphql.md
grep.md
homebrew.md
hook.md
html-char.md
html.md
htmx.md
htop.md
http-status-code.md
ini.md
intelli-j-idea.md
iptables.md
iso-3166-1.md
iso-639-1.md
java.md
javascript.md
jest.md
jq.md
jquery.md
json.md
julia.md
jupyter.md
justfile.md
koajs.md
kotlin.md
kubernetes.md
laravel.md
latex.md
lerna.md
lessjs.md
linux-command.md
lsof.md
lua.md
make.md
markdown.md
matlab.md
mime.md
minio.md
mitmproxy.md
mongodb.md
mysql.md
neo4j.md
nestjs.md
netcat.md
netstat.md
nextjs.md
nginx.md
npm.md
nvm.md
openssl.md
oracle.md
package.json.md
pacman.md
pandoc.md
php.md
phpstorm.md
pinia.md
pm2.md
pnpm.md
ports.md
postgres.md
powershell.md
ps.md
pycharm.md
python.md
pytorch.md
quickreference.md
r.md
react-native.md
react.md
reactrouter.md
redis.md
regex.md
resolutions.md
ruby.md
rust.md
rxjs.md
sass.md
scala.md
screen.md
sdkman.md
sed.md
semver.md
sketch.md
springboot.md
sqlite.md
ssh.md
styled-components.md
stylex.md
stylus.md
sublime-text.md
subversion.md
swift.md
swiftui.md
symbol-code.md
sysdig.md
systemd.md
tailwindcss.md
tar.md
taskset.md
tauri.md
tmux.md
toml.md
twitter.md
typescript.md
vim.md
vimium.md
vscode.md
vue.md
vue2.md
webstorm.md
xcode.md
xpath.md
yaml.md
yarn.md
yum.md
zip.md
icons
.dockerignore
.editorconfig
.gitattributes
.gitignore
.lintstagedrc
.markdownlint.json
.npmrc
.prettierignore
.prettierrc
.refsrc.json
CONTRIBUTING.md
Dockerfile
LICENSE
README.md
package.json
renovate.json

* format: fix markdown * update: fix markdown * update: fix cron problems * update: delete .markdownlintignore * update * chore: add tab -> 4 space * chore: fix tab -> 2 in the .editorconfig
228 lines
4.1 KiB
Markdown
228 lines
4.1 KiB
Markdown
Conan 备忘清单
|
||
===
|
||
|
||
这个 [Conan](https://conan.io/) 快速参考备忘清单显示了它的常用命令使用清单
|
||
|
||
入门
|
||
---
|
||
|
||
### 介绍
|
||
|
||
Conan 是开源、去中心化和多平台的软件包,管理器来创建和共享您的所有本机二进制文件
|
||
|
||
- [Conan 官网](https://conan.io/)
|
||
|
||
#### 安装
|
||
|
||
```bash
|
||
$ pip install conan
|
||
$ pip install conan --upgrade
|
||
```
|
||
|
||
初始化配置文件
|
||
|
||
```bash
|
||
$ conan config init
|
||
```
|
||
|
||
### 显示本地客户端配置
|
||
|
||
Conan 应用配置
|
||
|
||
```bash
|
||
# 查看 Conan 主目录
|
||
$ conan config home
|
||
# 显示部分或全部配置项
|
||
$ conan config get [<section>.<config>]
|
||
# 显示完整的 conan.conf 文件
|
||
$ conan config get
|
||
# 在“日志”部分显示“级别”项
|
||
$ conan config get log.level
|
||
```
|
||
|
||
配置文件的内容(例如默认值)
|
||
|
||
```bash
|
||
$ conan profile show default
|
||
```
|
||
|
||
远程存储库
|
||
|
||
```bash
|
||
$ conan remote list
|
||
```
|
||
|
||
### 添加和修改配置
|
||
|
||
安装配置集合
|
||
|
||
```bash
|
||
$ conan config install <url>
|
||
$ conan config install ./my_config.conf
|
||
```
|
||
|
||
更改单个配置值
|
||
|
||
```bash
|
||
$ conan config set general.revisions_enabled=1
|
||
```
|
||
<!--rehype:className=wrap-text -->
|
||
|
||
添加遥控器
|
||
|
||
```bash
|
||
$ conan remote add my_remote <url>
|
||
```
|
||
|
||
提供远程凭据
|
||
|
||
```bash
|
||
$ conan user -p <password> -r my_remote <username>
|
||
```
|
||
<!--rehype:className=wrap-text -->
|
||
|
||
### 显示来自 inspect 或 reference 的信息
|
||
|
||
显示 `conanfile.py` 的属性
|
||
|
||
```bash
|
||
$ conan inspect <path> -a <attribute>
|
||
```
|
||
|
||
显示 `conanfile.py` 的内容以供参考
|
||
|
||
```bash
|
||
$ conan get <reference>
|
||
```
|
||
|
||
显示 `recipe` 的依赖关系图信息
|
||
|
||
```bash
|
||
$ conan info <path_or_reference>
|
||
```
|
||
|
||
### 搜索包
|
||
<!--rehype:wrap-class=col-span-2-->
|
||
|
||
在远程搜索包
|
||
|
||
```bash
|
||
# 列出本地缓存中的包名称
|
||
$ conan search
|
||
$ conan search <package>/<revision>@<user>/<channel> # 输出取决于给出了多少包引用。
|
||
# 支持通配符
|
||
[--table=file.html] # 将输出保存在 HTML 文件中
|
||
[-r=<remote>] # 查看远程存储库(默认为本地缓存)
|
||
|
||
$ conan search mylib/1.0@user/channel # 显示本地缓存中 mylib/1.0@user/channel 的所有包
|
||
$ conan search "zlib/*" -r=all # 在所有远程中显示所有版本的 zlib
|
||
|
||
$ conan search zlib -r conan-center
|
||
|
||
# 显示包的修订:
|
||
$ conan search <package>/<revision>@<user>/<channel> --revisions
|
||
```
|
||
|
||
### 安装包
|
||
<!--rehype:wrap-class=row-span-2-->
|
||
|
||
仅使用参考安装包
|
||
|
||
```bash
|
||
$ conan install <package_reference>
|
||
```
|
||
|
||
从 conanfile 安装软件包列表
|
||
|
||
```bash
|
||
$ cat conanfile.txt
|
||
[requires]
|
||
zlib/1.2.11
|
||
$ conan install <path_to_conanfile>
|
||
```
|
||
|
||
通过生成器在构建系统中使用包
|
||
|
||
```bash
|
||
$ cat conanfile.txt
|
||
[requires]
|
||
zlib/1.2.11
|
||
[generators]
|
||
cmake_find_package
|
||
msbuild
|
||
make
|
||
```
|
||
|
||
安装需求并生成文件
|
||
|
||
```bash
|
||
$ mkdir build && cd build
|
||
$ conan install ..
|
||
```
|
||
|
||
运行您的构建系统(以下之一)
|
||
|
||
```bash
|
||
$ cmake .. && cmake --build .
|
||
$ msbuild myproject.sln
|
||
$ make
|
||
```
|
||
|
||
### 创建一个包
|
||
|
||
从模板创建配方 (conanfile.py)
|
||
|
||
```bash
|
||
$ conan new <reference> -m <template>
|
||
```
|
||
|
||
只需将配方导出到本地缓存
|
||
|
||
```bash
|
||
$ conan export <path_to_conanfile>
|
||
```
|
||
|
||
从 recipe 为一种配置创建包
|
||
也隐含地安装和导出步骤
|
||
|
||
```bash
|
||
$ conan create . -pr <profile>
|
||
```
|
||
|
||
### 检查包裹
|
||
|
||
完整打印包装配方:
|
||
|
||
```bash
|
||
$ conan get <package>/<revision>@<user>/<channel>
|
||
$ conan get boost/1.74.0
|
||
```
|
||
<!--rehype:className=wrap-text -->
|
||
|
||
包装配方的打印属性:
|
||
|
||
```bash
|
||
$ conan inspect <package>/<revision>@<user>/<channel>
|
||
$ conan inspect boost/1.74.0
|
||
```
|
||
<!--rehype:className=wrap-text -->
|
||
|
||
请参阅 [conan get](https://docs.conan.io/en/latest/reference/commands/consumer/get.html) 和 [conan inspect](https://docs.conan.io/en/latest/reference/commands/misc/inspect.html) 参考
|
||
|
||
### Lockfiles
|
||
|
||
创建一个锁文件:
|
||
|
||
```bash
|
||
$ conan lock create <package>/conanfile.py --user=<user> --channel=<channel>
|
||
```
|
||
<!--rehype:className=wrap-text -->
|
||
|
||
在 `conan create` 或 `conan install` 期间使用 lockfile:
|
||
|
||
```bash
|
||
$ conan <command> --lockfile conan.lock
|
||
```
|
||
|
||
查看 [conan lock](https://docs.conan.io/en/latest/reference/commands/misc/lock.html) 参考
|