[英]How do you properly include Boost files (C++ third party library) in XCode?
我正在運行Mac OSX 10.9.2(Mavericks),並且使用Xcode 5.1。
我一直在研究如何在程序中正確包含Boost文件,但是我做不到。 我目前將boost保存在/ usr / local / include / boost /中。 每當我嘗試包含boost文件時,它要么無法編譯,要么無法找到文件,或者如果確實找到了文件,它就會與已經存在的其他文件發生沖突(這對我來說就是這樣) 。 有人可以提供有關如何正確執行此操作的詳細說明,並且最好提供某種代碼段嗎? 請包括幾個不同的boost文件(即存在於boost目錄頂層的文件,也包括存在於子目錄中的文件,例如算法文件)。
使用boost庫時,本質上包含兩種類型的包含:
例如,array是僅包含的模板,因此在編譯時,需要將此標志發送給您的clang:-I / usr / local / include /
這樣,當包含數組時,您將像這樣:
#include "boost/array.hpp"
包含庫時,必須使用b2批處理文件在系統上構建boost。 然后,使用bjam系統進行構建。
構建庫時,必須將它們鏈接到您的clang,標志與僅包含文件有點不同,例如,假設您要包含boost regex庫,該庫在您的系統上將命名為libboost_regex.so,因此您需要告訴您的編譯器以下兩個標志:
-L/usr/local/{boost_build_place}/lib -lboost_regex
如您所見, -L
告訴編譯器您要包含到項目中的庫的文件夾, -l
標志告訴您要使用的特定庫,如所見,使用-l
標志時,必須刪除lib
前言和.so
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.