6.15. Bc-1.07.1

Bc 软件包包括一个任意精度数值处理的语言。

大致构建用时: 0.1 SBU
所需磁盘空间: 4.1 MB

6.15.1. 安装 Bc

首先,更改内部脚本用 sed 代替 ed

cat > bc/fix-libmath_h << "EOF"
#! /bin/bash
sed -e '1   s/^/{"/' \
    -e     's/$/",/' \
    -e '2,$ s/^/"/'  \
    -e   '$ d'       \
    -i libmath.h

sed -e '$ s/$/0}/' \
    -i libmath.h
EOF

创建临时符号链接,以便软件包能找到 readline 库,并确认所需的 libncurses 库可用。虽然现在这些库位于 /tools/lib 中,但在本章节的最后系统将改用 /usr/lib。

ln -sv /tools/lib/libncursesw.so.6 /usr/lib/libncursesw.so.6
ln -sfv libncursesw.so.6 /usr/lib/libncurses.so

修复一个由于在 LFS 早期阶段缺少文件所导致的 configure 问题:

sed -i -e '/flex/s/as_fn_error/: ;; # &/' configure

准备编译 Bc:

./configure --prefix=/usr           \
            --with-readline         \
            --mandir=/usr/share/man \
            --infodir=/usr/share/info

配置选项的含义:

--with-readline

该选项告诉 Bc 使用系统中已经安装的 readline 库而不是使用自带的 readline 版本。

编译软件包:

make

运行下面的命令来测试 bc。这会输出好多内容,因此你可能希望重定向到一个文件。测试中会有很小的比例(10 分之 12,144)最后一位数字会有舍入误差。

echo "quit" | ./bc/bc -l Test/checklib.b

安装软件包:

make install

6.15.2. Bc 软件包内容

安装的程序: bc 和 dc

简要介绍

bc

一个命令行计算器

dc

逆波兰命令行计算器