gtest的单独编译和使用
1.??????編譯
我們項目所用的編譯器:arm-linux-androideabi-g++及其相應工具鏈
從http://code.google.com/p/googletest/downloads/detail?name=gtest-1.6.0.zip處獲取gtest-1.6.0.zip
a)?????下載解壓后,需更新build-aux目錄下的 config.sub 。此為必須,否則將不能識別arm-linux-androideabi工具鏈。Config.sub可從http://gcc.gnu.org/svn/gcc/branches/cilkplus/config.sub?獲取。
b)?????然后執行./configure -host=arm-linux-androideabi
c)??????此后會生成Makefile 文件, 接著我們需要編輯Makefile文件, 改動CXXFLAGS為???? CXXFLAGS = -g -O2 –DANDROID ?。 此為必須,否則編譯不能通過。
d)?????最后執行make ,? 在lib/.lib/目錄下生成了libgtest.a文件。
?
2.??????使用
假設項目只有兩個文件:?a.cpp;main.cpp 。
a)?????a.cpp 為主要被測文件,為此我們創建了一個測試文件,其中包含對a.cpp的測試例,命名為a_unittest.cpp。
b)?????修改main函數為如下:
int _tmain(int argc, wchar_t* argv[])
{
??????????????? testing::InitGoogleTest(&argc,argv);
?????????????? returnRUN_ALL_TESTS();
}
c)??????修改被測項目的Makefile ,一使其包含gtest的include目錄。二使其在link時,需加上libgtest.a文件,即最終可執行文件應為如下link而成: a.o + main.o ?+ a_unittest.o+ libgtest.a
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的gtest的单独编译和使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: makefile的选项CFLAGS和LD
- 下一篇: 平滑动画 每秒60帧 -- 16ms内绘