所以我正在学习llvm,并且我决定从我从LLVM site下载的tars构建3.8。LLVM3.8 Makefile.config,Makefile.common和Makefile.rule在构建文件夹中丢失
一切工作正常,我设法建立在一个单独的生成文件夹中的来源。
(After downloading all the sources)
$cd llvm3.8/build
$cmake -G "Unix Makefiles" ../llvm
$make -j 4
$make install
所以我的目录看起来有点像这样:
llvm3.8/
llvm3.8/build
llvm3.8/llvm
,同时学习如何编写一个LLVM通我注意到,我的生成文件夹丢失这些文件:
- Makefile文件。 config
- Makefile.common
- Makefile.rule
我在Makefile中使用了我为我实现的pass所写的内容。
我所知道的是,源代码中有这些文件:
$cd llvm3.8/llvm
$ls:
CMakeLists.txt README.txt llvm.spec.in
CODE_OWNERS.TXT autoconf projects
CREDITS.TXT bindings resources
LICENSE.TXT cmake test
LLVMBuild.txt configure tools
Makefile docs unittests
Makefile.common examples utils
Makefile.config.in include
Makefile.rules lib
,而我的build文件夹没有。
$ cd llvm3.8/build
$ ls
CMakeCache.txt cmake libexec
CMakeFiles cmake_install.cmake projects
CPackConfig.cmake compile_commands.json share
CPackSourceConfig.cmake docs test
DummyConfigureOutput examples tools
LLVMBuild.cmake include unittests
Makefile install_manifest.txt utils
bin lib
我的生成文件夹是否包含它应该包含的内容? 也许通过必须写在源llvm3.8/llvm
?
感谢您的帮助。
我的答案是否解决了这个问题? – khrm
可能您使用的过时教程仍然使用Makefiles,而它们最近都被丢弃了。 我可以推荐你看看这个演示文稿:[构建,测试和调试一个简单的out-of-tree LLVM密码](http:// llvm。org/devmtg/2016-03 /#tuto3) – AlexDenisov