遇見Google Abseil開源項目(一):cmake

abseil項目介紹

Abseil已在Google歷經十多年的開發,它的目的是爲Google編程人員在各種項目上的工作需求提供支持,這些項目包括Protocol Buffers、gRPC和TensorFlow等。
Abseil中包括如下的庫
base:初始化,以及其它的基礎代碼。
algorithm:對C++的庫的補充,併爲原算法提供了基於容器的版本。
container:提供了更多的STL類型容器。
debugging:用於檢查泄漏的調試庫。
memory:包括兼容C++ 11版本的std::make_unique()和內存管理。
meta:包括兼容C++ 11版本的類型檢查,在C++ 14和C++ 17版本的C++ <type_traits>庫中可用。
numeric:兼容C++ 11的128位整數。
strings:各種字符串工具。
synchronization:併發原語和同步抽象。
time:抽象了絕對時間點操作和時區操作。
types:非容器工具的類型。

Abseil的代碼採用Apache許可,已發佈在GitHub上。其Python版本的軟件庫也已發佈。

abseil在Github上的倉庫

abseil-cpp開源項目倉庫鏈接

abseil的cmake方式編譯

abseil的cmake方式編譯

  1. git下載源碼:$git clone https://github.com/abseil/abseil-cpp.git
  2. cmake編譯,如果系統沒有安裝cmake(ubuntu: sudo apt-get install cmake)$ cd abseil-cpp $ mkdir build && cd build $ cmake .. -DABSL_RUN_TESTS=ON -DABSL_USE_GOOGLETEST_HEAD=ON -DCMAKE_CXX_STANDARD=11
    CMACHYCXXORM標準=11使用C++ 11標準指導CMake構建。
  3. 構建CMake 測試目標cmake --build . --target all
  4. 一旦構建了CMake測試,請使用ctest命令並行運行它們:$ ctest
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章