2017-04-12 100 views
7

我在我的MacOS上安裝了clang(位於/ usr/bin/clang),我認爲它默認安裝在Mac上,但是,當我嘗試在腳本中包含clang頭文件時,它說沒有找到它們如何安裝clang頭文件?

Example.cpp:1:10: fatal error: 'clang/Driver/Options.h' file not found 

問:是否有必要(和可能,如果是這樣,如何)安裝頭文件時鐺已經安裝並內置MacOS的系統(或者根本鐺本身需要在同一時間全部重新安裝所需的開發工具包和它們的頭文件被安裝)?

#include "clang/Driver/Options.h" 
#include "clang/AST/AST.h" 
#include "clang/AST/ASTContext.h" 
#include "clang/AST/ASTConsumer.h" 
#include "clang/AST/RecursiveASTVisitor.h" 
#include "clang/Frontend/ASTConsumers.h" 
#include "clang/Frontend/FrontendActions.h" 
#include "clang/Frontend/CompilerInstance.h" 
#include "clang/Tooling/CommonOptionsParser.h" 
#include "clang/Tooling/Tooling.h" 
#include "clang/Rewrite/Core/Rewriter.h" 
+0

您需要安裝clang開發包以獲取各種工具頭。 –

+0

特別是,通過自制軟件安裝llvm可能是必要的(無法確認) – jwimberley

+0

@ G.M。好的謝謝。是否可以安裝這些軟件包以配合Mac O.S.安裝的叮噹聲。系統(或者它們是否需要與clang同時安裝? – Leahcim

回答

1

問題問是否有必要和可能安裝頭文件已安裝叮噹的MacOS上。所需的頭文件未安裝,爲了安裝它們,可以克隆回購並構建llvm和clang(如llvm入門指南http://llvm.org/docs/GettingStarted.html中所述),以便在系統上安裝兩次。

+0

即使你獲得了頭文件,那些clang頭文件依賴於在默認安裝的macOS下找不到的靜態庫,所以,當你通過構建LLVM + clang源代碼樹來安裝兩次clang時(儘管我認爲二進制文件在新的/ usr/local/bin被覆蓋內置clang二進制文件),你也會得到一堆你需要的'.a'文件。 – rwols

3

當您使用雙引號爲包括庫它將搜索,你的C/CPP文件或應用程序駐留在當前目錄<>嘗試或與編譯 - 我選項