cmake - 使用 cmake 编译 cppfile 时如何获取位码?
问题描述
我已经搜索了可以使用命令行尝试的教程:clang -emit-llvm -o file.bc
但是如何在cmakelists中编写它。我必须从源代码文件中获取所有位码文件。
解决方案
几种可能的选择:
- 您可以将特定标志添加到所有来源:
set ( CMAKE_C_FLAGS "-emit-llvm")
- 或者如果你仍然想同时拥有 .bc 文件和 .o 文件,你也许应该引入自定义编译命令,这实际上是两个命令:第一个编译 .bc 文件,第二个要么编译 .o 文件,要么转换 .o 文件。 bc 文件通过 .o 文件转换为 .o 文件
llc
。 - 如果您使用 -flto 标志进行编译,那么所有 .o 文件实际上都是 .bc 文件(例如,您可以使用 llvm-bcanalyzer 检查它)。但在这种情况下,您必须将其与
ld.lld
推荐阅读
- gnuradio - 是否可以配置 gr-ieee-80211 wifi_rx 文件以接收更高级别的层?
- python - 使用 URL 将模型设置为 true 或 false
- dtrace - 为什么 arg0 可以在什么时候表明它是一个内核堆栈?
- r - 闪亮的应用程序数据范围规则是否适用于 ShinyProxy?
- flutter - 在 Flutter 中编码时如何在 Google Playstore 上查看我的应用程序的版本号?
- php - 如何拆分 wordpress the_content() ;分成几个部分
- javascript - 我们有 2 条线路。我们如何才能得到 2 行与 JavaScript 相交的点?
- mongodb - Go + MongoDB:多态查询
- php - PHP 使用 Intelephense 调用 mysqli 的正确方法
- javascript - 浏览器中的 OpenSSL - 需要从 .pem 获取私钥然后签名