[GAP]安装IO宏包时出错的处理办法
为了安装 openmath 等宏包, 必须要安装 io 宏包, 安装次序倒是没关系, 就是 io 成功安装后, 加载其他依赖它的宏包才能有效. 安装 io 宏包的方法, 参见其说明文档. 先将 io 宏包解压缩到 GAP 的宏包目录. 我这里是 /usr/share/gap/pkg/, 然后进入 /usr/share/gap/pkg/io, 执行下面的命令
sudo ./configure ../.. sudo make
注意第一个命令后面加了参数 ../.. 而不是 ../../, 但第二个命令的执行却出现了错误, 如下:
../../bin/i486-pc-linux-gnu-i486-linux-gnu-gcc/gac -d -p "-I/usr/share/gap/pkg/io/bin/i486-pc-linux-gnu-i486-linux-gnu-gcc" -o bin/i486-pc-linux-gnu-i486-linux-gnu-gcc/io.so src/io.c /bin/sh: ../../bin/i486-pc-linux-gnu-i486-linux-gnu-gcc/gac: not found make: *** [bin/i486-pc-linux-gnu-i486-linux-gnu-gcc/io.so] Error 127
原因在于 gac 未找到, gac 是 GAP compiler script. 位于 /usr/bin/gac . 因此在
sudo ./configure ../..
之后不要马上 sudo make, 应修改 Makefile 文件, 将其中的
../../bin/i486-pc-linux-gnu-i486-linux-gnu-gcc/gac
修改为
/usr/bin/gac
还有一处是 ./gac 也要修改. 另外查看 configure 代码后发现, 还有一个 Makefile 也要做相应修改, 就是
bin/i486-pc-linux-gnu-i486-linux-gnu-gcc/Makefile
修改完成后, 再执行下面的命令就可以了.
sudo make
可以试一下 LoadPackage("io") 看是否成功. 只有安装了 io 宏包, 才能正常加载其他依赖它的宏包, 如 openmath 等.
-----------
Reference:
GAP Package IO
http://www-groups.mcs.st-and.ac.uk/~neunhoef/Computer/Software/Gap/io.html