pub struct Clang {
pub path: PathBuf,
pub version: Option<CXVersion>,
pub c_search_paths: Option<Vec<PathBuf>>,
pub cpp_search_paths: Option<Vec<PathBuf>>,
}
Expand description
A clang
executable.
Fields§
§path: PathBuf
The path to this clang
executable.
version: Option<CXVersion>
The version of this clang
executable if it could be parsed.
c_search_paths: Option<Vec<PathBuf>>
The directories searched by this clang
executable for C headers if
they could be parsed.
cpp_search_paths: Option<Vec<PathBuf>>
The directories searched by this clang
executable for C++ headers if
they could be parsed.
Implementations§
source§impl Clang
impl Clang
sourcepub fn find(path: Option<&Path>, args: &[String]) -> Option<Clang>
pub fn find(path: Option<&Path>, args: &[String]) -> Option<Clang>
Returns a clang
executable if one can be found.
If the CLANG_PATH
environment variable is set, that is the instance of
clang
used. Otherwise, a series of directories are searched. First, if
a path is supplied, that is the first directory searched. Then, the
directory returned by llvm-config --bindir
is searched. On macOS
systems, xcodebuild -find clang
will next be queried. Last, the
directories in the system’s PATH
are searched.
§Cross-compilation
If target arguments are provided (e.g., --target
followed by a target
like x86_64-unknown-linux-gnu
) then this method will prefer a
target-prefixed instance of clang
(e.g.,
x86_64-unknown-linux-gnu-clang
for the above example).