linux平台的安装
- 首先确保已经安装了binutils软件包,因为addr2line命令属于binutils工具集。可以使用以下命令检查是否安装了binutils:
dpkg -l binutils
- 如果未安装binutils,则可以使用以下命令安装:
sudo apt-get install binutils
- 安装完binutils后,addr2line命令就会自动包含在其中。可以使用以下命令验证addr2line是否已经安装:
addr2line --version
- 如果需要使用addr2line命令来解析程序中的地址信息,可以使用以下命令:
addr2line -e /path/to/your/executable -f -C 0xaddress
64位linux上的实质上是 x86_64-linux-gpu-addr2line
Mac平台的安装
64位mac上的实质上是 aarch64-linux-android-addr2line
下载aarch64-linux-android-addr2line 放到对应的目录,笔者放到/Users/tangjianqiang/Library/Android/sdk/ndk/25.2.9519653 目录下面,使用ln -s 源文件 addr2line 进行软连接
然后再 ~/.bashfile中指定 ANDROID_NDK_ROOT=/Users/tangjianqiang/Library/Android/sdk/ndk/25.2.9519653 即可
where addr2line /Users/tangjianqiang/Library/Android/sdk/ndk/25.2.9519653//addr2line
ps:aarch64-linux-android-addr2line 和 addr2line都要chmod 一下,防止执行的时候没有权限的问题