编译 bc 时出错:找不到 libreadline.so.8

编译 bc 时出错:找不到 libreadline.so.8

我正在关注《Linux from Scratch》一书,版本 8.4,并且一直在编译 bc (第6.15章)。

我已将该页面上的命令复制并粘贴到 make 命令,但是当我运行 make 时,出现此错误:

./fbc -c ./libmath.b </dev/null >libmath.h
./fbc: error while loading shared libraries: libreadline.so.8: cannot open shared object file: No such file or directory
make[2]: *** [Makefile:631: libmath.h] Error 127
make[2]: Leaving directory '/sources/bc-1.07.1/bc'

我已在 /lib 和 /usr/lib 中检查了 libreadline.so.8,它存在于两个目录中。我还尝试将 libreadline.so.8 复制到 /sources/bc-1.07.1/bc、/sources/bc-1.07.1/bc/lib 和 /sources/bc-1.07.1/bc/bc,但是我仍然遇到同样的错误。

输出cat config.log | grep readline

  $ ./configure --prefix=/usr --with-readline --mandir=/usr/share/man --infodir=/usr/share/info
configure:5164: checking for readline in -lreadline
configure:5189: gcc -o conftest -g -O2   -lncurses conftest.c -lreadline   >&5
configure:5201: checking readline/readline.h usability
configure:5201: checking readline/readline.h presence
configure:5201: checking for readline/readline.h
ac_cv_header_readline_readline_h=yes
ac_cv_lib_readline_readline=yes
READLINELIB='-lreadline -lncurses'

有人可以帮我解决这个问题吗?

编辑:

我通过在 chroot 环境之外运行配置脚本设法解决了这个问题。 make 命令和测试没有返回错误,但是我不确定这是否会破坏书中的其他内容。

相关内容