跳到主要內容

Installing new version boost library for CodeBlock IDE

2013.08.15
--------------------------------------------
Boost 在 sourceforge  中也有 binary 的檔案,不需要到 BoostPro 中下載他們編譯的 binary 檔。 Boost document 是使用 DocBook 的套件所製作的文件,在 Boost document 第39章有介紹,另外,在 sourceforge 中也有 Boost document for pdf format 的檔案,。

---------------------------------------------
之前拿 boost library source code 來編譯,當時的版本是 1.38v,現在已經是 1.52v 了,不過編譯 boost 需要很多時間,不想再編譯,而在 Boost Getting Started on Windows 中寫道:The easiest way to get a copy of Boost is to use an installer,這個 installerBoostPro Computing 所提供,下載這個 installer 以後,就像 Windows 安裝軟體那樣容易。

  由於將 OS 升級為 Windows 8,之前所安裝的 boost library 已經不在,新版本 (1.51 版 by BoostPro) 是否將 include 的目錄架構變更或以前就沒有這個目錄,已經不可考了,總之,之前所寫的設定過程已經不能再使用了。不管這些的變化,主要能將 1.51 版本的 boost 讓 CodeBlocks IDE 可以讀得到才是重要,底下是整個設定的過程,在 codeblock.txt 檔中是簡單設定的版本。

  1. 下載 installer, 選擇所需要的 library 形式來安裝,假設是安裝在 c:\library\boost_1_51 目錄

  2. 在 CodeBlocks 中設定 Global variable:

      2a.) Setting -> Global variable, new 一個 Current variable, 名稱輸入 boost

      2b.) 在 Build-in field 的 base 欄位中輸入  c:\library\boost_1_51

      2c.) 在 lib 欄位中輸入 c:\library\boost_1_51\lib ( include 欄位不需要輸入任何路徑)

  3. 建立一個 project 或者在 Global Compiler Setting 中設定:

   這二種的差別主要是 project 只是給目前的 project 所使用,而 Global Compiler Setting 是所有的程式都可以使用,包括單獨的 C++ 程式碼皆可以使用,不過缺點在於 compiler 時都會到 boost 目錄中搜尋。

  3a. 建立一個 project:

   3a1) File -> New -> Project, 輸入 project name, path, and where to save this project

   3a2) 在 project name 按下滑鼠右鍵,選 build option

   3a3) 在 Search Directory 的 compiler tab 中加入 $(#boost.include), linker tab 中加入 $(#boost.lib)

   3a4) 如果使用 boostpro installer 安裝時沒有加入 path,請在 linker Setting tab 中加入 c:\library\boost1_51\lib 並且任意選擇一個 .lib or .a 的 library 來 linking

   3a5) 可以使用任一 boost project 測試, 例如 boost_test project in my document folder

  3b.  Global Compiler Setting 中設定:

   設定步驟與上面的相同,設定完成後就可以使用單一個 c++ 程式來測試,例如:boost_test.cpp in cppPrimer folder

簡單的說明 CodeBlocks 的 Global Variable 的意義:

1. Current Variable:
    在 CodeBlocks 中 Global Variable 是指定變數及變數值讓 CodeBlocks 使用,在 Current Variable 中設定的名稱就是所謂變數名稱,以後在其他地方就可以使用 $(#變數名稱) 來關聯到變數相關的設定值。

2. base:
    是指定變數值要存取的目錄位置,假設變數名稱設為 boost ,則在search directory 的 compiler tab 中輸入 $(#boost) 表示要 compiler 在 compiling 階段也要到 boost 變數所指定的 base 目錄中搜尋

3. include :
    是指定 include 目錄所在的位置,但是 boost 1.51 以後的版本,目錄結構是 boost_1_51\boost ,且將 .hpp 檔皆放到這個目錄當中,再連結到相對應的目錄下的檔案,所以不需要設定 include 的目錄,空白即可。在 c++ source code 中 include <boost/timer.hpp> 就可以將 header include 進來。

4. lib :
   是指定 lib 目錄所在的位置,因為 boost lib 檔都是在 c:\library\boost_1_51\lib 中,所以在 linking tab 中指定 $(#boost.lib) 是表示在 c:\library\boost_1_51\lib 中找 .lib, or .a 的檔案來做 linking。

同樣地,如果有其他的 library 可以依照上面的設定方法來設定相關的 include, library 檔。最後,特別要說明的是:如果 lib 檔可以在 OS 的 path 中找的到,可以不用再 build option 的 linker setting tab 中來指定相對的 .lib, or .a 檔
-----------------------------------------------------------------------
[1] http://forums.codeblocks.org/index.php/topic,16783.0.html

留言

這個網誌中的熱門文章

CodeBlocks 多國語言的設定步驟

多年來一直都是使用 CodeBlocks 英文的介面,不曾想過要將 CodeBlocks 設定成多國語言的開發環境,對於不習慣於英文介面的國人,設定中文的使用介面是非常需要的環境,在 CodeBlocks 論壇有一篇文章提到 :Do you know http://wiki.codeblocks.org/index.php?title=Internationalization ?這個連結說明在 Windows 系統如何設定 CodeBlocks 成為 Internationalization 的環境,整個設定過程如下: 到 CodeBlocks 翻譯文件網站 下載 .mo 檔案:下載時需要 Ubuntu One 的帳號及密碼,登入後點選 .mo 檔案(不要下載 .po 檔是可編輯檔) 系統會傳送一封信件,點選信件的連結,將 .mo 檔案下載 將檔案複製到 C:\Codeblocks\share\CodeBlocks\locale\zh_TW 目錄(沒有這個目錄請自己建立) 開啟 CodeBlocks >> Setting >> Environment >> View >> Internationalization 選項打勾 >> 點選 Chinese 重新開啟 CodeBlocks 要加入其他語言的 .mo 檔案,則在 locale 目錄中新增其他語言的目錄名稱,例如: 德國 de_DE,這樣 CodeBlocks 就是多國語言的開發環境了。 當如果要恢復英文的介面,只要取消 Internationalization 的選項勾選,然後再次重新開啟 CodeBlocks 就回到英文的開發環境。 後記: CodeBlocks 翻譯文件網站 要下載 .mo or .po 檔案需要等待系統回復信件到 Email 信箱,無法及時處理,將這些檔案儲存在 Google Driver 的 src/CodeBlocks 目錄,以後可以從這裡直接取用。

輸入及轉換 Unicode 編碼

如何輸入羅馬數字?不管大寫的數字 ,或者小寫的數字,不知道 Unicode 編碼的人總是會以輸入英文字母 i or I 來替代,即輸入 i, ii, iii, or I, II, III,或許他們不會面臨要輸入 4 以上的羅馬數字,這樣的做法就可以在人類的視覺誤差中暫時瞞騙過關,然而,這樣的作法卻帶來資訊系統不可見的人為問題。這篇文章將描述如何輸入正確的羅馬數字?如何搜尋 Unicode 編碼?以及如何輸入 Unicode 編碼。關於 Unicode 編碼輸入與顯示是一個相當複雜的議題,這篇文章僅針對在 Windows 作業系統中的應用程式如何輸入與搜尋 Unicode 編碼?如何在 Unicode 編碼與對應字元之間做轉換?不會涉及其他的議題;若依照下面描述的輸入方式輸入 Unicode 編碼,不保證能完全符合你/妳所使用個人電腦系統的環境,請再參考相關的文章來解決輸入與顯示 Unicode 編碼的問題。 Unicode 編碼的輸入方式 在 Wiki 的文件 中說明如何在不同環境下輸入特殊字元的 Unicode 編碼,在 Windows 作業系統中輸入 Unicode 編碼的方式如下: Microsoft Word or Wordpad:先輸入 unicode 的編碼,再按下 Alt + x,例如,在 word 中輸入 1f370,然後按下 Alt+x,就會顯示 🍰( &#x1f370)的字元 其他 Microsoft 所有應用程式:應用程式包括 Microsoft PowerPoint, Excel, VS Code 等程式,且要支援 Unicode 編碼的版本,都可以使用注音輸入法來輸入 Unicode 編碼;首先切換到注音輸入法的中文輸入模式,然後按下~鍵(Esc 下方的鍵) + u + Unicode 編碼,特別要注意輸入的數字是鍵盤上方的數字鍵,不可以使用 Number Pad 的數字鍵。 查詢 Unicode 編碼 Unicode編碼的對應字元可以連結到 The Unicode Consortium 的 Code Charts 網站,在網站中輸入你/妳想要字元的 Unicode 編碼,如此就可以找到這個 Unicode 編碼的字元,問題是:我們通常是心中有字元的圖像,或者是要先看到字元的樣子,才知道我們要使用哪一個字

cmd 程式無法執行的解決步驟

因為要設定 cmd 的編碼方式為 Unicode 編碼( chcp 65001),可能不小心修改了編碼,而導致cmd 無法開啟,主要的原因是:「cmd 變成沒有編碼」,所以才造成 cmd 無法開啟。在 Windows 8 中要恢復 cmd 編碼的步驟如下: 1. 滑鼠移到左上角,會出現功能的選項,點選「搜尋」的圖示 2. 在輸入的格子中,輸入「cmd」但是不要按下 enter 3. 滑鼠移到「cmd 命令提示字元」,,按下「滑鼠右鍵」 4. 下面會出現一些選項,點選「開啟檔案位置」,如此可以找到 cmd 命令提示字元的位置 5. 在「 命令提示字元」檔案中按下滑鼠右鍵,並點選「內容」 6. 點選「選項」,把「950 - Big 5 繁體中文」的編碼加入