首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

C++ Boost 庫在 FreeBSD 上的安裝與測試指南

     編輯:關於C語言

安裝步驟

# 下載原始碼
ftp https://jaist.dl.sourceforge.net/project/boost/boost/1.55.0/boost_1_55_0.tar.gz

# 解壓 (注意 .tar.gz 用 zxvf,非 jxvf)
tar zxvf boost_1_55_0.tar.gz

# 建構安裝
cd boost_1_55_0
./bootstrap.sh
./bjam
ldconfig  # 更新共享庫快取
cd ..

原文使用 tar jxvf 錯誤,.gz 需 z 選項。

測試程式

// test_boost.cpp
#include <boost/lexical_cast.hpp>
#include <iostream>

int main() {
    using boost::lexical_cast;
    int a = lexical_cast<int>("210923");
    double b = lexical_cast<double>("4358.56");
    std::cout << a << std::endl;
    std::cout << b << std::endl;
    return 0;
}

編譯與執行

# g++ 編譯 C++ 程式
g++ -o boost_test test_boost.cpp -I /home/dp/boost_1_55_0

# 執行
./boost_test
# 輸出:
# 210923
# 4358.56

注意:gcc/cc 編譯 C,g++/CC 編譯 C++。原文重複使用 g++ 兩次並誤寫為 CC 參數相同。

常見問題

  • 標頭檔找不到:確認 -I 路徑指向 boost 根目錄(含 boost/ 子目錄)。
  • 連結錯誤:Boost 大部分為標頭檔庫,少數元件(如 thread, system, filesystem)需連結:-lboost_thread -lboost_system -lpthread。
  • 版本管理:FreeBSD ports 提供 devel/boost-libs devel/boost-all,生產環境建議用 pkg install boost-libs 而非手動編譯。

Boost 核心優勢

  • 準標準庫:許多元件後被 C++11/14/17 標準化(如 smart_ptr, thread, regex, lexical_cast)。
  • 跨平台、同行審閱、高品質實現。
  • 模組化:只包含需要的標頭檔,零執行期開銷。

本文記錄了在 FreeBSD 上從原始碼建構 Boost 的基本流程,並以 lexical_cast 為例驗證安裝成功。實際專案建議使用系統套件管理器安裝穩定版本。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved