cmake -G Ninja /home/user/Desktop/llvm/llvm -DCMAKE_CROSSCOMPILING=True -DCMAKE_INSTALL_PREFIX=/home/user/Desktop/llvm/llvm/new_build -DLLVM_TABLEGEN=/usr/bin/host/llvm-tblgen -DCLANG_TABLEGEN=/usr/bin/host/clang-tblgen -DLLVM_DEFAULT_TARGET_TRIPLE=arm-linux-gnueabihf -DLLVM_TARGET_ARCH=ARM -DLLVM_TARGETS_TO_BUILD=ARM -DCMAKE_CXX_FLAGS='-target armv7a-linux-gnueabihf -mcpu=cortex-a9 -I/usr/arm-linux-gnueabihf/include/c++/4.7.2/arm-linux-gnueabihf/ -I/usr/arm-linux-gnueabihf/include/ -mfloat-abi=hard -ccc-gcc-name arm-linux-gnueabihf-gcc'
错误信息:
-- CXX编译器的标识是Clang 3.5.0 -- 使用Ninja检查工作的CXX编译器 -- 使用Ninja检查工作的CXX编译器 - 失败 CMakeTestCXXCompiler.cmake模块在第54行报错,提示C++编译器"/usr/bin/clang++"无法编译一个简单的测试程序。
以下是它的输出:
更改目录:/home/user/Desktop/llvm/llvm/new_build/CMakeFiles/CMakeTmp
运行构建命令:/usr/bin/ninja cmTryCompileExec1541562247
[1/2]构建CXX对象
CMakeFiles/cmTryCompileExec1541562247.dir/testCXXCompiler.cxx.o
[2/2] 链接 CXX 可执行文件 cmTryCompileExec1541562247
失败: : && /usr/bin/clang++ -target armv7a-linux-gnueabihf
-mcpu=cortex-a9
-I/usr/arm-linux-gnueabihf/include/c++/4.7.2/arm-linux-gnueabihf/
-I/usr/arm-linux-gnueabihf/include/ -mfloat-abi=hard -ccc-gcc-name
arm-linux-gnueabihf-gcc
CMakeFiles/cmTryCompileExec1541562247.dir/testCXXCompiler.cxx.o -o
cmTryCompileExec1541562247 -rdynamic && :
/usr/bin/ld: unrecognised emulation mode: armelf_linux_eabi
Supported emulations: elf_x86_64 elf32_x86_64 elf_i386 i386linux elf_l1om
elf_k1om i386pep i386pe
clang: error: linker command failed with exit code 1 (use -v to see
invocation)
ninja: build stopped: subcommand failed.
CMake将无法正确生成此项目。
调用堆栈(最近的调用在最上面):
CMakeLists.txt:19(project)
-- 配置不完整,出现错误!
------------------------------END-------------------------------------------------