学习编译vaultwarden问题汇总 作者: Hogwarts 发布于: 2021-12-09 更新于: 2021-12-14 分类: 默认分类 说一下前情提要:先前在Debian10上编译的vaultwarden,在Debian10上成功运行。看到有新版本发行,就想编译一个新版本。因为Centos8不再支持更新,故装了Centos7,在Centos7下编译成功。但在Debian10下无法运行。 原因不在深究了,重新安装Debian11,重新编译,编译成功后,在Debian10和Centos7下都无法运行。在Centos下无法运行可以理解,竟然在Debian10下也无法运行,是让人无法承受的。遂深究其原因。 **报错情况** ImportError: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29’ not found Google一番,估计是Debian10的GLIBC的问题。 **运行命令** strings /lib/x86_64-linux-gnu/libm.so.6 | grep GLIBC Debian11显示 GLIBC_2.2.5 GLIBC_2.4 GLIBC_2.15 GLIBC_2.18 GLIBC_2.23 GLIBC_2.24 GLIBC_2.25 GLIBC_2.26 GLIBC_2.27 GLIBC_2.28 GLIBC_2.29 GLIBC_2.31 GLIBC_PRIVATE Debian10显示 GLIBC_2.2.5 GLIBC_2.4 GLIBC_2.15 GLIBC_2.18 GLIBC_2.23 GLIBC_2.24 GLIBC_2.25 GLIBC_2.26 GLIBC_2.27 GLIBC_2.28 GLIBC_PRIVATE 看来确实是D10的版本低了。又Google一番如何安装。 下载地址:http://ftp.gnu.org/pub/gnu/glibc/ wget https://ftp.gnu.org/pub/gnu/glibc/glibc-2.31.tar.gz tar -zxvf glibc-2.31.tar.gz 正常情况下 ./configure --prefix=/usr/local/glibc make make install 但本机作为生产用机还得安装gcc、make编译工具 apt install gcc gcc++ make 然后再运行 ./configure --prefix=/usr/local/glibc **报错:** *** These critical programs are missing or too old: bison *** Check the INSTALL file for required versions. 再安装bison apt install bison 然后 make && make install 安装成功后,看参考还要做软链接啥的,不大懂。 重启了一下vaultwarden,成功运行了。 #经验 ##什么系统下编译就在什么系统下运行 ##用Docker吧 #参考 https://www.cxymm.net/article/gcyysh1314/116243662 https://www.cnblogs.com/liujiaxin2018/p/13196207.html 标签: vaultwarden, rust