搭建infer前須要java
配置JDK1.7+ python2.7+ocamlc+opam,文中詳解python
infer下載地址:https://github.com/facebook/infer/releases/ 下載:infer-linux64-v0.8.1.tar.xzlinux
一、將infer-linux64-v0.8.1.tar.xz拷貝至你的目錄中,注意使用root身份登陸,拷貝至/root中。git
#cp infer-linux64-v0.8.1.tar.xz github
二、解壓縮。ubuntu
#tar xf infer-linux64-v0.8.1.tar.xz 或直接雙擊解壓縮. python2.7
三、檢查編譯。ui
#./configure spa
你可能會遇到錯誤:.net
configure: error: ocamlc not found.
這是未安裝ocamlc的緣由,解決辦法,
安裝ocamlc: sudo apt-get install ocamlc
再次運行 ./configure
能夠遇到如下錯誤:
緣由缺乏atdgen,解決辦法:
sudo apt-get install atdgen 結果會發現找不到對應的軟件安裝
那咱們能夠去atdgen官網下載安裝:https://launchpad.net/ubuntu/+source/atdgen
這樣會很複雜,咱們不是安裝了ocamlc。
根據其中的提示,咱們可使用opam安裝缺乏的插件。運行:sudo opam install atdgen ,如果當前opam環境沒有配置好,咱們須要先配置opam環境。
咱們先配置好apam環境:
./opam init --comp=4.02.3
eval `./opam config env`
而後運行 opam switch 咱們能夠看到咱們系統中有哪些版本的編譯器了。
而後運行 sudo opam install atdgen ,就能夠安裝了
接下來在運行檢查編譯還有可能會遇到 configure: error: missing dependency: XXXXXXX . 相似的軟件缺失提示,咱們只要按照上面的步驟安裝補全便可,據我安裝經驗會須要javalib、oUnit、extlib、camlzip、atdgen、sawja(按順序安裝出錯機率小)
這些都安裝好了,還有可能會提示: configure: error: javac not found. 緣由是沒有java環境,注意,暫時它只支持1.7版本的java,裝了更高版本的依然會報錯的。
apt-get install openjdk-7-jdk 會找不到安裝包
opam install openjdk-7-jdk 也會找不到安裝包
咱們只能選擇離線安裝了,去官網下載jdk安裝包,注意選擇對應系統屬性的
Linux下 java的離線安裝配置:http://my.oschina.net/hibony/blog/693581
還須要python2.7的環境,其餘版本也會有問題。固然linux通常默認自帶python環境,並且就是2.7版本的,因此咱們能夠不用管。執行python即可以看到當前的python版本。
四、編譯
檢查經過後,將生成用於編譯的MakeFile文件。此時,能夠開始進行編譯。
#make 或者 make java
五、安裝
成功編譯後,開始安裝。
#make install
六、安裝清理
安裝完畢,應清除編譯過程當中產生的臨時文件和配置過程當中產生的文件。
#make clean
#make distclean
至此,安裝結束。
若是要卸載,則執行make uninstall
記錄一下遇到的問題:
./configure 提示:Package atdgen is already installed (current version is 1.6.0).
opam install atdgen 提示:findlib package atdgen version 1.6.0... not found
衝突以後使用:./build-infer.sh*