介紹如何在 Ubuntu Linux 中安裝與使用 POCO C++ 函式庫。
POCO 是一套多功能的跨平台 C++ 函式庫,可用於開發各類型平台上的網路相關應用程式,以下是在 Ubuntu Linux 中安裝 POCO 函式庫的方式與使用範例。
在 Ubuntu Linux 中可以接以 apt
來安裝 POCO C++ 函式庫:
# 安裝 POCO C++ 函式庫
sudo apt install libpoco-dev
安裝好之後,就可以使用 C++ 函式庫來開發應用程式了。
g++
編譯 POCO C++ 函式庫應用程式以下是一個將字串進行 base64 編碼的範例:
#include "Poco/Base64Encoder.h" #include <iostream> using Poco::Base64Encoder; int main() { Base64Encoder encoder(std::cout); encoder << "Hello, world!"; return 0; }
直接以 g++
編譯使用 POCO 開發的 C++ 應用程式:
# 編譯 POCO C++ 應用程式 g++ base64.cpp -o base64 -lPocoFoundation
POCO 函式庫中包含許多不同的模組,可以透過動態連結檔來查看,若使用到對應的模組連結時就要加上去:
# 列出 POCO C++ 函式庫動態連結檔
ls /usr/lib/libPoco*.so
/usr/lib/libPocoCrypto.so /usr/lib/libPocoFoundation.so /usr/lib/libPocoRedis.so /usr/lib/libPocoData.so /usr/lib/libPocoJSON.so /usr/lib/libPocoUtil.so /usr/lib/libPocoDataMySQL.so /usr/lib/libPocoMongoDB.so /usr/lib/libPocoXML.so /usr/lib/libPocoDataODBC.so /usr/lib/libPocoNet.so /usr/lib/libPocoZip.so /usr/lib/libPocoDataSQLite.so /usr/lib/libPocoNetSSL.so
若要以 CMake 編譯此程式,可以配合以下 CMakeLists.txt
設定檔:
cmake_minimum_required (VERSION 2.6) # 設定專案名稱 project (Base64) # 尋找並引入 POCO C++ 函式庫的指定元件 find_package(Poco REQUIRED COMPONENTS Foundation) # 增加一個執行檔 add_executable(base64 base64.cpp) # 定義執行檔連結方式 target_link_libraries(base64 ${Poco_LIBRARIES}
若要查詢在 CMake 中可用的 POCO C++ 函式庫元件,可以參考 CMake 的設定檔:
# 列出 POCO C++ 函式庫 CMake 設定檔
ls /usr/lib/cmake/Poco/*Config.cmake
/usr/lib/cmake/Poco/PocoConfig.cmake /usr/lib/cmake/Poco/PocoCryptoConfig.cmake /usr/lib/cmake/Poco/PocoDataConfig.cmake /usr/lib/cmake/Poco/PocoDataMySQLConfig.cmake /usr/lib/cmake/Poco/PocoDataODBCConfig.cmake /usr/lib/cmake/Poco/PocoDataSQLiteConfig.cmake /usr/lib/cmake/Poco/PocoFoundationConfig.cmake /usr/lib/cmake/Poco/PocoJSONConfig.cmake /usr/lib/cmake/Poco/PocoMongoDBConfig.cmake /usr/lib/cmake/Poco/PocoNetConfig.cmake /usr/lib/cmake/Poco/PocoNetSSLConfig.cmake /usr/lib/cmake/Poco/PocoRedisConfig.cmake /usr/lib/cmake/Poco/PocoUtilConfig.cmake /usr/lib/cmake/Poco/PocoXMLConfig.cmake /usr/lib/cmake/Poco/PocoZipConfig.cmake