我想交叉编译clang以用作avr的编译器(arduino更详细)。我觉得我应该像下一个那样做:
其他?它是否支持--target = avr或我如何编译?是否有意义,因为它将像IDE自动完成工具一样用于使用clang-c API解析源代码?
更新:配置--host和--target参数:
export CROSS_COMPILE=arm-linux-androideabi
export CC=${CROSS_COMPILE}-gcc
export CXX=${CROSS_COMPILE}-g++
export NDK=/softdev/android-ndk-r8e
export ANDROID_NDK_ROOT=/softdev/android-ndk-r8e
export SYSROOT=$NDK/platforms/android-8/arch-arm
export PATH=/softdev/arm-toolchain/bin:$PATH:/softdev/android-ndk-r8e/platforms/android-8/arch-arm
./configure --host=arm-linux-androideabi --target=arm-linux-androideabi --prefix=/softdev/arduinodroid_clang/arm
make
...导致make错误(Makefile存在):
llvm asmirnov$ sudo make
llvm[0]: Constructing LLVMBuild project information.
configure: error: Already configured in /Users/asmirnov/Documents/dev/src/llvm
make[1]: *** No targets specified and no makefile found. Stop.
make: *** [cross-compile-build-tools] Error 1
答案 0 :(得分:3)
LLVM包含AVR目标一段时间以来(参见http://llvm.org/svn/llvm-project/llvm/trunk/lib/Target/AVR/)。 骨架是在2015年底添加的,大部分后端实施都是在2016年5月完成的。
截至目前(2017-09-05),README.md文件表明该目标仍然是试验性的,并且是针对8位Atmel AVR微控制器完成的。
答案 1 :(得分:2)