问题标签 [llvm-config]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1625 浏览

llvm - 调用 llvm-config --prefix 并在 BUILD 规则中使用它

我在WORKSPACE中有以下规则:

我现在想为 llvm 使用硬编码路径。llvm-config --prefix可以给我llvm的目录。得到这个的正确方法是什么?我可以只使用标准的python命令(例如subprocess包)吗?

0 投票
0 回答
346 浏览

llvm - 如何有效地使用 llvm-config 提供的 CXX 标志?

我有一个建立在 LLVM 之上的项目。现在我正在尝试提出一个至少可以在 Mac OS、Ubuntu 和 CentOS 平台上运行的 CMakeLists 文件。为此,我/opt/llvm-3.9/bin/llvm-config --libnames x86 ...将我的项目与它需要的库链接起来,并且我正在考虑使用llvm-config --cxxflags

--cxxflags 包含 LLVM 头文件的 C++ 编译器标志。

然而,问题是它llvm-config --cxxflags提供了我的库需要的更多标志,特别是它添加了-O3我绝对不希望在我的项目的调试版本中出现的标志:

/opt/llvm-3.9/bin/llvm-config --cxxflags

-I/opt/llvm-3.9/include -fPIC -fvisibility-inlines-hidden -Wall -W -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wcovered-switch-default -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Werror=date-time -std=c++11 -O3 -DNDEBUG -fno-exceptions -fno-rtti -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS - D__STDC_LIMIT_MACROS

看起来它--cxxflags给出了构建 LLVM 本身的标志,而不是它建议我用于我的 .cpp 文件的标志。

这个线程[LLVMdev] Ideas for making llvm-config --cxxflags 更有用在它的开头有我的问题,但最终无处可去。

获取我的项目可能需要的与 LLVM 链接的文件的 LLVM 标志的正确方法是什么?

0 投票
1 回答
773 浏览

docker - /usr/lib/x86_64-linux-gnu/libLLVM-4.0.so.1:找不到版本“LLVM_4.0”

我正在尝试运行一个使用 Clang 和 LLVM 的工具。工具名称是 docker 提供的 cppgrep。请从 github 存储库中找到它 - https://github.com/peter-can-talk/cppnow-2017。我曾尝试使用 Ubuntu 16.04 和 17.10,我得到了与以下相同的错误:

经过网上搜索,我发现我必须设置环境变量 LD_LIBRARY_PATH。因此,作为第一步,我在 docker 中找到了库文件的位置,请在下面找到输出:

在这一步之后,我设置 LD_LIBRARY_PATH 如下:

最后,我使用命令导出了它export LD_LIBRARY_PATH。现在,如果我尝试运行 cppgrep 工具,我仍然会遇到同样的错误。构建docker后测试工具的命令如下:(1)cd进入cppgrep目录,如code/cppgrep,(2)进入docker容器并挂载文件夹/home: (3)使用命令$ docker run -it -v $PWD:/home clang 运行cppgrep 。./cppgrep 'x' test.cpp它应该返回名称为 x 的函数和变量。

要复制错误,请在从 github 存储库下载并解压缩文件后,使用$ docker build -t clang .命令构建 docker 容器。然后按照上一段中的 1,2,3 步骤进行操作。

0 投票
1 回答
48 浏览

llvm - macos10.14上如何搭建LLVM Dragonegg?

看了《LLVM Core Libraries入门》这本书,跟着书走,我想在我的mac上搭建一个dragonegg-3.3,所以我下载dragonegg-3.3源代码表格' http://llvm.org/releases/ 3.3/dragonegg-3.3.src.tar.gz ',然后我在书中构建dragonegg-3.3使用命令

但是我的mac没有gcc-4.6,现在macos10.14上也安装不了gcc-4.6!,看来gcc-4.6是老版本的gcc,不适合现在的macos10.14。

在macos10.14上构建或安装dragonegg应该怎么做,非常感谢!

0 投票
0 回答
23 浏览

llvm - 为什么 llvm-config 为我禁用异常?

我正在使用 LLVM 编译代码,但编译失败:

我意识到我llvm-config正在为我禁用例外。

退货

过去,我根本没有观察-fno-exceptions。一个典型的例子应该是这样的。

这种异常预防从何而来?