在 OS X 上为 LLVM 设置环境变量

setting environment variables for LLVM on OS X

我正在学习使用 LLVM 作为后端构建编译器。

我按照 getting started with the LLVM system until setting up your environment

上的步骤操作

[/path/to/your/bitcode/libs]的具体位置是什么?

当我在终端中输入 lli 时,这个错误是否导致了 command not found

//我正在尝试构建一个hello world来查看整个编译过程

你可以把LLVM_LIB_SEARCH_PATH放在任何你想放的地方。现在,您可能根本不需要担心它;正如文档所说,它是可选的。稍后,您可以创建位码(即编译的 VM 代码)函数,您希望将其 link 放入编译器生成的位码中。例如,您可能需要为可执行文件创建某种标准库和 运行时间环境。

这与 lli 未找到错误无关,后者是未安装 LLVM 二进制文件或已安装到不在 $PATH 中的某个位置的结果。

默认情况下,llvm 包将自行配置为安装在前缀 /usr/local 下,这意味着在您 gmake install 之后,您应该在 lli 等地方找到 lli 和朋友17=]。这可能在你的 $PATH 中,也可能不在;要找出答案,请输入

echo "$PATH"

看看里面有没有:/usr/local/bin:。如果没有,那么你可以改变你的路径:

export PATH="/usr/local/bin:$PATH"

要使其永久化,您必须将其添加到 bash 启动文件中。

但您可能不希望它安装在那里。我通常会在我的本地目录树中安装我正在玩的软件,这样我就不必一直 sudo。您可以将带有 --prefix 参数的安装目录树的根更改为 ./configure。 (你必须在之前构建LLVM。)./configure --help将提供更多关于配置选项的信息,但--prefix肯定是最重要的。

无论做什么,都不要盲目去做。确保在执行之前了解这一切的含义。如果您打算制作编译器,则需要了解典型构建和 运行time 环境的一些细节;不幸的是,PATH 和配置脚本在你至少应该熟悉的一长串东西中。

据我了解,某些版本的 LLVM 已经安装在 Mac OS X 上,因此您需要注意不要干扰您的安装。 bash 是报告找不到 lli 的事实可能表明没有安装所有工具,这将使事情变得不那么复杂。

恐怕我真的没有任何在 Mac 上安装 LLVM 的经验,但是如果你 运行 遇到特定的问题(比如 "my compiler doesn't work after I install LLVM")那么你可以使用适当的标签提出具体问题。