【问题标题】:-bash: opt: command not found in MAC OS X Yosemite-bash: opt: 在 MAC OS X Yosemite 中找不到命令
【发布时间】:2015-09-07 20:44:37
【问题描述】:

我正在尝试运行 LLVM 通行证并拥有以下版本的 gcc:

配置:

-- prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 6.1.0 (clang-602.0.53) (based on LLVM 3.6.0svn)
Target: x86_64-apple-darwin14.5.0
Thread model: posix

我从官方网站下载了 LLVM 3.2 源并将其解压缩到我的项目文件夹中。

我正在尝试从项目文件夹中运行以下命令:

opt -load /Users/jigs/Downloads/CS_298/llvm-3.1.src/lib/Transforms/LLVMHello.dylib -hello -S morph_1.s mul -o=morph_output.s

我收到一条错误消息,提示 opt 不存在。我很确定 opt 是 LLVM 源的一部分,但它不起作用。

【问题讨论】:

  • 也许可以试试./opt -load ...
  • 嗨,仍然给出同样的错误:-bash: ./opt: No such file or directory
  • 项目目录下有opt命令吗?您需要从它所在的任何地方调用它。尝试使用ls | grep opt 来检查它是否存在。
  • 您好,opt 命令在 llvm-3.1.src/tools 文件夹中。仍然无法运行它。
  • 你说的“官方网站”是什么意思?安装 Apple 编译器和开发套件 AFAIK 的最佳、当前和唯一方法是转到 App Store 并下载 Xcode,然后执行 xcode-select --install

标签: macos bash llvm llvm-clang llvm-gcc


【解决方案1】:

opt 工具在构建后应该出现在bin 目录中(您的版本将是 3.x.x),所以我相信您完全找错了地方。工具中的opt 是一个目录,所以这对你肯定没有多大用处。

/llvm-3.7.0.src/build/bin

$ ./opt -version

LLVM (http://llvm.org/):
  LLVM version 3.7.0
  DEBUG build with assertions.
  Built Sep  8 2015 (17:54:06).
  Default target: x86_64-apple-darwin14.5.0
  Host CPU: ivybridge

如果您在从源代码编译/构建后没有出现bin 目录,那么您的makefile 中的某些内容可能不正确。

提示:您通常可以通过查看源代码树中最近修改的目录来判断可执行文件的构建位置。另外,我认为从源代码构建LLVM 最简单、最省心的方法是使用CMake——它方便地包含CMakeLists.txt 配置。

【讨论】:

  • 嗨,I'L'I,它对我有用,我检查了 Debug+Asserts/bin/opt 路径,并且 opt version 命令从那里工作。但不知何故,当我运行以下命令时: ./opt -load /Users/jigs/Downloads/CS_298/llvm/Debug+Asserts/lib/LLVMHello.dylib -hello -S morph_1.s mul -o=morph_output.s 我得到了错误为:opt:指定的位置参数太多!最多可以指定 1 个位置参数:参见:./opt -help
  • @Austin:很高兴你终于找到了命令。该错误与此问题无关,因此请发布另一个有关该问题的问题。如果对您有帮助,请将此答案标记为正确,干杯!
猜你喜欢
  • 2015-09-09
  • 2016-02-20
  • 2014-10-10
  • 2016-03-31
  • 2014-12-29
  • 2016-04-06
  • 1970-01-01
  • 2014-06-30
  • 1970-01-01
相关资源
最近更新 更多