如何为opam安装bubblewrap(优先无管理员权限)及沙箱困惑解答
解决opam 2.1.4初始化缺少bubblewrap的问题
为什么--disable-sandboxing没用?
如果执行opam init --disable-sandboxing仍报错,大概率是~/.opam目录残留了之前的初始化配置,强制启用了沙箱。先删除该目录再重试:
rm -rf ~/.opam opam init --disable-sandboxing --no-setup
注意必须用双短横线的--disable-sandboxing参数,避免拼写错误。
无管理员权限安装bubblewrap
源码编译安装(推荐)
这是最通用的无权限安装方式,步骤如下:
- 获取bubblewrap稳定版源码:
# 用git克隆(推荐) git clone https://gitlab.com/containers/bubblewrap.git cd bubblewrap git checkout v0.8.0 # 切换到稳定版本 # 或者不用git,直接下载tar包 # wget https://gitlab.com/containers/bubblewrap/-/archive/v0.8.0/bubblewrap-v0.8.0.tar.gz # tar -xzf bubblewrap-v0.8.0.tar.gz # cd bubblewrap-v0.8.0 - 配置编译路径到用户本地目录:
若提示缺少./configure --prefix=$HOME/.localautoconf或make,需先确保系统已安装基础编译工具(多数Linux发行版默认自带)。 - 编译并安装:
make make install - 将本地bin目录加入PATH:
要永久生效,把这行添加到export PATH=$HOME/.local/bin:$PATH~/.bashrc或~/.zshrc末尾,重启终端即可。
验证安装
执行以下命令确认bwrap可用:
bwrap --version
之后重新运行opam init就能正常完成初始化。
内容的提问来源于stack exchange,提问作者Charlie Parker
相关产品推荐
相关产品推荐

