這次的目標在安裝 CxxlMan2 程式庫和多國語言插件,以及用一個簡單的例子做範例。在 CxxlMan2 的部份先下載以下檔案,並解壓到一個資料夾中,我是放在 ~/MySrc
- CxxlMan2 程式庫
- 多國語言插件
- CMRegSelf 插件註冊輔助
- Sprintf 簡單風格字串格式化 (內含這次要用到的範例)
首先安裝好 C++ 編譯器,先下三道命令
$ sudo apt install gcc
$ sudo apt install c++
$ sudo apt-get install uuid-dev
再到 Ubuntu Software 安裝 CMake 及 Code::Blocks IDE,準備完成後就可以編譯安裝了。
編譯完成後的相關成品都要放到 /usr/local,也就是 Include 檔要放到 /usr/local/include,CxxlMan2 程式庫要放到 /usr/local/lib,Release 版的插件要放到 /usr/local/plugin,Debug 版的插件要放到 /usr/local/plugin_d。
首先處理 CxxlMan2 程式庫,打開 CMake 做以下步驟
然後按下 Ctrl-F9 就能完成編譯和安裝,再到 CMake
"多國語言插件" 的步驟和上面一樣就比照辦理。
"CMRegSelf 插件註冊輔助" 解開後複製以下兩個檔案到 usr/local/include,但要用 root 的權限複製
"Sprintf 簡單風格字串格式化" 也一樣直接複製 SPRINTF.HPP 就好。在 C++20 標準有提供一套 std::format 的類群,可以做到 CxxlMan::Sprintf 的功能且更多,std::vformat 可適用於 "多國語言插件",所以應該改用 C++ 提供的,只是目前有支援的編譯器暫時還不多。
會用 CxxlMan::Sprintf 主要是因其中有提供一個範例,有針對 Linux 修正過,所以就用來驗證安裝是否順利。
範例一樣用 CMake 先做出配置,只不過這次不用安裝,也不用以 root 的權限來執行 CodeBlocks,執行時若出現找不到 CxxlMan2 程式庫的 .so 檔的訊息,可能是因 /usr/local/bin 不在執行期的搜尋路徑中,可以用 LD_LIBRARY_PATH 指定,上網找一下哪種方式適合你,以下是正確執行的截圖
沒有留言:
張貼留言