近日想用Antlr4实现一个Parser来做点静态分析,需要安装一下。

首先检查一下是否安装了Java:

@ubuntu:~$ java -version
openjdk version "17.0.1" 2021-10-19
OpenJDK Runtime Environment (build 17.0.1+12-Ubuntu-120.04)
OpenJDK 64-Bit Server VM (build 17.0.1+12-Ubuntu-120.04, mixed mode, sharing)

显示版本号即表明安装好了。否则需要先安装java,直接apt install即可(版本号可能有变,也可以安装其他版本的Java,我选择的是openjdk-17-jdk):

@ubuntu:~$ sudo apt install openjdk-17-jdk

现在已经装好Java了,先去官网上下载antlr4的.jar,并且放到系统的lib里面:

@ubuntu:~$ wget https://www.antlr.org/download/antlr-4.9.3-complete.jar
@ubuntu:~$ sudo cp antlr-4.9.3-complete.jar /usr/local/lib/

可能会没有权限把文件拷贝到/usr/local/lib,可以sudo。当然,放在其他目录下也不是不行,只不过在lib里更符合常理。

然后在~/.bashrc中加入如下几行来配置环境变量和创建别名,以便可以方便地从命令行使用antlr4。

export CLASSPATH=".:/usr/local/lib/antlr-4.9.3-complete.jar:$CLASSPATH"
alias antlr4='java -jar /usr/local/lib/antlr-4.9.3-complete.jar'
alias grun='java org.antlr.v4.gui.TestRig'

如果上一步没有放在/usr/local/lib而是别的目录,需要做相应的修改。不要忘了source一下,来让修改立即生效:

@ubuntu:~$ source ~/.bashrc

现在应该已经安装好了,尝试一下:

@ubuntu:~$ antlr4
ANTLR Parser Generator  Version 4.9.3-o ___              specify output directory where all output is generated-lib ___            specify location of grammars, tokens files-atn                generate rule augmented transition network diagrams-encoding ___       specify grammar file encoding; e.g., euc-jp-message-format ___ specify output style for messages in antlr, gnu, vs2005-long-messages      show exception details when available for errors and warnings-listener           generate parse tree listener (default)-no-listener        don't generate parse tree listener-visitor            generate parse tree visitor-no-visitor         don't generate parse tree visitor (default)-package ___        specify a package/namespace for the generated code-depend             generate file dependencies-D<option>=value    set/override a grammar-level option-Werror             treat warnings as errors-XdbgST             launch StringTemplate visualizer on generated code-XdbgSTWait         wait for STViz to close before continuing-Xforce-atn         use the ATN simulator for all predictions-Xlog               dump lots of logging info to antlr-timestamp.log-Xexact-output-dir  all output goes into -o dir regardless of paths/package

大功告成!

Ubuntu 20.04桌面版 安装Antlr4相关推荐

  1. Ubuntu 20.04桌面版 安装antlr4的C++ runtime library(运行时库)

    之前写过安装antlr4,我希望能用它生成以C++为源码语言的语法分析器.这里并不是说生成的Parser是用在C++身上的,而是Parser本身的源码是C++. 这个操作还是很简单的,直接生成就行. ...

  2. Ubuntu 20.04 桌面版安装显卡驱动过程

    在桌面版安装显卡驱动时似乎与server存在差别,分屏输出的时候如果建立了nouveau的blacklist那可能会导致某个接口的显示屏无法输出的问题,解决的办法则是将已经建立的blacklist删除 ...

  3. Ubuntu的配置(以ubuntu 20.04桌面版为例)

    文章目录 一.更换镜像源 二.安装VMware Tools工具 三.安装Google浏览器 四.安装搜狗输入法 五.安装C/C++开发工具Clion 1.安装编译环境 2.安装开发环境 一.更换镜像源 ...

  4. ubuntu 安装kde桌面_在Ubuntu 20.04系统上安装KDE Plasma Desktop的方法

    本文介绍在Ubuntu 20.04系统上安装KDE Plasma Desktop的方法.Plasma Desktop是KDE创建的一种流行且功能强大的桌面环境,主要用于Linux系统.KDE Plas ...

  5. Ubuntu 18.04 服务器版安装桌面及软件

    Ubuntu 18.04 服务器版安装软件记录 设置root密码 使用root用户登录 安装ssh(远程连接用),最小化安装的需要,一般已安装. 将"#PermitRootLogin pro ...

  6. ubuntu 20.04.3如何安装odoo15.0社区版

    环景: Ubuntu 20.04.3-live-server Odoo 15.0-20220214 (社区版) 问题描述: ubuntu 20.04.3如何安装odoo15.0 解决方案: 1.通过 ...

  7. 【高清截图】UbuntuKylin 14.04 桌面版安装步骤

    Ubuntu 14.04 北京时间今日凌晨3点发布,守了一夜,一发布就立即下载了镜像文件,要知道明天下载服务器都比较繁忙.因为官方网站直接跳转到中文麒麟版本的页面,我先下载了麒麟版本,先用用这个吧!当 ...

  8. Ubuntu 20.04常见软件安装

    Ubuntu 20.04常见软件安装 安装系统 20.04 系统 制作启动盘后直接安装系统 具体安装可以参考Ubuntu 20.04安装指导 https://blog.csdn.net/weixin_ ...

  9. vmware虚拟机ubuntu18.04桌面版安装教程

    vmware虚拟机ubuntu18.04桌面版安装教程 一. 安装环境: VMware Workstation: 15.5Pro Ubuntu: 18.04桌面版 二. 安装教程: 创建虚拟机 选择[ ...

最新文章

  1. Python_note7 文件和数据格式化+wordcloud库
  2. matlab向量与x正方向的夹角_MIT—线性代数笔记25 对称矩阵和正定性
  3. 1.2 离散时间信号-采样
  4. Oracle-维护存在主键的分区表时的注意事项
  5. 单节点hadoop部署成功
  6. 新安装数据库sqlserver2008r2,使用javaweb连接不上问题处理
  7. Spring MVC DispatcherServlet改造为 CSE RestServlet 常见问题汇编
  8. android顶部居中,如何将drawableLeft对齐到顶部,而不是在android TextView中居中?
  9. 管理感悟:一个人的工作效率是不可能提高的
  10. 独家:为了永不停机的计算服务 - 四月月刊 | 凌云时刻
  11. 千千静听 dfx 音效插件_专业团队的蝰蛇音效,好听就是好软件
  12. 贝叶斯网络在疾病预测诊断中的应用与优化
  13. APP自动化测试--IOS
  14. 业界红包玩法与技术方案总结
  15. be idle sometimes to_一生中不该错过的经典语录,深刻有道理,看了让人爱不释手!...
  16. win10+python开发django项目day03
  17. 一度智信:电商推广计划
  18. 超声的pacs系统和dicom服务器,PACS系统中DICOM/HL7网关与DICOM服务器的研究与实现
  19. cannt connect to db!_分贝db以及在语音的用途
  20. 电脑总是区域性白屏,求助各位大佬。

热门文章

  1. 华为ModelArts详细教程
  2. 如何选择研发效能管理平台?好用的研发效能管理平台有哪些
  3. 2018计算机应用基础作业一,2018年自考《计算机应用基础》精选习题一
  4. Apache Iceberg 分区表探索与实践
  5. 30ea什么意思_化学中ea是什么意思
  6. 怎么查看邮件服务器25端口,更改掉smtp25端口怎么接收邮件
  7. oracle 证书丢失怎么办
  8. Dete类,Calendar类,Clock类,Instant类,Localtime类,Duration类,LocalDate类,Period类的特性(1)
  9. 【排序引论】第一章 绪论
  10. Excel读取通达信1分钟数据