分享

FaceBook/infer-安装说明

 没原创_去搜索 2015-12-30
http://blog.csdn.net/itfootball/article/details/46474235


Install.md翻译

安装 Infer

我们为Linux和MacOS系统提供了预构建的二进制文件,如果你只是想使用Infer,而不想为该项目贡献代码的话,这些二进制文件足够了.相反,如果你想编译infer,这里也有很详细的说明指导你如何在你的操作系统中安装infer.

二进制文件安装

环境要求

  • Python版本大于等于2.7

Mac OS X

infer release页面获取最新版本infer-osx-vXX.tar.xz (以osx标识),然后执行下面命令来安装Infer.

tar xf infer-osx-vXX.tar.xz
# this assumes you use bash, adapt to your needs in case you use
# another shell
echo "export PATH=$PATH:`pwd`/infer-osx/infer/infer/bin"      >> ~/.bashrc && source ~/.bashrc
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

Linux(64位)

infer release页面获取最新版本infer-linux64-vXX.tar.xz (以linux64标识),然后执行下面命令来安装Infer.

tar xf infer-linux64-vXX.tar.xz 
# this assumes you use bash, adapt to your needs in case you use
# another shell
echo "export PATH=$PATH:`pwd`/infer-0.1-x64-linux/infer/infer/bin"      >> ~/.bashrc && source ~/.bashrc
  • 1
  • 2
  • 3
  • 4
  • 5

源码安装

环境条件

  • Python版本大于等于2.7

下载Infer的仓库

git clone https://github.com/facebook/infer.git
  • 1

为了能够分析C和ObjC ,Infer需要clang和facebook-clang-plugins插件,如果你只想分析Java/Android代码,可以跳过安装这些依赖库.细节如下.

MacOS X

环境要求

Java分析的环境要求
  • Java版本小于等于1.7
  • Android开发环境
C/ObjC 分析的环境要求
  • Xcode的版本介于6.1和6.3之间(包含6.1和6.3)
  • clang(使用xcode命令行工具,使用命令xcode-select --install 来安装)

安装说明

安装OCaml的依赖:

opam init --comp=4.01.0  # (answer 'y' to the question)
opam install sawja.1.5 atdgen.1.5.0 javalib.2.3 extlib.1.5.4
  • 1
  • 2

如果你不需要支持C/Objective-C的分析,只是想分析Java文件,继续下面的操作.顺便提一嘴,Java 1.8是不支持的.

cd infer
make -C infer java
export PATH=`pwd`/infer/bin:$PATH
  • 1
  • 2
  • 3

如果你既想支持Java,也想支持C/Objective-C,那么换下面的方式执行:

cd infer
./update-fcp.sh && ../facebook-clang-plugin/clang/setup.sh && ./compile-fcp.sh # go have a coffee :)
make -C infer
export PATH=`pwd`/infer/bin:$PATH
  • 1
  • 2
  • 3
  • 4

Linux

以下安装说明在如下版本的系统已测试可行:Debian 7,Ubuntu 14.04 and Ubuntu 12.04.4 LTS.

安装OCaml的依赖:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install git openjdk-7-jdk m4 zlib1g-dev python-software-properties build-essential libgmp-dev libmpfr-dev libmpc-dev unzip
wget https://github.com/ocaml/opam/releases/download/1.2.2/opam-1.2.2-x86_64-Linux -O opam
chmod +x opam
./opam init --comp=4.01.0 #(then say 'y' to the final question)
eval `./opam config env`
./opam install sawja.1.5 atdgen.1.5.0 javalib.2.3 extlib.1.5.4 #(then say 'y' to the question)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

如果你不需要支持C/Objective-C的分析,只是想分析Java文件,继续下面的操作.顺便提一嘴,Java 1.8是不支持的.

cd infer
make -C infer java
export PATH=`pwd`/infer/bin:$PATH
  • 1
  • 2
  • 3

如果你想两者都支持,使用下面的操作代替.我们假设你的系统已经安装过版本号大于等于4.7.2的gcc.如果你的系统是Ubuntu 12.04.4 LTS,你可以安装gcc-4.8和g++-4.8,按照下面的操作去做,如果你的系统中已经还有满足条件的gcc版本,你可以跳过下面的步骤,比如Debian 7.

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-4.8 g++-4.8
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 60 --slave /usr/bin/g++ g++ /usr/b
  • 1
  • 2
  • 3
  • 4
  • 5

然后继续如下操作:

cd infer
./update-fcp.sh
../facebook-clang-plugin/clang/setup.sh  # go have a coffee :)
./compile-fcp.sh
make -C infer
export PATH=`pwd`/infer/bin:$PATH
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

      本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
      转藏 分享 献花(0

      0条评论

      发表

      请遵守用户 评论公约

      类似文章 更多