一周前,我再次来到Alacritty 的项目主页,我想再次安装它,但因为阅读到我必须构建它而感到沮丧。

我过去常常构建东西(我不会说我真的很喜欢从源代码编译东西,但我已经足够大,可以生活在 i 之前的世界中,但我越来越喜欢安装东西的便利无需在我的机器上安装所有开发工具。

在 Rust 的 Docker 镜像描述中,您可以找到标题为Compile your app inside the Docker container的部分,这正是我想要做的,但是由于没有包含两个lxcb库,因此会出现问题:

  = note: /usr/bin/ld: cannot find -lxcb-shape
          /usr/bin/ld: cannot find -lxcb-xfixes
          collect2: error: ld returned 1 exit status

error: could not compile `alacritty` due to previous error

进入全屏模式 退出全屏模式


我已经从这个开始了,所以我会离开一些配置,但它本质上是相同的。

1.不用镜像运行cargo直接打开一个shell控制台。

docker run --rm -it -v (pwd):/backup rust /bin/bash

进入全屏模式 退出全屏模式

  1. 更新源并安装 lxcb 开发库。
# You are already root inside the container
apt-get update

# This is the only lib missing from Alacritty's build pre-requisites
apt-get install libxcb-xfixes0-dev

# Now compile, you can use the more concise command from Rust's image description
cargo install alacritty
# I mounted my home dir as /backup
cp /usr/local/cargo/bin/alacritty /backup/alacritty

进入全屏模式 退出全屏模式

1.在容器之外,你需要将alacritty复制到你的PATH中包含的某个目录中,我使用了:

sudo mv alacritty /usr/local/bin/alacritty

进入全屏模式 退出全屏模式


最后一个通知是,如构建说明中所述,这不会安装 terminfo 文件、桌面条目、手册页或 shell 完成,但应该不难让它工作。

Logo

云原生社区为您提供最前沿的新闻资讯和知识内容

更多推荐