Ubuntu 22.04下GNU Prolog安装失败,执行make install报错求助
解决Ubuntu 22.04下GNU Prolog安装
make install报错问题 问题原因
报错提示找不到../doc/???*.dvi等文档文件,是因为从GitHub克隆的源码默认未预先生成这些格式的文档,安装过程中尝试复制不存在的文档文件导致失败。核心程序其实已经编译完成,仅文档安装环节出错。
解决方案
方案1:跳过文档安装,手动部署核心程序
若不需要本地文档,可直接完成核心功能的安装:
- 验证核心程序是否正常编译:
在src目录下执行:
若能进入GNU Prolog交互环境,说明核心功能正常。./gprolog - 手动复制核心文件到系统目录:
sudo mkdir -p /usr/local/gprolog-1.6.0/bin /usr/local/gprolog-1.6.0/lib /usr/local/gprolog-1.6.0/include sudo install -c */gplc */hexgplc */gprolog */pl2wam */wam2ma */ma2asm */fd2c /usr/local/gprolog-1.6.0/bin sudo install -c -m 644 */top_level_main.o */top_level.o */all_pl_bips.o */debugger.o */all_fd_bips.o /usr/local/gprolog-1.6.0/lib sudo install -c -m 644 */libengine_pl.a */libbips_pl.a */liblinedit.a */libengine_fd.a */libbips_fd.a /usr/local/gprolog-1.6.0/lib sudo Tools/cpp_headers gprolog.h ./gprolog.h EnginePl EngineFD BipsPl BipsFD && sudo install -c -m 644 ./gprolog.h /usr/local/gprolog-1.6.0/include && rm -f gprolog.h sudo Tools/cpp_headers fd_to_c.h ./fd_to_c.h EnginePl EngineFD BipsPl BipsFD && sudo install -c -m 644 ./fd_to_c.h /usr/local/gprolog-1.6.0/include && rm -f fd_to_c.h sudo ranlib /usr/local/gprolog-1.6.0/lib/*.a - 添加全局调用支持(可选):
将安装目录的bin路径加入环境变量:echo 'export PATH=$PATH:/usr/local/gprolog-1.6.0/bin' >> ~/.bashrc source ~/.bashrc
方案2:编译生成文档后完整安装
若需要本地文档,先安装编译依赖再重新执行安装:
- 安装文档编译工具:
sudo apt-get install texlive-full ghostscript - 回到源码根目录编译文档:
cd ../doc make - 回到
src目录完成安装:cd ../src sudo make install
方案3:用系统包管理器直接安装(最简)
Ubuntu官方仓库已提供预编译包,无需手动编译:
sudo apt update sudo apt install gprolog
安装完成后,终端输入gprolog即可直接使用。
内容的提问来源于stack exchange,提问作者Marco9631
相关产品推荐
相关产品推荐

